OOFEM特性

面向对象的体系结构

模块化和可扩展的FEM内核(OOFEMlib)

完全可扩展——内核可以在任何“方向”上扩展。
当然,添加新元素类型、具有任意类型和数量的内部历史参数的新材料模型、新的边界条件、数值算法或分析模块,以及添加和管理任意自由度的能力是很重要的。
独立问题的制定,数值解和数据存储-内核提供独立的抽象分析,一般的数值方法和数据存储(稀疏矩阵)。组件映射概念允许独立地制定问题和数值方法,并允许使用任何合适的数值方法来解决问题而不需要更改。抽象的稀疏矩阵接口进一步增强了这一概念,允许在稀疏矩阵实现上独立地制定数值方法。
完全重启支持——内核支持从以前保存的任何状态完全重启。
交错分析——允许将基本问题分组在一起,并在基本子问题之间转移和共享解决方案字段。一般的设计允许对基本的子问题使用不同的离散化。
并行处理支持——基于域分解、消息传递范例和动态负载平衡引擎。许多分析可以并行运行,并且可以在各种平台上获得很好的性能可伸缩性。消息传递概念在许多平台(包括大型并行计算机、共享内存系统和工作站集群)之间具有高度可移植性,对于开发人员来说,在消息传递库的抽象通用层上构建了用于高效域间通信的通用类。内置对动态负载平衡的高级支持。
有效的稀疏求解器——直接求解器和迭代求解器都是可用的。直接求解器包括对称和非对称天际线求解器和稀疏直接求解器,迭代求解器支持多种稀疏存储格式,并带有若干预调整器。与第三方线性求解程序库的接口是可用的,包括IML、PETSc(串行和并行)、PARDISO、SuperLu和SPOOLES。
自适应分析支持-多个领域的概念。支持各种重映射标准的误差估计,支持主未知和内部变量映射。提出了一种基于树技术的快速空间定位算法。
扩展有限元(XFEM)支持——内建表示全局充实函数、它们的几何描述和通用集成规则,为实现基于XFEM的求解算法提供了通用支持。
等几何分析(IGA)支持–内置支持IGA分析,与b样条和NURBS插值类。飞机应力和三维精度的试点实施。

结构力学模块(sm)

许多分析程序-线性静态,线性动态(特征值分析,直接积分方法-隐式和显式),非线性静态(鲁棒镇定求解器),非线性动态(显式,并行版本)。
大型材料库,包括最先进的准脆性材料非线性断裂力学模型和丰富的元素库。参见元素库手册和材料模型库手册。
自适应分析-线性和非线性静态。
高级建模功能-从DOFs,刚性手臂,局部坐标系,元素激活/失活和更多。
并行分析-显式非线性动力学利用领域分解方法,线性和非线性静态(需要PETSC)。
配置优化。

运输问题模块™

分析程序: 静态和瞬态(线性和非线性)传热和耦合传热传质问题。
元素库:轴对称,二维和三维元素,请参阅元素库手册。
热传递分析和机械分析的交错同时解决方案,其中通过传热分析产生的温度场可以用于机械分析中作为温度负载。

流体动力学问题模块(fm)

分析程序:瞬态不可压缩流 - 具有SUPG / PSPG稳定性的CBS半隐式算法和瞬态求解器。后者支持使用基于2D VOF的界面跟踪算法对固定区域上的两种不混溶流体(也适用于自由表面流)进行不可压缩分析。
元素库:线性等阶速度和压力近似三角形,参见元素库手册。

后期处理

在X-windows后处理器中构建。
支持导出为VTK格式,允许使用基于VTK的可视化工具(如MayaVi或ParaView)在不同平台上进行后处理

网格生成器(T3d和Targe2)的接口,UNV导入工具(unv2oofem)

与稀疏线性和特征值求解器库(目前为PETSc,SLEPc,IML,PARDISo,SuperLu和SPOOLES)的接口

