⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 balanc.f90

📁 FORTRANvisualfortran常用数值算法集及源码
💻 F90
字号:
SUBROUTINE balanc(a,n)
INTEGER n
REAL a(n,n),RADIX,SQRDX
PARAMETER (RADIX=2.,SQRDX=RADIX**2)
INTEGER i,j,last
REAL c,f,g,r,s
do
  last=1
  do i=1,n
    c=0.
    r=0.
    do j=1,n
      if(j/=i) then
        c=c+abs(a(j,i))
        r=r+abs(a(i,j))
      endif
    end do
    if(c/=0..and.r/=0.) then
      g=r/RADIX
      f=1.
      s=c+r
	  do while(c<g) 
          f=f*RADIX
          c=c*SQRDX
      end do
      g=r*RADIX
      do while(c>g) 
        f=f/RADIX
        c=c/SQRDX
      end do
      if((c+r)/f<0.95*s) then
        last=0
        g=1./f
        do j=1,n
          a(i,j)=a(i,j)*g
        end do
        do j=1,n
          a(j,i)=a(j,i)*f
        end do
      endif
    endif
  end do
  if(last/=0) exit
end do
END SUBROUTINE balanc

⌨️ 快捷键说明

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