有限元预处理器
Finite-element preprocessors
下午好,
我正在开展一个个人项目,为复合层压材料开发有限元包工具。我想知道有哪些开源选项可以为 FEM 进行预处理和大空间矩阵组装。
谢谢,
马西莫
据我了解,您需要一个用 Python 或 Fortran 编写的用于实体和结构的 线性 FEM 框架 。然后你应该在代码的预处理器部分添加一个部分,获取每个元素的刚度矩阵,并可能在 post 过程部分进行一些编辑,但不需要向主过程添加功能。您需要扩展库而不是创建一个新库。我对python和Fortran不够熟悉,但是例如有一个名为OpenSees的FEM软件,它是用cpp编写的。在其文档中,有一部分专门用于使用 cpp 在框架中添加或实现新元素:
https://opensees.berkeley.edu/wiki/index.php/Add_a_New_Element_C%2B%2B
甚至使用 Fortran:
https://opensees.berkeley.edu/wiki/index.php/Add_a_New_Element_Fortran
您需要对框架的内部架构有一定的了解。可能其他库是一样的,只需使用 google 来查找如何向它们添加元素,我在 google 搜索中使用了这个查询:
"如何在 OpenSees 中添加新元素"
下午好,
我正在开展一个个人项目,为复合层压材料开发有限元包工具。我想知道有哪些开源选项可以为 FEM 进行预处理和大空间矩阵组装。
谢谢, 马西莫
据我了解,您需要一个用 Python 或 Fortran 编写的用于实体和结构的 线性 FEM 框架 。然后你应该在代码的预处理器部分添加一个部分,获取每个元素的刚度矩阵,并可能在 post 过程部分进行一些编辑,但不需要向主过程添加功能。您需要扩展库而不是创建一个新库。我对python和Fortran不够熟悉,但是例如有一个名为OpenSees的FEM软件,它是用cpp编写的。在其文档中,有一部分专门用于使用 cpp 在框架中添加或实现新元素:
https://opensees.berkeley.edu/wiki/index.php/Add_a_New_Element_C%2B%2B
甚至使用 Fortran:
https://opensees.berkeley.edu/wiki/index.php/Add_a_New_Element_Fortran
您需要对框架的内部架构有一定的了解。可能其他库是一样的,只需使用 google 来查找如何向它们添加元素,我在 google 搜索中使用了这个查询:
"如何在 OpenSees 中添加新元素"