资源简介
自己编写的二维传热的偏微分方程中心差分方法离散求解程序
代码片段和文件信息
function [uxyt]=TDE(ADTit0bxytMxMyN)
%解方程u_t-v(u_x+u_y)-(u_xx+u_yy)=f FOR D(1)<=x<=D(2)D(3)<=y<=D(4)0<=t<=N
%初值:u(xy0)=ixy0(xy)
%边界条件:u(xyt)=bxyt(xyt)
%Mx,My,N,x轴分段,y轴分段,时间分段
dx=(D(2-D(1)))/Mx;x=D(1)+(0:Mx)*dx;
dy=(D(4)-D(3))/My;y=D(3)+(0:My)*dy;
dt=T/N;t=(0:N)*dt;
%初始化u
for i=1:Mx+1
for j=1:My+1
u(ij)=it0(x(i)y(j));
end
end
rx=A*dt/(dx*dx);
rx1=1+2*rx;
rx2=1-2*rx;
ry=A*dt/(dy*dy);
ry1=1+2*ry;
ry2=1-2*ry;
for j=1:Mx-1
P(jj)=ry1;
if j>1
P(j-1j)=-ry;
P(jj-1)=-ry;
end
end
for i=1:My-1
Q(ii)=rx1;
if i>1
Q(i-1i)=-rx;
Q(ii-1)=-rx;
end
end
size(P)
for k=1:N
u_1=u;
t=k*dt;
for i=1:Mx+1 %边界条件
u(i1)=f
- 上一篇:鲁棒控制的在matlab中的程序
- 下一篇:最小平方误差设计分类器
评论
共有 条评论