/src/main/java/net/finmath/montecarlo/interestrate/products/CMSOption.java
value = valueFloatLeg.mult( numeraireAtZero).div( monteCarloProbabilitiesAtZero) ;
value = value.mult ( numeraireAtZero ) .div ( monteCarloProbabilitiesAtZero ) ;
} final RandomVariable numeraire = model.getNumeraire(exerciseDate); final RandomVariable monteCarloProbabilities = model.getMonteCarloWeights(model.getTimeIndex(exerciseDate)); value = value.div(numeraire).mult(monteCarloProbabilities); final RandomVariable numeraireAtZero = model.getNumeraire(evaluationTime); final RandomVariable monteCarloProbabilitiesAtZero = model.getMonteCarloWeights(evaluationTime); <extra_id_0> return value; } public double getValue(final ForwardCurve forwardCurve, final double swaprateVolatility) { final double[] swapTenor = new double[fixingDates.length+1]; System.arraycopy(fixingDates, 0, swapTenor, 0, fixingDates.length); swapTenor[swapTenor.length-1] = paymentDates[paymentDates.length-1];