matlab求解一维热传导问题

Matlab 求解一维热传导方程

%%传热模型
clear ;
g = ‘squareg’; %定义以为正方形
b = ‘squareb1’; %定义边界条件为零
c = 1; a = 0; f = 0; d = 1;
%产生初始三角网格
[p,e,t]=initmesh(g);
%定义初始条件
u0 = zeros(size(p,2),1);
ix = find(sqrt(p(1,:).2+p(2,:).2)<0.4);
u0(ix)=1;
%在时间段0~0.1 的20个点上求解
nframe = 20;
tlist = linspace(0,0.1,nframe);
u1 = parabolic(u0,tlist,b,p,e,t,c,c,f,d);
%动画效果
for j = 1:nframe
pdesurf(p,t,u1(:,j));
mv(j) = getframe;
end
movie(mv,10);

你可能感兴趣的:(matlab求解一维热传导问题)