24小时热门版块排行榜    

查看: 570  |  回复: 1

百里道

木虫 (初入文坛)

[求助] 有限差分的实现

n=200;
L=1;
t=0.1;
Kn=1;
%输入值
dx=L/n;
w=dx/Kn;
dt=w;
m=t/dt;
%规定数组
x=linspace(0,1,n);
e1=[n,m];
e2=[n,m];
e=[n,m];
%计算过程
%初始值
for j=2:n;
    e1(j,1)=0;
    e2(j,1)=0;
end
%边界值
for k=1:m;
    e1(1,k)=0.5;
    e2(1,k)=0.5;
    e1(n,k)=0;
    e2(n,k)=0;
end
%内部过程
for j=2:n-1;
    for k=2:m;
        e1(j+1,k+1)=(1-w/2)*e1(j,k)+w/2*e2(j,k);
        e2(j-1,k+1)=(1-w/2)*e2(j,k)+w/2*e1(j,k);
    end
end
for j=1:n;
    for k=1:m;
        e(j,k)=e1(j,k)+e2(j,k);
    end
end
plot(x,e,'k-');
grid on
请教一下规定数组这么写合适吗?
回复此楼
==
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ltcc2000

木虫 (著名写手)

【答案】应助回帖


感谢参与,应助指数 +1
臭水沟: 金币+1, 谢谢交流~~ 2012-04-09 09:41:09
你规定的这个数组只有两个数,需要修改一下
海阔凭鱼妖
2楼2012-04-09 08:37:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 百里道 的主题更新
信息提示
请填处理意见