matlab 快速访问工具栏设置_FEM之理论通俗有限元(21)偏微分方程应用(Matlab/COMSOL)...

本文介绍分别用Matlab,COMSOL, 以及自己手工 求解拉普拉斯方程。

1.Matlab

命令行输入 

1. pdetool

2. 启动界面,工具栏选择画长方形工具,画一个正方形,如图1-1

3. 点击菜单 Options--》Application--》Heat transfer

4. 点击菜单 Boundary--》 Boundary Mode, 选中图中左边一条边,温度设置为100, 选中右边一条边温度设为0.

5. 点击菜单 Solve--Solve PDE 如图1-2

图1-1:

5a5f843115d51562973fa4cd845ce899.png
图1-2:8b56581abe99a9f74abe6cfb99349dab.png

Matlab 解偏微分方程最大的局限性是 只能求解平面不能解三维。

2. COMSOL

1. Space 选择2D

2. 求解类型选择Heat transfer-》Heat transfer in solid,求解类型选Stationary

3. 选中树形菜单Geometry,右键,选择rectangle,然后画出一个正方形

4. 选中树形菜单Material,选中一个Build-in的材料

5. 选中树形菜单Heat Transfer in Solids,右键选中 Temperature,然后选中长方形左边设置100,

6. 重复5,选中正方形右边设置0

7. 点击树形菜单Study1,右键计算 Compute selected step

结果看起来和Matlab 不太一样,是因为材料属性热导率不同,Matlab 默认边界温度为0。

4c64bc919e89acd36a0e9dd1fec69fd6.pnge25ad007133182553fd99090dc71e7fd.png1da845d1638af6de850555b47105d906.png2b4a3e4a273d919511bbf0918923cb6f.pngb7bbfc1d66cec600bf237997410aa9cf.png

3. 手工求解

先将正方形离散为三角单元,为三角单元建立形函数,然后利用伽辽金方法推导出积分公式,加入边界,建立可编程实现的有限元方程,求解线性方程,计算出结果。

三角单元离散化参考:FEM之单元(1)---三角单元介绍 。

假设三角单元温度场函数为:

T = [S1 S2 S3] [Ti Tj Tk];

S1 S2 S3为 线性形函数;

S1=(a1+b1x+c1y)/2A;

S2=(a2+b2x+c2y)/2A;

S3=(a3+b3x+c3y)/2A;

Ti Tj Tk 为 三角形三个顶点上的温度;

A 为三角形面积;

T 表示了三角单元内部任意一点的温度。

下面最主要的一步是利用伽辽金方法为三角单元建立方程:

1eff3d513f9a3f49122c8c90a207d7d4.png

将形函数与偏微分方程乘积的积分余差为0.
其中f18f2b952e19fc11834f1c217364e367.png即为[S1 S2 S3]形函数,其中包含了变量x,y,上式可以拆成两个

a4916697871603957c89e5647a295167.png

对第一个式子进行解析,按照分步积分和链式求导法则,有如下表达式:

b3a606addbc6418e4a9cea701ce9178f.png
将该式子右边第二项移动到左边,就得到了要计算的表达式

其中 fc34b87857481343e363fd06538994b6.png求导无任何问题,简单的高等数学知识;

表达式f72c7bb872a422b9508c73e464330d59.png计算要利用一下 格林函数,将面积分转化成曲线积分,其实也是大学高等数学知识。最终的计算结果可以将积分表达式转化成用a,b,c表现的矩阵形式。

上面一步是很多教科书都没有写明的,一带而过,但这才是用伽辽金方法生成有限元方程的关键所在。

形成矩阵形式以后,就可以很方便的用编程实现了。详细推导过程可以参考《有限元分析--ANSYS理论与应用》P310--P312, 作者 Saeed Moavenl,这个系列的书都不错,深入浅出,通俗易懂。

下一步就是要将单个矩阵组装成整体矩阵表达式。知道了节点编号,就是对号入座就行了。假设节点数目为N,生成一个N*N的总体矩阵K,按节点编号,将单个单元标号的矩阵放入整体矩阵中,不同单元相同节点号直接相加即可,这表明了单元的连续性。之后就是边界条件,将已知边界的温度生成一个N的向量B,解方程 Kx=B,即可得到温度场分布。在解决实际问题时,由于矩阵特别大,在总刚组装以及求解线性方程组时会非常讲究,以后有时间讨论。

注:文中所使用的软件仅供学习使用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值