古典显示格式求解抛物型偏微分方程(Matlab实现)

古典显示格式求解抛物型偏微分方程(Matlab实现)

clear
clc
at=[0,1];
ax=[0,1];
t1=0.01/6;
x1=0.1;
th=at(1):t1:at(2);
xh=ax(1):x1:ax(2);
n1=length(xh);
n2=length(th);
u=zeros(n2,n1);
syms x t;
bot=sin(pi*x);
boxr=0;
boxl=0;
%下面求边界值
bt=zeros(1,n1);
for i=1:n1
   bt(i)=subs(bot,x,xh(i));
   u(1,i)=bt(i);
end
bxr=zeros(1,n2);
bxl=zeros(1,n2);
for i=1:n2
   bxr(i)=subs(boxr,t,th(i));
   bxl(i)=subs(boxl,t,th(i));
   u(i,1)=bxr(i);
   u(i,n1)=bxl(i);
end
p=t1/(x1)^2;
for i=2:n2
    for j=2:n1-1
        u(i,j)=p*u(i-1,j-1)+(1-2*p)*u(i-1,j)+p*u(i-1,j+1);
    end 
end
uu=zeros(n2,n1);
for i=1:n2
    for j=1:n1
        uu(i,j)=exp(-pi^2*th(i))*sin(pi*xh(j));
    end
end
mesh(xh,th,u);%数值解图
%mesh(xh,th,uu);%真实值图
u2=uu-u;
%mesh(xh,th,u2);%误差图;
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值