trapzd.f90

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

F90
22
字号
SUBROUTINE trapzd(func,a,b,s,n)
INTEGER n
REAL a,b,s,func
EXTERNAL func
INTEGER it,j
REAL del,sum,tnm,x
if (n==1) then
  s=0.5*(b-a)*(func(a)+func(b))
else
  it=2**(n-2)
  tnm=it
  del=(b-a)/tnm
  x=a+0.5*del
  sum=0.
  do j=1,it
    sum=sum+func(x)
    x=x+del
  end do
  s=0.5*(s+(b-a)*sum/tnm)
endif
END SUBROUTINE trapzd

⌨️ 快捷键说明

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