OpenFOAM

✍ dations ◷ 2024-09-20 06:23:20 #自由软件,计算流体力学



OpenFOAM(英文 Open Source Field Operation and Manipulation 的缩写,意为开源的场运算和处理软件)是对连续介质力学问题进行数值计算的C++自由软件工具包,其代码遵守GNU通用公共许可证。它可进行数据预处理、后处理和自定义求解器,常用于计算流体力学(CFD)领域。该软件由OpenFOAM基金会维护(商标OpenFOAM的拥有者硅谷图形公司(SGI)赞助)。

OpenFOAM的早期开发始于1980年代末期的伦敦帝国学院,其目标是为了编写一个相对于当时事实上的标准,FORTRAN,更为强大和灵活的通用模拟计算平台。并且因此选择了拥有高度模块化和面向对象特性的C++作为其编程语言。在2004年OpenFOAM以开源方式发布之前,英国Nabla有限公司曾销售过FOAM,OpenFOAM的前身。2011年8月15日,OpenCFD宣布它被硅谷图形公司(SGI)收购。

OpenFOAM是最早的用C++写成的重要科学计算软件包之一。现已成为使用多面体网格的最主要的通用计算流体力学(CFD)软件.

OpenFOAM一个非常有特色的地方是它描述张量和偏微分方程的语法与被求解的方程本身非常相似,事实上便捷地在程序中表达传统的数学记号正是其语法设计的目标。例如方程

对应的OpenFOAM代码是

solve(     fvm::ddt(rho,U)   + fvm::div(phi,U)   - fvm::laplacian(mu,U)     ==   - fvc::grad(p));

得益于面向对象的程序设计和运算符重载,用户可以相对容易地创建自己的求解器。然而,大量模板元编程的运用以及相应开发文档的缺乏,使得越是深入库底层的定制化越是困难和充满挑战。

由于使用了工厂方法和基类作为接口,OpenFOAM具有很好的可扩展性。用户在创建定制化的物体或对象(例如边界条件或湍流模型)时,无需修改或是重新编译OpenFOAM软件包,便可在已有的求解器上工作。OpenFOAM称之为

OpenFOAM核心功能的实现是由大量的基础库完成的,其中包括:

利用便捷直观的高级语法和基础库提供的功能完成开发。通常应用可以归为两类:

每个应用有其专注的功能:如应用用于从用户提供的输入文件生成网格,而另一个应用,则用来求解不可压层流的Navier-Stokes方程。

最后,一些第三方软件包被用来提供并行化能力(即OpenMPI)和进行图像后处理(ParaView)。

OpenFOAM的功能含有:

除以上列举的标准求解器之外,由于OpenFOAM的语法,创建自定义的求解器也是容易的。

OpenFOAM实用程序被细分为:

OpenFOAM是自由软件和开源软件,在GNU通用公共许可证版本3下发布。

相关

  • 古风时期古风时期 (英语:Archaic Greece,前800年 – 前480年),又称古朴时期或远古时期,是古希腊的一个子历史时期。这个定义最早出现在18世纪,由于对希腊艺术的研究,学者发现这个时期出现的
  • ↔⇔≡当且仅当的逻辑符号当且仅当(英语:if and only if,iff),在数字逻辑中,逻辑算符反异或闸(exclusive or)是对两个运算元的一种逻辑分析类型,符号为XNOR或ENOR或
  • 艾伦·纽厄尔艾伦·纽厄尔(Allen Newell,1927年3月19日-1992年7月19日)是计算机科学和认知信息学领域的科学家,曾在兰德公司,卡内基梅隆大学的计算机学院、泰珀商学院和心理学系任职和教研。他
  • 内画内画壶是清朝末年发展起来的一种中国工艺品,最开始只是为了装饰鼻烟壶,后来逐渐发展成为一种独特的工艺。一般用半透明料器制造的鼻烟壶,也有高级的用水晶、玛瑙、翡翠等制作的
  • 礼炮号这是一个礼炮号太空站舱外活动远征队列表。礼炮号由礼炮六号开始才有舱外活动,直至礼炮七号。
  • 卡西尼第三定律卡西尼定律(Cassini's laws)对月球的运动提供了一种简洁的叙述。本定律是由著名科学家乔凡尼·多美尼科·卡西尼在1693年提出的。这之后科学界对卡西尼定律的改进包括天平动机
  • 米高·亚瑟米高·亚瑟(Michael Arth,1953年4月27日-),是一位美国作家、艺术家、未来主义者、室内/环境/城市设计师。他妻子叫Maya。米高·亚瑟涉及的领域很广;从1970年代摇滚音乐会招贴,到传统
  • 单元过程化工单元过程也叫化工单元反应,是总结各种化学工业生产过程得出的具有共同化学变化特点的基本过程,和化工单元操作不同。化工单元操作是具有共同的物理变化特点。化工单元过程
  • 深厚藻属深厚藻属(学名:)是已灭绝的一属藻类,它们的化石可在海岸、浅海至深海沉积岩中发现。这种软件藻类植物的体型从小至中等均有,结构简单,具有Y形叉枝。其化石通常为在岩石表面留下的
  • .bt.bt为不丹国家及地区顶级域(ccTLD)的域名。A .ac .ad .ae .af .ag .ai .al .am .ao .aq .ar .as .at .au .aw .ax .az  B .ba .bb .bd .be .bf .bg .bh .bi .bj .bm .bn .