第六章热传导方程
解析解 程序ex501
差分解程序ex5011
6.1.2 有限长细杆的热传导
本节讨论有限长细杆在第一类边界条件下的热 传导问题。有限长细杆热传导的定界问题为:
uut0,
a 2u xx
t ul
(0
,t
x 0
l
)
ux,t 0 x;
取
l=20,a=10,x
u(n+1,I)=u(n,I)+C*(u(n,I+1)-2*u(n,I)+u(n,I-1)); set(h,'ydata',u(n+1,:));drawnow; pause(0.001); end; figure(2); mesh(x,T(1:5:N+1)',u(1:5:N+1,:));
a 2u xx
t 0
(
x;
x
)
利用傅里叶变换 ux,t
可以求得问题的解:1 2a πt Nhomakorabea
e d
x
4a2t
2
若初始条件为:
x
1; 0;
0 x 1 x 0,or, x 1
1. 解析解
u x,t 1
2. 差分解 uu0nin11uuInin1/0t ; a2 uin1 - 2uin uin1 / x 2
ui0 x L / 2 1/ 2;
%ex5021; (p142) % 一维有限长细杆热传导的差分解; clear; N=100; II=50; a=10; L=10; dx=L/II; dt=1*10^-4; C=a^2*dt/dx^2; x=dx*(0:II); T=dt*(0:N); I=2:II; u=zeros(N+1,II+1); u(1,:)=abs(x-L/2)<1/2; %初始温度 figure(1); h=plot(x,u(1,:),'linewidth',5);set(h,'erasemode','xor'); for n=1:N; u(n+1,1)=0; u(n+1,II+1)=0;
set(h,'ydata',w); drawnow; pause(0.001); end; figure(2); waterfall(x,t(1:4:81),u(1:4:81,:));
2. 差分解 uu0nin11uuInin1/0t ; a2 uin1 - 2uin uin1 / x 2
ui0 1 (0 x 1);
%ex5011; (p140) 一维无限长细杆热传导的差分解; clear; N=400; II=100; a=2; L=10; dx=L/II; dt=1*10^-3; C=a^2*dt/dx^2; x=dx*(-II/2:II/2); T=dt*(0:N); I=2:II; u=zeros(N+1,II+1); u(1,:)=x>=0&x<1; %初始温度 figure(1); h=plot(x,u(1,:),'linewidth',5);
w=rcdf(N,t(n),a,x,x1,x2,L); set(h,'ydata',w); drawnow; pause(0.001); end; figure(2); mesh(x,t(1:50:1001),ww(1:50:1001,:));
function u=rcdf(N,t,a,x,x1,x2,L); x=0:0.2:10; u=0; for n=1:2*N; C=n*pi/L; u=u+2/C*(cos(C*x1)-cos(C*x2)) .*exp((C*a)^2.*t).*sin(C*x); end;
第六章 热传导方程
u a2u f r,t
t
6.1 一维热传导问题 6.2 二维热传导问题 6.3 三维热传导问题
6.1 一维热传导方程
e a2 cos b d
6.1.1 无限长细杆的热传导问题 无限长细杆热传导的定解问题为:
b2
e 4a
a
uutx,
e d 1
x2
4a2t
2a πt 0
%ex501; (p140) % 一维无限长细杆热传导的积分解 ; clear; a=2;u0=1; dpsi=0.1; x=-5:0.1:5; t=(0.001:0.005:.401); psi=0:0.1:1; [X,T,Psi]=meshgrid(x,t,psi); F=u0./(2*a*sqrt(pi*T)).*exp(-(X-Psi).^2./((2*a)^2*T)); u=dpsi*trapz(F,3); w=squeeze(u(1,:)); figure(1); h=plot(x,w,'linewidth',3);axis([-5,5,0,1.1]); for n=2:length(t); w=squeeze(u(n,:));
set(h,'erasemode','xor'); for n=1:N; u(n+1,1)=0; u(n+1,II+1)=0;
u(n+1,I)=u(n,I)+C*(u(n,I+1)-2*u(n,I)+u(n,I-1)); set(h,'ydata',u(n+1,:));drawnow; pause(0.001); end; figure(2); waterfall(x,T(1:20:N+1)',u(1:20:N+1,:));
1 0
1. 解析解
10 x 11
其他;
ux,t
n1
2
n
cos
10n
l
cos11n
l
e
nπ l
a
2
t
sin nx
l
%ex502; (p142), 一维有限长细杆热传导的积分解; clear; N=50; a=10; x1=4.5; x2=5.5; L=10; t=10^-5*(1:1000); x=0:.2:L; w=rcdf(N,t(1),a,x,x1,x2,L); figure(1); h=plot(x,w,'linewidth',3); axis([0,L,0,1.1]); for n=2:length(t);