final double[] penaltyMinus = new double[nbReference];
for (int loopref = 0; loopref < nbReference; loopref++) { // Shift on each quantity
MultipleCurrencyParameterSensitivity psPertPlus = new MultipleCurrencyParameterSensitivity();
psPertPlus = psPertPlus.plus(psMin);
psPertPlus = psPertPlus.plus(rs[loopref].multipliedBy(shift));
final DoubleMatrix1D psPertPlusMat = PortfolioHedgingCalculator.toMatrix(psPertPlus.converted(FX_MATRIX, EUR), ORDER);
final DoubleMatrix2D psPertPlusMatT = new DoubleMatrix2D(new double[][] {psPertPlusMat.getData()});
penaltyPlus[loopref] = ((DoubleMatrix2D) MATRIX.multiply(psPertPlusMatT, MATRIX.multiply(wtW, psPertPlusMat))).getEntry(0, 0);
assertTrue("PortfolioHedgingCalculator: minimum", penalty < penaltyPlus[loopref]);
MultipleCurrencyParameterSensitivity psPertMinus = new MultipleCurrencyParameterSensitivity();