本项目运用MATLAB软件,致力于通过编程方式实现有限元分析法,旨在为工程和科学计算中的复杂问题提供有效的数值解决方案。
我们将创建一个类似于iFEM的软件包或其简化版本,并命名为mFEM工具箱。该工具箱包含以下组件:
- **fem**:此部分包括了各种源代码。
- **示例**:所有与有限元方法和变分法相关的实例都存放在“示例”文件夹中。
- **工具**:这里集合了用于可视化、边界条件设定、网格生成及数值积分等实用功能的函数。
- **pdedata**:提供了关于“示例”文件夹内各例子所关联方程的信息。
- **meshdata**:包含了在各种实例中使用的网格数据信息。
- **matlabupdate**:重写了某些更新版Matlab中的函数,以保持相同输入和输出的兼容性。
我们还提供了一些基本功能用于显示多边形网格及其节点、元素及边界边缘的标记。此外,为了便于计算引入了辅助性的网格数据,并对iFEM中处理三角测量的方法进行了扩展应用到修改后的多边形网格上。
在mFEM工具箱里,“FEM1D.m”和“main_FEM1D.m”文件介绍了如何编写一维问题的有限元程序,详细解释了刚度矩阵与载荷向量的构建过程。同时提供了求解二维泊松方程的源代码(如Poisson.m、PoissonP2.m及PoissonP3.m)以及线性弹性问题的一般规划框架。