教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 实用文档 >

Poisson 泊松方程的差分方法matlab实现

来源:网络收集 时间:2026-07-05
导读: Poisson 泊松方程的差分方法matlab实现 Poisson 泊松方程的差分方法 问题: 设G 是如下图所示的十字形区域,由5 个相等的正方形构成。 试用五点差分格式求解下面的Possion 问题: 解法分析: 原方程用五点差分格式写出来就变成了: Poisson 泊松方程的差分方

Poisson 泊松方程的差分方法matlab实现

Poisson 泊松方程的差分方法

问题:

设G 是如下图所示的十字形区域,由5 个相等的正方形构成。

试用五点差分格式求解下面的Possion 问题:

解法分析:

原方程用五点差分格式写出来就变成了:

Poisson 泊松方程的差分方法matlab实现

源代码:

function F=fivepointdiff(l,n)

h=l/n;

N=2*(n-1)*n+(3*n-1)*(n-1);

XY=zeros(2,N);%分割xy轴后每一个节点的坐标

for i=1:n

for j=1:n-1

XY(:,(n-1)*(i-1)+j)=[l+j*h;i*h];

end

end

for i=1:n-1

for j=1:3*n-1

XY(:,n*(n-1)+(3*n-1)*(i-1)+j)=[j*h;l+i*h];

end

end

for i=1:n

for j=1:n-1

XY(:,n*(n-1)+(3*n-1)*(n-1)+(n-1)*(i-1)+j)=[l+j*h;2*l+(i-1)*h]; end

end

A=zeros(N,N);

for i=1:N

for j=1:N

Poisson 泊松方程的差分方法matlab实现

if(i==j)

A(i,j)=4;

else if(((XY(1,i)-XY(1,j))^2+(XY(2,i)-XY(2,j))^2)<2*h*h)%若是相邻点 择系数为-1

A(i,j)=-1;

end

end

end

end

f=zeros(N,1);%就是等号右边F

for i=1:N

f(i,1)=h*h;

end

U=bicg(A,f,0.1,100);%求解Au=F

F=[XY;U'];%输出

命令框中输入:

fivepointdiff(1,25);

x=ans(1,:);

y=ans(2,:);

z=ans(3,:);

plot3(x,y,z)

得到的结果:

Poisson 泊松方程的差分方法matlab实现.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/1110106.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)