跳到主要内容
研究论文

统一形式语言:偏微分方程弱公式的领域专用语言

出版:2014年3月5日出版历史
跳过抽象节

摘要

我们提出了统一形式语言(UFL),这是一种特定于域的语言,用于表示偏微分方程的弱形式,以实现数值逼近。UFL的特点包括支持变分形式和泛函、形式和表达式的自动微分、多域问题的任意函数空间层次、广义微分算子和柔性张量代数。凭借这些特性,UFL被用于以近数学符号轻松地表示复杂偏微分方程组的有限元方法,从而生成紧凑、直观和可读的程序。我们在这部作品中展示了语言及其结构。UFL的实现可以作为开源软件库免费获得。该库生成变分问题的抽象语法树表示,其他软件库使用这些表示生成具体的低级实现。本文给出了一些应用示例,并重点介绍了支持UFL的库。

工具书类

  1. C.Abert、L.Exl、G.Selke、A.Drews和T.Schrefl。2012.流线场计算的数值方法:最近开发的算法的比较。J.马格纳。Magn.公司。马特。谷歌学者谷歌学者
  2. M.S.AlnS先生。2009.非线性偏微分方程自动线性化和有效离散化的编译器框架。奥斯陆大学博士论文。谷歌学者谷歌学者
  3. M.S.AlnS和K.-A.Mardal。2010年。关于符号计算与有限元方法代码生成相结合的效率。ACM事务处理。数学。柔和。37, 1.谷歌学者谷歌学者数字图书馆数字图书馆
  4. M.S.AlnS和K.-A.Mardal。2012.SyFi和SFC:符号有限元和表单编译。《用有限元方法自动求解微分方程》,A.Logg、K.-A.Mardal和G.N.Wells编辑,《计算科学与工程讲义》,第84卷,第15章,Springer。谷歌学者谷歌学者
  5. M.S.AlnS、A.Logg、K.-A.Mardal、O.Skavhaug和H.P.Langtangen。2009.有限元装配的统一框架。国际期刊计算。科学。工程4、4、231--244。http://dx.doi.org/10.1504/IJCSE.2009.029160。谷歌学者谷歌学者数字图书馆数字图书馆
  6. M.S.AlnS、A.Logg和K.-A.Mardal。2012.UFC:有限元代码生成界面。《用有限元方法自动求解微分方程》,A.Logg、K.-A.Mardal和G.N.Wells编辑,《计算科学与工程讲义》,第84卷,第16章,Springer。谷歌学者谷歌学者
  7. D.N.阿诺德。1982年。具有间断元素的内部惩罚有限元方法。SIAM J.数字。分析。第19页,第4页,第742页至第760页。谷歌学者谷歌学者数字图书馆数字图书馆
  8. D.N.Arnold、F.Brezzi和M.Fortin。Stokes方程的稳定有限元。卡尔科洛21、4、337--344。http://dx.doi.org/10.1007/BF02576171。谷歌学者谷歌学者
  9. D.N.Arnold、R.S.Falk和R.Winther。2006.有限元外部微积分、同调技术和应用。Acta Numer公司。15, 1--155.谷歌学者谷歌学者交叉引用交叉引用
  10. D.N.Arnold、R.S.Falk、J.GuzmáN和G.Tsogtgerel。2012.关于组合余微分的一致性。arXiv预打印arXiv:1212.4472。谷歌学者谷歌学者
  11. B.Bagheri和L.R.Scott。关于Analysa。2004年,芝加哥大学计算机科学系技术代表TR-2004-09。http://www.cs.uchicago.edu/research/publications/techreports/TR-2004-09。谷歌学者谷歌学者
  12. G.Baumgartner、A.Auer等人,2005年。一类从头算量子化学模型的高性能并行程序的合成。程序。IEEE 93、2、276--292。http://dx.doi.org/10.109/JPROC.2004.840311。谷歌学者谷歌学者交叉引用交叉引用
  13. 促进。2012年提升C&plus&加号;库,http://www.boost.org/。谷歌学者谷歌学者
  14. C.Brandenburg、F.Lindemann、M.Ulbrich和S.Ulbich。2012.pde约束优化的高级数值方法及其在Navier-Stokes流优化设计中的应用。在偏微分方程的约束优化和最优控制中,Springer,257--275。谷歌学者谷歌学者
  15. F.Brezzi、J.Douglas和L.D.Marini。二阶椭圆问题的两类混合元。数字。数学。47, 217--235.谷歌学者谷歌学者数字图书馆数字图书馆
  16. P.Brunner、C.Clason、M.Freiberger和H.Scharfetter。2012.一种确定性方法,用于高散射组织照明的自适应光电二极管放置。生物识别。光学快车3、7、1732。谷歌学者谷歌学者交叉引用交叉引用
  17. 道芬。2012.DOLFIN库。http://launchpad.net/dolfin。谷歌学者谷歌学者
  18. P.E.Farrell、D.A.Ham、S.W.Funke和M.E.Rognes。2012.高级瞬态有限元程序伴随的自动推导。http://arxiv.org/abs/11204.5577。谷歌学者谷歌学者
  19. S.W.Funke和P.E.Farrell。2013年,自动化pde-constrained优化框架。CoRR,abs/1302.3894。谷歌学者谷歌学者
  20. E.Gamma、R.Helm、R.Johnson和J.Vlisseds。设计模式:面向对象设计的抽象和重用。《面向对象编程欧洲会议论文集》。406--431.谷歌学者谷歌学者数字图书馆数字图书馆
  21. A.灰谷。1989.关于自动微分。《数学程序设计:最新发展与应用》,M.Iri和K.Tanabe,编辑,Kluwer,83-108。谷歌学者谷歌学者
  22. J.Hake、A.G.Edwards、Z.Yu、P.M.Kekenes-Huskey、A.P.Michailova、J.A.McCammon、M.J.Holst、M.Hoshijima和A.D.McCulloch。2012.在钙释放单元的三维重建中对心脏钙火花进行建模。《生理学杂志》。590, 18, 4403--4422.谷歌学者谷歌学者交叉引用交叉引用
  23. P.哈达克。1996.构建特定于域的嵌入式语言。ACM计算。Surv公司。28, 196.谷歌学者谷歌学者数字图书馆数字图书馆
  24. J.Karczmarczuk。2001.计算机程序的功能区分。高阶和符号计算,14,1,35-57。http://dx.doi.org/10.1023/A:1011501232197。谷歌学者谷歌学者数字图书馆数字图书馆
  25. R.C.Kirby和A.Logg。2006.变分形式编译器。ACM事务处理。数学。柔和。32, 3. http://dx.doi.org/10.1145/1163641.1163644。谷歌学者谷歌学者数字图书馆数字图书馆
  26. R.C.Kirby和A.Logg。2012.有限元变分形式。《用有限元方法自动求解微分方程》,A.Logg、K.-A.Mardal和G.N.Wells编辑,《计算科学与工程讲义》,第84卷,第5章,Springer。谷歌学者谷歌学者
  27. J.科尔克。1997年。通过同时优化表达式自动生成有限元代码。西奥。计算。科学。187, 1--2, 231--248. http://dx.doi.org/10.1016/S0304-3975(97)00067-4.谷歌学者谷歌学者数字图书馆数字图书馆
  28. R.J.Labeur和G.N.Wells。2012.不可压缩Navier--Stokes方程的能量稳定和动量守恒混合有限元方法。SIAM J.科学。计算。34、2、A889--A913。http://dx.doi.org/10.1137/100818583。谷歌学者谷歌学者数字图书馆数字图书馆
  29. A.Logg和G.N.Wells。2010.DOLFIN:自动有限元计算。ACM事务处理。数学。柔和。37, 2, 20:1--20:28. http://dx.doi.org/10.1145/1731022.1731030。谷歌学者谷歌学者数字图书馆数字图书馆
  30. A.Logg、K.-A.Mardal和G.N.Wells,编辑2012a。用有限元法自动求解微分方程。《计算科学与工程讲义》,第84卷,施普林格出版社。谷歌学者谷歌学者数字图书馆数字图书馆
  31. A.Logg、K.B.Ølgaard、M.E.Rognes和G.N.Wells。2012年b。FFC:FEniCS表单编译器。《用有限元方法自动求解微分方程》,A.Logg、K.-A.Mardal和G.N.Wells编辑,《计算科学与工程讲义》,第84卷,第11章,Springer。谷歌学者谷歌学者交叉引用交叉引用
  32. A.Logg、G.N.Wells和J.Hake。2012年C/DOLFIN:A C&plus&加号/Python有限元库。《用有限元方法自动求解微分方程》,A.Logg、K.-A.Mardal和G.N.Wells编辑,《计算科学与工程讲义》,第84卷,第10章,Springer。谷歌学者谷歌学者
  33. K.Long、R.Kirby和B.Van Bloemen Waanders。2010年,通过基于软件的Fréchet微分进行统一嵌入式并行有限元计算。SIAM J.科学。计算。32, 3323--3351.谷歌学者谷歌学者数字图书馆数字图书馆
  34. M.Maraldi、G.N.Wells和L.Molari,2011年。热载荷下耦合位移和扩散微结构过程的相场模型。J.机械。物理。固体59、8、1596——1612。http://dx.doi.org/10.1016/j.jmps.2011.04.017。谷歌学者谷歌学者交叉引用交叉引用
  35. G.Markall、A.Slemmer、D.Ham、P.Kelly、C.Cantwell和S.Sherwin。2012.多核和多核架构的有限元组装策略。国际期刊数字。方法液体。http://dx.doi.org/10.1002/fld.3648。谷歌学者谷歌学者
  36. G.R.Markall、D.A.Ham和P.H.J.Kelly。2010年。致力于从高级规范中为GPU生成优化的有限元解算器。程序。公司。科学。1, 1, 1815--1823.谷歌学者谷歌学者交叉引用交叉引用
  37. A.Massing、M.G.Larson、A.Logg和M.E.Rognes。2012.斯托克斯问题的稳定Nitsche虚拟域方法。http://arxiv.org/abs/1206。1933谷歌学者谷歌学者
  38. M.Mortensen、H.P.Langtangen和G.N.Wells。2011年。基于FEniCS的编程框架,用于通过雷诺平均Navier-Stokes方程对湍流进行建模。高级水资源研究34,9,1082--11012011。http://dx.doi.org/j.advwatres.2011.02.013。谷歌学者谷歌学者交叉引用交叉引用
  39. J.C.Nédélec。R3中的一个新的混合有限元族。数字。数学。50, 1, 57--81.谷歌学者谷歌学者数字图书馆数字图书馆
  40. M.Nikbakht和G.N.Wells。2009.不断演变的不连续性的自动建模。2, 3, 1008--1030. http://dx.doi.org/10.3390/a2031008。谷歌学者谷歌学者
  41. K.B.Ølgard和G.N.Wells。2010年。通过自动代码生成优化有限元张量的正交表示。ACM事务处理。数学。柔和。37, 1, 8:1--8:23.谷歌学者谷歌学者数字图书馆数字图书馆
  42. K.B.Ølgaard、A.Logg和G.N.Wells。2008.不连续Galerkin方法的自动代码生成。SIAM J.科学。计算。31, 2, 849--864. http://dx.doi.org/10.1137/070710032。谷歌学者谷歌学者数字图书馆数字图书馆
  43. B.A.Pearlmutter和J.M.Siskind。2007年,懒惰的多变量高阶前向模式助理。第34届ACM SIGPLAN-SIGCT编程语言原理年度研讨会论文集。155--160. http://dx.doi.org/10.1145/1190216.1190242。谷歌学者谷歌学者数字图书馆数字图书馆
  44. C.普鲁德霍姆。2006.C&plus中的特定领域嵌入式语言&加号;用于自动微分、投影、积分和变分公式。科学规划14,81-110。谷歌学者谷歌学者数字图书馆数字图书馆
  45. C.普鲁德霍姆。2011.感觉&plus&加;。https://forge.imag.fr/projects/life/。谷歌学者谷歌学者
  46. PyChecker。2011.PyChecker:一个Python源代码检查工具。http://pychecker.sourceforge.net。谷歌学者谷歌学者
  47. M.E.Rognes和A.Logg。2012.面向目标的自动化误差控制I:平稳变分问题。http://arxiv.org/abs/1204.6643。谷歌学者谷歌学者
  48. M.E.Rognes、R.C.Kirby和A.Logg。2009.高效组装H(div)和H(curl)一致有限元。SIAM J.科学。计算。31, 6, 4130--4151. http://dx.doi.org/10.1137/08073901X。谷歌学者谷歌学者数字图书馆数字图书馆
  49. E.Rosseel和G.N.Wells。2012.具有随机PDE约束和不确定控制的最优控制。计算。方法。申请。机械。工程师213-216152-167。http://dx.doi.org/10.1016/j.cma.2011.11.026。谷歌学者谷歌学者
  50. J.R.Shewchuk和O.Ghattas。1993年。使用域分解非结构化网格的并行有限元方法编译器。《第七届科学与工程计算领域分解方法国际会议论文集》,D.E.Keyes和J.Xu主编,《当代数学》,第180卷,美国数学学会,445-450。谷歌学者谷歌学者
  51. J.M.Siskind和B.A.Pearlmutter。2008.在功能框架中嵌套转发模式AD。高阶符号。计算。21, 4, 361--376. http://dx.doi.org/10.1007/s10990-08-9037-1。谷歌学者谷歌学者数字图书馆数字图书馆
  52. C.Taylor和P.Hood。1973.使用有限元技术对Navier-Stokes方程进行数值求解。计算。流体。1, 1, 73--100.谷歌学者谷歌学者交叉引用交叉引用
  53. UFL公司。统一形式语言,2012年。http://launchpad.net/ufl。谷歌学者谷歌学者
  54. P.Wang。1986年。手指:有限元分析中用于自动生成数值程序的符号系统。J.符号计算。2, 3, 305--316. http://dx.doi.org/10.1016/S0747-7171(86)80029-3.谷歌学者谷歌学者数字图书馆数字图书馆
  55. G.N.威尔斯。2011.界面稳定有限元法分析:对流-扩散-反应方程。SIAM J.数字。分析。49, 1, 87--109. http://dx.doi.org/10.1137/090775464。谷歌学者谷歌学者数字图书馆数字图书馆
  56. J.Xiong、J.Johnson、R.Johnson和D.Padua。2001.SPL:DSP算法的语言和编译器。SIGPLAN不是。36, 298--308. http://dx.doi.org/10.1145/381694.378860。谷歌学者谷歌学者数字图书馆数字图书馆

索引术语

  1. 统一形式语言:偏微分方程弱公式的领域专用语言

              建议

              评论

              登录选项

              请检查您是否可以通过登录凭据或您的机构访问此文章以获得完全访问权限。

              登录

              完全访问权限

              PDF格式

              以PDF文件查看或下载。

              PDF格式

              电子阅读器

              使用eReader联机查看。

              电子阅读器