elmhes.f90

来自「FORTRANvisualfortran常用数值算法集及源码」· F90 代码 · 共 44 行

F90
44
字号
SUBROUTINE elmhes(a,n)
INTEGER n
REAL a(n,n)
INTEGER i,j,m
REAL x,y
do m=2,n-1
  x=0.
  i=m
  do j=m,n
    if(abs(a(j,m-1))>abs(x)) then
      x=a(j,m-1)
      i=j
    endif
  end do
  if(i/=m) then
    do j=m-1,n
      y=a(i,j)
      a(i,j)=a(m,j)
      a(m,j)=y
    end do
    do j=1,n
      y=a(j,i)
      a(j,i)=a(j,m)
      a(j,m)=y
    end do
  endif
  if(x/=0.) then
    do i=m+1,n
      y=a(i,m-1)
      if(y/=0.) then
        y=y/x
        a(i,m-1)=y
        do j=m,n
          a(i,j)=a(i,j)-y*a(m,j)
        end do
        do j=1,n
          a(j,m)=a(j,m)+y*a(j,i)
        end do
      endif
    end do
  endif
end do
END SUBROUTINE elmhes

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?