在数学中,有限元法(FEM,Finite Element Method)作为一种为求解偏微分方程边值问题近似解的数值技术。是求解电磁场、流体力学等问题的重要方法,也广泛应用于工业工程中。在实际问题中,有限元求解往往需要巨大的算力和时间成本。
那如果把有限元计算代码用js写到手机上的微信小程序里,会发生什么呢?
没错,基于mathjs,我把《电磁场数值计算》课上老师写的matlab程序写成js语言,实现了微信小程序上的有限元计算小工具(扫码可至小程序或进入公众号一键跳转)
GUIDE
1. 选择求解问题
2.选择图形长宽
由于屏幕限制,暂时仅支持长大于宽的矩形区域
3. 施加边界条件
你可以点击添加选择矩形的上下左右边界,或通过输入线段起点和终点来自定义边界(但当划分网格时,需要确认有划分点落在你输入的这些边界上)
4. 选择网格划分数量
在矩形区域里,程序会根据你设置的网格数量,将区域均匀划分为三角形网格
(为了您的设备安全,划分数量最大设置为60)
5. 设置求解方式并求解
程序默认使用math.js提供的lu分解法求解线性方程组。
为了增加求解的自由度,程序还添加了高斯塞德尔迭代求解法,可以设置迭代次数和求解精度并实时查看误差减小过程(速度较慢)
关注小姜,更多有趣小项目小工具,没准哪天能帮上你