


如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
Poisson泊松方程的差分方法 问题: 设G是如下图所示的十字形区域,由5个相等的正方形构成。 试用五点差分格式求解下面的Possion问题: 解法分析: 原方程用五点差分格式写出来就变成了: 源代码: functionF=fivepointdiff(l,n) h=l/n; N=2*(n-1)*n+(3*n-1)*(n-1); XY=zeros(2,N);%分割xy轴后每一个节点的坐标 fori=1:n forj=1:n-1 XY(:,(n-1)*(i-1)+j)=[l+j*h;i*h]; end end fori=1:n-1 forj=1:3*n-1 XY(:,n*(n-1)+(3*n-1)*(i-1)+j)=[j*h;l+i*h]; end end fori=1:n forj=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); fori=1:N forj=1:N if(i==j) A(i,j)=4; elseif(((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 fori=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) 得到的结果:

ys****39
实名认证
内容提供者


最近下载