public class HyperRectangleQuadrature extends Object implements Serializable, Cloneable
It is possible to improve on the performance of Monte Carlo by carefully choosing the points at which the function is to be evaluated. Randomly distributed points tend to be non-uniformly distributed. The alternative to a sequence of random points is a low-discrepancy sequence. A low-discrepancy sequence is one that is highly uniform.
This function is based on the low-discrepancy Faure sequence
as computed by FaureSequence
.
Modifier and Type | Class and Description |
---|---|
static interface |
HyperRectangleQuadrature.Function
Public interface function for the HyperRectangleQuadrature class.
|
Constructor and Description |
---|
HyperRectangleQuadrature(int dim)
Constructs a HyperRectangleQuadrature object.
|
HyperRectangleQuadrature(RandomSequence sequence)
Constructs a HyperRectangleQuadrature object.
|
Modifier and Type | Method and Description |
---|---|
double |
eval(HyperRectangleQuadrature.Function objectF)
Returns the value of the integral over the unit cube.
|
double |
eval(HyperRectangleQuadrature.Function objectF,
double[] a,
double[] b)
Returns the value of the integral over a cube.
|
double |
getErrorEstimate()
Returns an estimate of the relative error in the computed result.
|
void |
setAbsoluteError(double errorAbsolute)
Sets the absolute error tolerance.
|
void |
setRelativeError(double errorRelative)
Sets the relative error tolerance.
|
public HyperRectangleQuadrature(int dim)
public HyperRectangleQuadrature(RandomSequence sequence)
public void setAbsoluteError(double errorAbsolute)
errorAbsolute
- a double
scalar value specifying the
absolute errorpublic void setRelativeError(double errorRelative)
errorRelative
- a double
scalar value specifying the
relative errorpublic double getErrorEstimate()
double
specifying an estimate of the relative
error in the computed resultpublic double eval(HyperRectangleQuadrature.Function objectF)
objectF
- Function
containing the function to be integratedpublic double eval(HyperRectangleQuadrature.Function objectF, double[] a, double[] b)
objectF
- Function
containing the function to be integrateda
- is a double
specifying the lower limit of integration.
If null all of the lower limits default to 0.b
- is a double
specifying the upper limit of integration.
If null all of the upper limits default to 1.Copyright © 2020 Rogue Wave Software. All rights reserved.