Package org.drip.function.definition
Class RdToR1
java.lang.Object
org.drip.function.definition.RdToR1
- Direct Known Subclasses:
AffineBoundMultivariate
,AffineMultivariate
,CovarianceEllipsoidMultivariate
,LagrangianMultivariate
,MultivariateRandom
,ObjectiveFunction
,RdDecisionFunction
,RiskObjectiveUtilityMultivariate
public abstract class RdToR1
extends java.lang.Object
RdToR1 provides the evaluation of the Rd To R1 objective function and its
derivatives for a specified set of Rd variates. Default implementation of the derivatives are
for non-analytical lack box objective functions.
- Module = Computational Core Module
- Library = Numerical Analysis Library
- Project = Rd To Rd Function Analysis
- Package = Function Implementation Ancillary Support Objects
- Author:
- Lakshmi Krishnamurthy
-
Method Summary
Modifier and Type Method Description double
conditionNumber(double[] variateArray)
Retrieve the Default Condition Number for the Function at the Domain Value - this uses L2 Metricdouble
conditionNumberL2(double[] variateArray)
Retrieve the L2 Condition Number for the Function at the Domain Valuedouble
conditionNumberLInfinity(double[] variateArray)
Retrieve the LInfinity Condition Number for the Function at the Domain Valuedouble
conditionNumberLp(double[] variateArray, int p)
Retrieve the Lp Condition Number for the Function at the Domain Valuedouble
derivative(double[] adblVariate, int iVariateIndex, int iOrder)
Calculate the derivative as a doubleDifferential
differential(double[] adblVariate, int iVariateIndex, int iOrder)
Calculate the Differentialabstract int
dimension()
Retrieve the Dimension of the Input Variateabstract double
evaluate(double[] adblVariate)
Evaluate for the given Input VariatesUnitVector
gradient(double[] adblVariate)
Construct an Instance of the Unit Gradient Vector at the given Input Variatesdouble
gradientModulus(double[] adblVariate)
Compute the Modulus of the Gradient at the Specified Variate locationRdToR1
gradientModulusFunction()
Generate the Gradient Modulus Functiondouble[][]
hessian(double[] adblVariate)
Evaluate The Hessian for the given Input Variatesdouble
integrate(double[] adblLeftEdge, double[] adblRightEdge)
Integrate over the given Input Range Using Uniform Monte-Carlodouble[]
jacobian(double[] adblVariate)
Evaluate the Jacobian for the given Input VariatesVariateOutputPair
maxima(double[] adblVariateLeft, double[] adblVariateRight)
Compute the Maximum VOP within the Variate Array Range Using Uniform Monte-CarloVariateOutputPair
minima(double[] adblVariateLeft, double[] adblVariateRight)
Compute the Minimum VOP within the Variate Array Range Using Uniform Monte-Carlostatic boolean
ValidateInput(double[] adblVariate)
Validate the Input Double ArrayMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Method Details
-
ValidateInput
public static final boolean ValidateInput(double[] adblVariate)Validate the Input Double Array- Parameters:
adblVariate
- The Input Double Array- Returns:
- The Input Double Array consists of valid Values
-
dimension
public abstract int dimension()Retrieve the Dimension of the Input Variate- Returns:
- The Dimension of the Input Variate
-
evaluate
public abstract double evaluate(double[] adblVariate) throws java.lang.ExceptionEvaluate for the given Input Variates- Parameters:
adblVariate
- Array of Input Variates- Returns:
- The Calculated Value
- Throws:
java.lang.Exception
- Thrown if the Evaluation cannot be done
-
differential
Calculate the Differential- Parameters:
adblVariate
- Variate Array at which the derivative is to be calculatediVariateIndex
- Index of the Variate whose Derivative is to be computediOrder
- Order of the derivative to be computed- Returns:
- The Derivative
-
derivative
public double derivative(double[] adblVariate, int iVariateIndex, int iOrder) throws java.lang.ExceptionCalculate the derivative as a double- Parameters:
adblVariate
- Variate Array at which the derivative is to be calculatediVariateIndex
- Index of the Variate whose Derivative is to be computediOrder
- Order of the derivative to be computed- Returns:
- The Derivative
- Throws:
java.lang.Exception
- Thrown if the Derivative cannot be calculated
-
jacobian
public double[] jacobian(double[] adblVariate)Evaluate the Jacobian for the given Input Variates- Parameters:
adblVariate
- Array of Input Variates- Returns:
- The Jacobian Array
-
gradient
Construct an Instance of the Unit Gradient Vector at the given Input Variates- Parameters:
adblVariate
- Array of Input Variates- Returns:
- Instance of the Unit Gradient Vector Array
-
hessian
public double[][] hessian(double[] adblVariate)Evaluate The Hessian for the given Input Variates- Parameters:
adblVariate
- Array of Input Variates- Returns:
- The Hessian Matrix
-
integrate
public double integrate(double[] adblLeftEdge, double[] adblRightEdge) throws java.lang.ExceptionIntegrate over the given Input Range Using Uniform Monte-Carlo- Parameters:
adblLeftEdge
- Array of Input Left EdgeadblRightEdge
- Array of Input Right Edge- Returns:
- The Result of the Integration over the specified Range
- Throws:
java.lang.Exception
- Thrown if the Integration cannot be done
-
maxima
Compute the Maximum VOP within the Variate Array Range Using Uniform Monte-Carlo- Parameters:
adblVariateLeft
- The Range Left End ArrayadblVariateRight
- The Range Right End Array- Returns:
- The Maximum VOP
-
minima
Compute the Minimum VOP within the Variate Array Range Using Uniform Monte-Carlo- Parameters:
adblVariateLeft
- The Range Left End ArrayadblVariateRight
- The Range Right End Array- Returns:
- The Minimum VOP
-
gradientModulus
public double gradientModulus(double[] adblVariate) throws java.lang.ExceptionCompute the Modulus of the Gradient at the Specified Variate location- Parameters:
adblVariate
- The Variate Array location- Returns:
- The Modulus of the Gradient at the Specified Variate location
- Throws:
java.lang.Exception
- Thrown if the Inputs are Invalid
-
gradientModulusFunction
Generate the Gradient Modulus Function- Returns:
- The Gradient Modulus Function
-
conditionNumberL2
public double conditionNumberL2(double[] variateArray) throws java.lang.ExceptionRetrieve the L2 Condition Number for the Function at the Domain Value- Parameters:
variateArray
- Domain Variate Array- Returns:
- Condition Number for the Function at the Domain Value
- Throws:
java.lang.Exception
- Thrown if the Condition Number for the Function at the Domain Value cannot be calculated
-
conditionNumberLp
public double conditionNumberLp(double[] variateArray, int p) throws java.lang.ExceptionRetrieve the Lp Condition Number for the Function at the Domain Value- Parameters:
variateArray
- Domain Variate Arrayp
- p-Norm- Returns:
- Condition Number for the Function at the Domain Value
- Throws:
java.lang.Exception
- Thrown if the Condition Number for the Function at the Domain Value cannot be calculated
-
conditionNumberLInfinity
public double conditionNumberLInfinity(double[] variateArray) throws java.lang.ExceptionRetrieve the LInfinity Condition Number for the Function at the Domain Value- Parameters:
variateArray
- Domain Variate Array- Returns:
- Condition Number for the Function at the Domain Value
- Throws:
java.lang.Exception
- Thrown if the Condition Number for the Function at the Domain Value cannot be calculated
-
conditionNumber
public double conditionNumber(double[] variateArray) throws java.lang.ExceptionRetrieve the Default Condition Number for the Function at the Domain Value - this uses L2 Metric- Parameters:
variateArray
- Domain Variate Array- Returns:
- Condition Number for the Function at the Domain Value
- Throws:
java.lang.Exception
- Thrown if the Condition Number for the Function at the Domain Value cannot be calculated
-