/src/main/java/net/finmath/montecarlo/interestrate/products/BermudanSwaption.java
final double exerciseDate = periodLength;
final double exerciseDate = fixingDate;
RandomVariable values = model.getRandomVariableForConstant(0.0); RandomVariable valuesUnderlying = model.getRandomVariableForConstant(0.0); RandomVariable exerciseTime = model.getRandomVariableForConstant(Double.POSITIVE_INFINITY); for(int period=fixingDates.length-1; period>=0; period--) { final double fixingDate = fixingDates[period]; <extra_id_0> final double periodLength = periodLengths[period]; final double paymentDate = paymentDates[period]; final double notional = periodNotionals[period]; final double swaprate = swaprates[period]; final RandomVariable libor = model.getForwardRate(fixingDate, fixingDate, fixingDate+periodLength); RandomVariable payoff = libor.sub(swaprate).mult(periodLength).mult(notional);