您好,欢迎访问三七文档
当前位置:首页 > 机械/制造/汽车 > 汽车理论 > 一维稳态导热问题数值模拟
一维稳态导热问题数值模拟问题描述:设有一导热方程,022TdxTd,边界条件为0011dTxdxxT编写一段程序对此问题进行数值模拟。解析:220dTTdx0011dTxdxxT1、用控制容积有限差分方法做出内部节点和边界节点的离散化方程:首先进行离散化,先确定节点,再确定控制容积。将0-1划分为N段,共N+1个节点,N个控制容积,其中1xN。可以得到如下:对原方程建立差分方程,内部节点有:[()]0ewddTTdxdxdx0ewdTdTTxdxdx0PWEPPTTTTTxxx1011PWEPPTTTTTNNN1(2)1EWPEWPEWPPEEWWaaNNTNTNTNaaaaTaTaTN则转换为下式,:PiiEiEiWiWiaTaTaTi=2,….,N上式即为内部节点的离散化方程。对于外部节点可有:1011iiiTTiTiN综上可以得到内部节点和外部节点的离散化方程为:12111PiiEiEiWiWiiiiaTaTaTiNTTiTiN,...,即为11(2)2111iEiWiiiiNTNTNTiNNTTiTiN,...,上式不满足系数为负数,则可改用如下离散方程:内部节点:*12011EpPWPPTTTTTTNNNNEwaaN1pEwaaaN12paNN*2pbTNppEEWWaTaTaTbpipiEiEiWiWiiaTaTaTb*1112(2)()iiiPNTNTTTNN边界节点1x11NTppEEWWaTaTaTbEwaaN1pEwaaaN12paNN*11112NNNNNNPaTaTaTTN*112(2)NNPNTNNTTNN边界节点0x0dTdx(())0ePddTTdxdxdx*1(2)012PEPPTTTTNNEaN*1PbTN11++22PEaaNNNppEEaTaTb*11221PaTaTTN*1211()2PNTNTTNN组成代数方程组:*12*11*111(+)1212(2)()212(2)1PiiiPNNPNTNTTiNNNTNTTTiNNNNTNNTTiNNN写成矩阵方程组:*1*22*1*11+000021220001..0200.......2100202100002PPNNPNPNNTNNTNNNTNTNNNNNTTTNNNNTNTNNNNN2、写出代数方程组的迭代求解程序:用Matlab编写如下求解程序;(1)高斯赛德尔迭代法(调用程序gauseidel文件)function[x,n]=gauseidel(A,b,x0,eps,M)%高斯迭代格式%线性方程组的系数:A%线性方程组中常数向量:b%迭代初始向量:x0%解的精度控制:eps%迭代步数控制:M%线性方程组的解:x%求出所需精度的解实际迭代步数:nifnargin==3eps=0.000001;M=10000;elseifnargin==4M=10000;endD=diag(diag(A));L=-tril(A,-1);U=-triu(A,1);G=(D-L)\U;f=(D-L)\b;x=x0;n=0;tol=1;whiletol=epsx=G*x0+f;n=n+1;tol=norm(x-x0);x0=x;if(n=M)disp('Warning:’迭代次数过多,可能不收敛.')return;endend(2)主程序(demo文件)如下:N=input('请输入N值''\n')Tp=input('请输入Tp值''\n')x1=zeros(N,1)A0=zeros(N);A0(1,1)=N+1/(2*N);A0(1,2)=-N;A0(N,N-1)=-N;A0(N,N)=2*N+1/N;fori=2:N-1A0(i,i-1)=-N;A0(i,i)=2*N+1/N;A0(i,i+1)=-N;endb0=zeros(N,1);b0(1,1)=(1/N)*Tp;b0(N,1)=(2/N)*Tp+N;fori=2:N-1b0(i,1)=(2/N)*Tp;endA=A0;b=b0;x0=x1;[x,n]=gauseidel(A,b,x0)x=[x;1]t=(0:1/N:1)title('一维稳态导热问题空间温度分布图')xlabel('空间分布X')ylabel('温度分布T')holdonplot(t,x)3、结果分析,以上程序计算当取*pT=1。当N=10时,迭代次数n=3431.35171.34851.33871.32241.29921.26911.23161.18651.13321.0712方程组的解当N=20时,迭代次数n=12431.35191.35101.34861.34461.33891.33151.32251.31181.29931.28511.26921.25141.23171.21011.18651.16091.13321.10341.07131.0368方程组的解当N=30时,迭代次数n=2634以上图形是不同步长下一维稳态导热问题空间温度分布图,由上图可见随着步长的缩短,计算结果更加精确,数值精度越高,收敛速度越慢。(注:程序运行demo文件,gauseidel文件为调用程序)1.35191.35151.35041.34861.34611.34281.33891.33411.32871.32251.31551.30781.29931.29011.28001.26921.25751.24501.23171.21751.20251.18651.16971.15191.13321.11361.09291.07131.04861.0248方程组的解
本文标题:一维稳态导热问题数值模拟
链接地址:https://www.777doc.com/doc-2815365 .html