我有二维的程序,修改了一下,但是不出结果。不知谁用迭代法做过三维问题,可以共享一下么?
下面是二维的迭代法程序
subroutine ssor(a,n,b,x,eps,om,ii)
parameter(imax=100000)
real a(n,n),b(n),x(n)
integer i,j,ii
real r,rx
do i=1,n
   r=1/a(i,i)
   b(i)=b(i)*r
   do j=1,n
      a(i,j)=a(i,j)*r
    end do
end do
do ii=1,imax
   rx=0.0
   do i=1,n
      r=b(i)
      do j=1,n
         r=r-a(i,j)*x(j)
      enddo
      if (abs(r)>rx)rx=abs(r)
         x(i)=x(i)+om*r
      enddo
      if(om*rx<=eps) return 
 enddo
pause 'too many iterations'
end subroutine ssor