可移植性(C ++)

OOFEM与以下外部软件接口:

T3d(Daniel Rypl的3d网格生成器)
Targe2(Petr Krysl的2d网格生成器)
IML ++(数值迭代方法的模板库)
SPOOLES稀疏直接求解器。
PETSC - 用于科学计算的便携式可扩展工具包。
SLEPc - 特征值问题计算的可扩展库。
ParMETIS - 并行图分区和填充减少矩阵排序
MayaVi - 一款免费,易于使用的科学数据可视化工具
ParaView:并行可视化应用程序

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
有限元计算框架 OOFEM最新版2.5主要内容: [1]这是什么 [2]必备条件 [3]安装 [4]运行oofem和oofeg [5]相关的链接 [1] 这是什么 ============================================================================== 下面的目录树包含OOFEM包的源代码。 OOFEM_TOP_DIR | |-- doc - 包含“用户指南User's guide”,生成“参考手册Reference manual”的资源, | documents 描述输入文件规范、元素和材料库以及其他有用的文档。 | |-- src - 所有oofem模块的源文件 | | | |-- oofemlib - OOFEM核心部分OOFEMlib模块的源代码。 | | | |-- sm - 结构分析模块来源。 | | | |-- tm - 源传输问题模块. | | | |-- fm - 流体力学模块的来源。 | | | |-- dss - 包括直接稀疏求解器(DSS)的源代码,由R. Vondracek提供) | | | |-- main - 包含main()的源代码以及oofem、oofeg的一些全局函数的实现。 | | |-- tools - 几个实用程序的源代码。 | |-- tests -包含几个测试,这些测试对于验证程序功能非常有用。 | |-- bindings - 保存源文件,以生成到Python编程语言的OOFEM绑定。 [2] 必备条件 ============================================================================== oofem需要CMake跨平台构建系统和支持STL的c++编译器(标准模板库)。 oofem包含到iml++库的接口。 它是由Roldan Pozo编写的用于求解对称和非对称线性方程组的现代迭代方法的c++模板库。 可以从http://math.nist.gov/iml++/下载。 图形化后处理器(oofeg)需要安装Petr Krysl (http://www.multires.caltech.edu/~pkrysl/)的ELIXIR和Ckit库。 它们提供了X-windows图形支持。 与OOFEM一起使用的Elixir版本可能与Petr Krysl维护的原始版本不兼容。 兼容的Elixir版本可以在oofem主页(http://ksm.fsv.cvut.cz/oofem/oofem.html)上找到。 Ckit库可以在相同的位置获得。 对分布式内存的并行支持需要安装MPI库。如果您没有,我们建议您使用Open MPI。 这是一个免费的、高性能的、可移植的MPI实现(http://www.open-mpi.org/)。 对于高性能的特征值求解器,oofem使用了SLEPc。 该工具包可以从SLEPc项目主页(http://www.grycap.upv.es/slepc)下载。 通过tinyXML2库支持XML解析器。CEMHYD3D模型需要这个库, 可以从它的git存储库(https://github.com/leethomason/tinyxml2)下载。 可以从源文件自动生成参考手册。您也可以使用它来生成类的文档。 为此,您必须安装doxygen文档系统 (http://sourceforge.net/projects/doxygen/) 和图形可视化工具包(http://www.research.att.com/sw/tools/graphviz/) 要从源文件构建元素库、材料库和oofem输入手册,需要使用latex和latex 2 html包。 由于其大小,已编译的参考手册本身不包括在发行版中。可以从oofem主页在线访问。 [3] 安装 ============================================================================== UNIX快速说明: ---------------------------- 0)解压缩源1)创建树外构建目录“mkdir -p ~/build/debug” 2)配置目标“cd ~/build/debug; 其中,PATH_TO_OOFEM_SOURCES是指向OOFEM源目录的路径,创建于步骤0(例如~/oofem-2.2)。 3)编译OOF

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值