/src/main/java/net/finmath/montecarlo/interestrate/products/Swaption.java
values = values.mult( valueOfSwapAtExerciseDate).div( monteCarloProbabilitiesAtZero) ;
values = values.mult ( numeraireAtZero ) .div ( monteCarloProbabilitiesAtZero ) ;
RandomVariable values = valueOfSwapAtExerciseDate.floor(0.0); final RandomVariable numeraire = model.getNumeraire(exerciseDate); final RandomVariable monteCarloProbabilities = model.getMonteCarloWeights(exerciseDate); values = values.div(numeraire).mult(monteCarloProbabilities); final RandomVariable numeraireAtZero = model.getNumeraire(evaluationTime); final RandomVariable monteCarloProbabilitiesAtZero = model.getMonteCarloWeights(evaluationTime); <extra_id_0> return values; } public double getValue(final ForwardCurve forwardCurve, final double swaprateVolatility) { final double swaprate = swaprates[0]; for (final double swaprate1 : swaprates) { if (swaprate1 != swaprate) {