一维稳态导热matlab程序求解Word文档格式.docx
《一维稳态导热matlab程序求解Word文档格式.docx》由会员分享,可在线阅读,更多相关《一维稳态导热matlab程序求解Word文档格式.docx(9页珍藏版)》请在冰点文库上搜索。
T2
(1)=8;
T2(N)=1;
dx=length/(N-2);
while(deltQ>
=eps&
&
iterN<
50)
T=T2;
fori=1:
N
k(i)=3*T(i)^3;
sc(i)=20*(i-1)/N;
sp(i)=4;
end
k(N/2+1:
N)=40*T(N/2+1:
N).^3;
fori=2:
N-1
ifi==2
a(i-1)=-2*k(i)/dx;
c(i-1)=-2*k(i)*k(i+1)/dx/(k(i)+k(i+1));
b(i-1)=-a(i-1)-c(i-1)-sp(i)*dx;
d(i-1)=sc(i)*dx-a(i-1)*T(i-1);
else
ifi==N-1;
a(i-1)=-2*k(i)*k(i-1)/dx/(k(i)+k(i-1));
c(i-1)=-2*k(i+1)/dx;
b(i-1)=-a(i-1)-c(i-1)-sp(i)*dx;
d(i-1)=sc(i)*dx-c(i-1);
else
c(i-1)=-2*k(i)*k(i+1)/dx/(k(i)+k(i+1));
d(i-1)=sc(i-1)*dx;
end
end
ifabs(b
(1))<
=abs(c
(1))||abs(b(N-2)<
=abs(c(N-2)))
warndla('
²
»
Â
ú
×
ã
·
¸
Ï
¨
Ì
õ
¼
þ
'
'
¾
¯
æ
£
¡
);
N-2
ifabs(b(i))<
abs(c(i)+abs(a(i)))
warndla('
ifi==1
u
(1)=b
(1);
l(i)=a(i)/u(i-1);
u(i)=b(i)-l(i)*c(i-1);
y
(1)=d
(1);
y(i)=d(i)-l(i)*y(i-1);
forj=N-2:
-1:
1
ifj==N-2
x(N-2)=y(N-2)/u(N-2);
x(j)=(y(j)-c(j)*x(j+1))/u(j);
iterN=iterN+1;
T2(2:
N-1)=x(1:
N-2);
deltQ=max(abs(T2-T));
10
Q(i,1:
10)=T2((1+(i-1)*10):
i*10);
disp(Q);
上面程序有乱码,附截图一份: