当前位置:文档之家› 燕山大学Matlab三级项目

燕山大学Matlab三级项目

基于Matlab的导热问题的数值解法
班级:13级机械装备2班
指导教师:任素波
引言
传热学在工程中应用非常广泛,特别是冶炼、轧钢行业,处处有
传热学的身影。

虽然传热过程是容易做数学处理的一种热量传递方式,但其往往涉及到常微分方程、偏微分方程、线性及非线性方程组的求解,对于数学知识掌握不深的专业人员而言,解题有一定难度。

高级计算机语言的出现给数值计算带来了希望,但用这些计算机语言编制程序,需要对所用的语言语法和相关算法有相当的熟练度。

Matlab软件是一种功能强、效率高、便于进行科学和工程计算的交互式软件包。

它包含了一般数值计算、矩阵计算等应用程序,易学易用,大大降低了对使用者的数学基础和计算机语言知识的要求,而且编程效率和计算效率极高。

因此,对于数学模型复杂,涉及较多运算方法传热过程,Matlab 是一种非常重要的辅助工具。

1.实际问题
有一个边长为1m的正方形物体如下图所示,其左侧面恒温为100℃,顶面恒温为500℃,其余两侧均暴露在对流环境中,环境温
度为100℃。

已知物体的导热系数为K
10,求出各节点的温度值。

/
W
m
2.问题分析
求解导热问题,实际上就是对导热微分方程在给定条件下进行求解,找出具体的函数关系式,从而得出导热过程的数学表达式。

本案例是一个很常见的导热问题,我们可以使用温度节点离散化线性方程组,并用矩阵形式来表示。

3.数学模型
⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡---------67.210100000167.410200000167.400200010067.420100
01014101000101400100010075.420000010141000001014⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦
⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡--------=⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡7.667.661677.660100567500600987654321t t t t t t t t t 对上述9x9阶矩阵进行求解,相当于解九个方程,最终求出九个未知数,其难度以及计算量对于工程人员来说是一个很大的挑战。

但如果使用Matlab 进行编程计算,则会大大节省计算时间,减低错误的出现几率,对于工程运算来说如虎添翼。

4.Matlab 编程
此方程组属于大型稀疏线性方程组,求解时广泛使用LU 分解法,求解速度快,占用计算机内存小,便于储存。

下面为求解过程: functionLU
a1=[-41010;1-4101;02-4.6700;100-41;0101-4];
a2=[0000;0000;1000;0100;1010];
a3=[00102;00020;00002;00000];
a4=[-4.67001;0-4.6710;01-4.671;101-2.67];
a=[a1,a2;a3,a4];
b=[-600,-500,-567,-1000,-66.7,-167,-66.7,-66.7];
[L,U]=lu (a );
t=U\(L\b )
执行,可以得到九个节点温度依次为:
175.2945
t 184.3529
t 157.3617
t 217.3453
t 231.2526
t 192.3311
t 309.4573
t 330.2485t 280.3628
t 987654321=========
5.结果分析
使用Matlab 对矩阵进行数值运算,其结果和人工计算相同。

但与人工计算相比,其速度和准确率都大大提高。

而且Matlab 的操作工程并不复杂,仅需要编写几行程序就可以进行运算。

因此,对于数学模型较为复杂的工程求解问题,都可以考虑采用Matlab 进行编程计算。

6.参考文献
1.《Matlab 语言及应用案例》 张贤明 东南大学出版社
2.《传热学》 张兴中 国防工业出版社。

相关主题