Package org.drip.function.definition
Class RdToR1
java.lang.Object
org.drip.function.definition.RdToR1
- Direct Known Subclasses:
AffineBoundMultivariate,AffineMultivariate,CovarianceEllipsoidMultivariate,LagrangianMultivariate,LinearExpression,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 doubleconditionNumber(double[] variateArray)Retrieve the Default Condition Number for the Function at the Domain Value - this uses L2 MetricdoubleconditionNumberL2(double[] variateArray)Retrieve the L2 Condition Number for the Function at the Domain ValuedoubleconditionNumberLInfinity(double[] variateArray)Retrieve the LInfinity Condition Number for the Function at the Domain ValuedoubleconditionNumberLp(double[] variateArray, int p)Retrieve the Lp Condition Number for the Function at the Domain Valuedoublederivative(double[] adblVariate, int iVariateIndex, int iOrder)Calculate the derivative as a doubleDifferentialdifferential(double[] adblVariate, int iVariateIndex, int iOrder)Calculate the Differentialabstract intdimension()Retrieve the Dimension of the Input Variateabstract doubleevaluate(double[] adblVariate)Evaluate for the given Input VariatesUnitVectorgradient(double[] adblVariate)Construct an Instance of the Unit Gradient Vector at the given Input VariatesdoublegradientModulus(double[] adblVariate)Compute the Modulus of the Gradient at the Specified Variate locationRdToR1gradientModulusFunction()Generate the Gradient Modulus Functiondouble[][]hessian(double[] adblVariate)Evaluate The Hessian for the given Input Variatesdoubleintegrate(double[] adblLeftEdge, double[] adblRightEdge)Integrate over the given Input Range Using Uniform Monte-Carlodouble[]jacobian(double[] adblVariate)Evaluate the Jacobian for the given Input VariatesVariateOutputPairmaxima(double[] adblVariateLeft, double[] adblVariateRight)Compute the Maximum VOP within the Variate Array Range Using Uniform Monte-CarloVariateOutputPairminima(double[] adblVariateLeft, double[] adblVariateRight)Compute the Minimum VOP within the Variate Array Range Using Uniform Monte-Carlostatic booleanValidateInput(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
-