public final class GridCubeInterpolator extends Object implements CubeInterpolator, org.joda.beans.ImmutableBean, Serializable
The interpolation operates in two stages. First, the parameters are grouped into sets, each with the same x value. Second, the y-z surface interpolator is used on each set of y-z values. Finally, the x curve interpolator is used on the results of the y-z surface interpolation.
There should be at least two different y-values for each x-value, two different z-values for each y-value. If there is only one, then the associated w-value will always be returned.
| Modifier and Type | Class and Description |
|---|---|
static class |
GridCubeInterpolator.Meta
The meta-bean for
GridCubeInterpolator. |
| Modifier and Type | Method and Description |
|---|---|
BoundCubeInterpolator |
bind(DoubleArray xValues,
DoubleArray yValues,
DoubleArray zValues,
DoubleArray wValues)
Binds this interpolator to a cube.
|
boolean |
equals(Object obj) |
CurveExtrapolator |
getXExtrapolatorLeft()
Gets the x-value left extrapolator.
|
CurveExtrapolator |
getXExtrapolatorRight()
Gets the x-value right extrapolator.
|
CurveInterpolator |
getXInterpolator()
Gets the x-value interpolator.
|
CurveExtrapolator |
getYExtrapolatorLeft()
Gets the y-value left extrapolator.
|
CurveExtrapolator |
getYExtrapolatorRight()
Gets the y-value right extrapolator.
|
CurveInterpolator |
getYInterpolator()
Gets the y-value interpolator.
|
CurveExtrapolator |
getZExtrapolatorLeft()
Gets the z-value left extrapolator.
|
CurveExtrapolator |
getZExtrapolatorRight()
Gets the z-value right extrapolator.
|
CurveInterpolator |
getZInterpolator()
Gets the z-value interpolator.
|
int |
hashCode() |
static GridCubeInterpolator.Meta |
meta()
The meta-bean for
GridCubeInterpolator. |
GridCubeInterpolator.Meta |
metaBean() |
static GridCubeInterpolator |
of(CurveInterpolator xInterpolator,
CurveExtrapolator xExtrapolatorLeft,
CurveExtrapolator xExtrapolatorRight,
CurveInterpolator yInterpolator,
CurveExtrapolator yExtrapolatorLeft,
CurveExtrapolator yExtrapolatorRight,
CurveInterpolator zInterpolator,
CurveExtrapolator zExtrapolatorLeft,
CurveExtrapolator zExtrapolatorRight)
Obtains an instance from the specified interpolators and extrapolators.
|
static GridCubeInterpolator |
of(CurveInterpolator xInterpolator,
CurveExtrapolator xExtrapolator,
CurveInterpolator yInterpolator,
CurveExtrapolator yExtrapolator,
CurveInterpolator zInterpolator,
CurveExtrapolator zExtrapolator)
Obtains an instance from the specified interpolators and extrapolators.
|
static GridCubeInterpolator |
of(CurveInterpolator xInterpolator,
CurveInterpolator yInterpolator,
CurveInterpolator zInterpolator)
Obtains an instance from the specified interpolators, using flat extrapolation.
|
String |
toString() |
public static GridCubeInterpolator of(CurveInterpolator xInterpolator, CurveInterpolator yInterpolator, CurveInterpolator zInterpolator)
xInterpolator - the x-value interpolatoryInterpolator - the y-value interpolatorzInterpolator - the z-value interpolatorIllegalArgumentException - if the name is not knownpublic static GridCubeInterpolator of(CurveInterpolator xInterpolator, CurveExtrapolator xExtrapolator, CurveInterpolator yInterpolator, CurveExtrapolator yExtrapolator, CurveInterpolator zInterpolator, CurveExtrapolator zExtrapolator)
xInterpolator - the x-value interpolatorxExtrapolator - the x-value extrapolatoryInterpolator - the y-value interpolatoryExtrapolator - the y-value extrapolatorzInterpolator - the z-value interpolatorzExtrapolator - the z-value extrapolatorIllegalArgumentException - if the name is not knownpublic static GridCubeInterpolator of(CurveInterpolator xInterpolator, CurveExtrapolator xExtrapolatorLeft, CurveExtrapolator xExtrapolatorRight, CurveInterpolator yInterpolator, CurveExtrapolator yExtrapolatorLeft, CurveExtrapolator yExtrapolatorRight, CurveInterpolator zInterpolator, CurveExtrapolator zExtrapolatorLeft, CurveExtrapolator zExtrapolatorRight)
xInterpolator - the x-value interpolatorxExtrapolatorLeft - the x-value left extrapolatorxExtrapolatorRight - the x-value right extrapolatoryInterpolator - the y-value interpolatoryExtrapolatorLeft - the y-value left extrapolatoryExtrapolatorRight - the y-value right extrapolatorzInterpolator - the z-value interpolatorzExtrapolatorLeft - the z-value left extrapolatorzExtrapolatorRight - the z-value right extrapolatorIllegalArgumentException - if the name is not knownpublic BoundCubeInterpolator bind(DoubleArray xValues, DoubleArray yValues, DoubleArray zValues, DoubleArray wValues)
CubeInterpolatorThe bind process takes the definition of the interpolator and combines it with the x-y-z-w values. This allows implementations to optimize interpolation calculations.
bind in interface CubeInterpolatorxValues - the x-values of the cube, must be sorted from low to highyValues - the y-values of the cube, must be sorted from low to high within xzValues - the z-values of the cube, must be sorted from low to high within x,ywValues - the w-values of the cubepublic static GridCubeInterpolator.Meta meta()
GridCubeInterpolator.public GridCubeInterpolator.Meta metaBean()
metaBean in interface org.joda.beans.Beanpublic CurveInterpolator getXInterpolator()
public CurveExtrapolator getXExtrapolatorLeft()
public CurveExtrapolator getXExtrapolatorRight()
public CurveInterpolator getYInterpolator()
public CurveExtrapolator getYExtrapolatorLeft()
public CurveExtrapolator getYExtrapolatorRight()
public CurveInterpolator getZInterpolator()
public CurveExtrapolator getZExtrapolatorLeft()
public CurveExtrapolator getZExtrapolatorRight()
Copyright 2009-Present by OpenGamma Inc. and individual contributors
Apache v2 licensed
Additional documentation can be found at strata.opengamma.io.