MatLab中的差分方程偏微分方程
计算科学
matlab
pde
有限差分
2021-12-15 12:10:39
1个回答
根据您在图片中定义模具的方式,我认为您的公式有误,应该是: 你已经切换了和,在你的初始条件下也是一样的。
实现非常简单。使用 定义网格meshgrid。定义v为具有相同维度的矩阵。前两个循环定义了边界条件。最后一个是差分公式。然后,一切就绪surf:
clc;clear all;
N=5;M=5;
[X,Y]=meshgrid(0:N,0:M);
v=zeros(N+1,M+1);
for i=1:M+1
v(i,1)=0.2*(i-1);
v(i,end)=v(i,1)+25;
end
for j=1:N+1
v(1,j)=(j-1)*(j-1);
end
for i=1:N
for j=2:M
v(i+1,j)=0.1*v(i,j-1)+0.8*v(i,j)+0.1*v(i,j+1);
end
end
surf(X,Y,v)
