Class JacobianCalibrationMatrix

  • All Implemented Interfaces:
    java.io.Serializable, Bean, ImmutableBean

    public final class JacobianCalibrationMatrix
    extends java.lang.Object
    implements ImmutableBean, java.io.Serializable
    Jacobian matrix information produced during curve calibration.

    The inverse Jacobian matrix produced using curve calibration is stored here. The information is used to calculate market quote sensitivity.

    See Also:
    Serialized Form
    • Method Detail

      • of

        public static JacobianCalibrationMatrix of​(java.util.List<CurveParameterSize> order,
                                                   DoubleMatrix jacobianMatrix)
        Obtains an instance from the curve order and Jacobian matrix.

        This creates an instance from the inverse Jacobian matrix produced during curve calibration. This is the derivative of the curve parameters with respect to the market quotes. The curve order defines the order of the curves during calibration, which can be used as a key to interpret the matrix.

        Parameters:
        order - the order of the curves during calibration
        jacobianMatrix - the inverse Jacobian matrix produced during curve calibration
        Returns:
        the info
      • getCurveCount

        public int getCurveCount()
        Gets the total number of curves.
        Returns:
        the number of curves
      • getTotalParameterCount

        public int getTotalParameterCount()
        Gets the total number of parameters.
        Returns:
        the number of curves
      • containsCurve

        public boolean containsCurve​(CurveName name)
        Checks if this info contains the specified curve.
        Parameters:
        name - the curve to find
        Returns:
        true if the curve is matched
      • splitValues

        public java.util.Map<CurveName,​DoubleArray> splitValues​(DoubleArray array)
        Splits the array according to the curve order.

        The input array must be of the same size as the total number of parameters. The result consists of a map of arrays, where each array is the appropriate section of the input array as defined by the curve order.

        Parameters:
        array - the array to split
        Returns:
        a map splitting the array by curve name
      • getOrder

        public com.google.common.collect.ImmutableList<CurveParameterSize> getOrder()
        Gets the curve order. This defines the order of the curves during calibration, which can be used as a key to interpret the Jacobian matrix.
        Returns:
        the value of the property, not null
      • getJacobianMatrix

        public DoubleMatrix getJacobianMatrix()
        Gets the inverse Jacobian matrix produced during curve calibration. This is the derivative of the curve parameters with respect to the market quotes.
        Returns:
        the value of the property, not null
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object