class DeltaCovarianceMatrixStandardDeviationCalculator extends Function1D<Map<Integer, ParametricVaRDataBundle>, Double> {

  @Override
  public Double evaluate(final Map<Integer, ParametricVaRDataBundle> data) {
    Validate.notNull(data, "data");
    final ParametricVaRDataBundle firstOrderData = data.get(1);
    Validate.notNull(firstOrderData, "first order data");
    final Matrix<?> delta = firstOrderData.getSensitivities();
    final int s1 = delta.getNumberOfElements();
    Validate.isTrue(s1 > 0, "Value delta vector contained no data");
    final DoubleMatrix2D covariance = firstOrderData.getCovarianceMatrix();
    return Math.sqrt(_algebra.getInnerProduct(delta, _algebra.multiply(covariance, delta)));
  }

  public  DeltaCovarianceMatrixStandardDeviationCalculator(final MatrixAlgebra algebra);

}