1.微分方程为。
(1)分析:对于此类微分方程,我们可以找到一定的物理意义,即有源(或者汇)的静电场满足的微分方程,又叫泊松方程。因此V应该是有物理意义的,即电势。这个方程我们很容易就可以解出它的解之一为,所以我们可以根据这个解给定它的边界条件,其中给定的边界条件为
①通过代码来说明:
maxgrid=50;V=zeros(maxgrid,maxgrid);%我们对研究的对象V建立一个50×50的矩阵。
y=linspace(-10,10,50);%其中我们让这个矩阵对-10到10进行等间距划分。
t=400+4.*y.*y;%通过这个解我们就可以给出分别在处的边界条件。
V(:,1)=t;V(:,maxgrid)=t;V(1,:)=t;V(maxgrid,:)=t;%对边界条件进行代入。
②求解这个问题我们的目标就是通过这些边界条件和满足的微分方程,把其他的V中的矩阵元素找到,就解完了。
程序源代码:
clear
maxgrid=50;V=zeros(maxgrid,maxgrid);V2=zeros(maxgrid,maxgrid);%alpha=1.2;%2/(1+pi/maxgrid);
%x=linspace(-10,10,50);
y=linspace(-10,10,50);
dy=y(2)-y(1);
t=400+4.*y.*y;
V(:,1)=t;V(:,maxgrid)=t;V(1,:)=t;V(maxgrid,:)=t; %初始化的过程
step=1;DV=10; %设定的两个循环参数的初值
while step<100000000&&DV>1e-5 %为后续比较三种算法的效率我们将循环条件调成现在这样
V2=V;
for i=2:maxgrid-1
for j=2:maxgrid-1
V2(i,j)=0.25*(V2(i-1,j)+V2(i+1,j)+V2(i,j-1)+V2(i,j+1)-16*dy*dy); %单独使用为GS方法
%V2(i,j)=0.25*(V(i-1,j)+V(i+1,j)+V(i,j-1)+V(i,j+1)-16*dy*dy);%单独使用为J方法