C+ C NAME: C nrQTrap C PURPOSE: C CATEGORY: C CALLING SEQUENCE: subroutine nrQTrap(Func,A,B,S) C INPUTS: C Func C A C B C OUTPUTS: C S C CALLS: C nrTrapZD, Say C EXTERNAL: external Func C PROCEDURE: C See Numerical Recipes C MODIFICATION HISTORY: C JUN-1993, Paul Hick (UCSD) C- real Func real A real B real S parameter (EPS = 1.E-6) parameter (JMAX = 20) OLDS = -1.E30 ! Any number that is unlikely to be the do J=1,JMAX ! ... average of Func at its endpoints call nrTrapZD(Func,A,B,S,J) if (abs(S-OLDS) .lt. EPS*abs(OLDS)) return OLDS = S end do call Say('nrQTrap','W','No convergence','too many steps') return end