D151: Multidimensional Integration or Random Number Generation

Author(s): J.H. Friedman, M.H. Wright (Stanford) Library: MATHLIB
Submitter: F. James Submitted: 01.12.1981
Language: Fortran Revised: 14.08.1985

tex2html_wrap123

DIVON4 is designed for integration of scalar functions of several variables, especially functions not smooth enough to be integrated reliably using Gaussian quadrature. It can also be used effectively to generate random points in a multidimensional space, with point density given by any bounded function. The heart of the package is an algorithm for recursive multi-dimensional partitioning of the space into subregions of approximately constant function value (minimum range criterion).

Structure:

SUBROUTINE package
User Entry Names:
BUKDMP, DIVON, DVNOPT, GENPNT, INTGRL, PARTN, RANGEN, TREDMP,
USRINT, USRTRM, DVNBKD, EXMBUC, SPLIT, QUASI, RECPAR, BOUNDS,
TREAUD, NODAUD, BUCMVE, QUAD, FEQN, NOCUT, TSTEXT, DELSLV,
FUN, BUFOPT, BNDOPT, SETTOL, BNDTST, DVCOPY, GRDCMP, DELETE,
BFGS, MODCHL, NMDCHL, DVDOT, LDLSOL, SHRNK, FEASMV, ADDBND,
MULCHK, DELBND, LOCSCH, ORTHVC, MXSTEP, NEWPTR, RLEN, RANUMS

Files Referenced: Printer and optional user-defined external file
External References: NRAN, user-supplied FUNCTION subprogram DFUN

Usage:

The function (integrand) is defined by a user-supplied FUNCTION subprogram which must have the name DFUN and must calculate the integrand in double-precision mode:

   FUNCTION DFUN(ND,X)
   DOUBLE PRECISION DFUN,X(ND)
   ...
   DFUN = ...
   ...
   RETURN
   END
ND
(INTEGER) Number of integration variables.
X
(DOUBLE PRECISION) Array containing the coordinates of the point in the integration volume at which DFUN is to be evaluated.
See Long Write-up for details.

References:

  1. J.H. Friedman and M.H. Wright, A Nested Partitioning Procedure for Numerical Multiple Integration. ACM Trans. Math. Software 7 (1981) 76-92.
tex2html_wrap_inline121

Michel Goossens Wed Jun 5 00:08:45 METDST 1996