当前位置:   article > 正文

抛物型方程的差分解法matlab,急求!!! 大学数学,用matlab解决问题,题目是一维抛物型偏微分方程差分解法...

抛物方程的有限差分法matlab

显式前向欧拉法

源程序:

function [u,x,t] = EF_Euler(A,xf,T,it0,bx0,bxf,M,N)

%解方程 A u_xx = u_t , 0 <= x <= xf, 0 <= t <= T

%初值: u(x,0) = it0(x)

% 边界条件: u(0,t) = bx0(t), u(xf,t) = bxf(t)

% M : x 轴的等分段数

% N : t 轴的等分段数

dx = xf/M; x = [0:M]*dx;

dt = T/N; t = [0:N]'*dt;

for i= 1:M + 1

u(i,1) =it0(x(i));

end

for j = 1:N + 1

u([1 M + 1],j)= [bx0(t(j)); bxf(t(j))];

end

r = A*dt/dx/dx, r1 = 1 - 2*r;

if(r>0.5)

disp('r>0.5,unstability');

end

for j = 1:N

for i = 2:M

u(i,j+1) =r*(u(i + 1,j) + u(i-1,j)) + r1*u(i,j); %(9.2.3)

end

end

u=u';

%-----------------------------

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/751959
推荐阅读
相关标签
  

闽ICP备14008679号