文档详情

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

无***
实名认证
店铺
DOC
196KB
约3页
文档ID:156279750
Poisson 泊松方程的差分方法matlab实现_第1页
1/3

Poisson 泊松方程的差分方法问题:设G 是如下图所示的十字形区域,由5 个相等的正方形构成试用五点差分格式求解下面的Possion 问题:解法分析:原方程用五点差分格式写出来就变成了:源代码: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:nfor j=1:n-1XY(:,(n-1)*(i-1)+j)=[l+j*h;i*h];endendfor i=1:n-1for j=1:3*n-1XY(:,n*(n-1)+(3*n-1)*(i-1)+j)=[j*h;l+i*h];endendfor i=1:nfor j=1:n-1XY(:,n*(n-1)+(3*n-1)*(n-1)+(n-1)*(i-1)+j)=[l+j*h;2*l+(i-1)*h];endendA=zeros(N,N);for i=1:Nfor j=1:Nif(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)%若是相邻点择系数为-1A(i,j)=-1;endendendendf=zeros(N,1);%就是等号右边Ffor i=1:Nf(i,1)=h*h;endU=bicg(A,f,0.1,100);%求解Au=FF=[XY;U'];%输出命令框中输入:fivepointdiff(1,25);x=ans(1,:);y=ans(2,:);z=ans(3,:);plot3(x,y,z)得到的结果:。

下载提示
相关文档
正为您匹配相似的精品文档