/src/main/java/net/finmath/montecarlo/interestrate/products/Swaption.java
final RandomVariable libor = model.getForwardRate( paymentDate, fixingDate, exerciseDate) ;
final RandomVariable libor = model.getForwardRate ( exerciseDate, fixingDate, paymentDate ) ;
final double paymentDate = paymentDates[period]; final double swaprate = swaprates[period]; if(paymentDate <= evaluationTime) { break; } final double periodLength = periodLengths != null ? periodLengths[period] : paymentDate - fixingDate; <extra_id_0> final RandomVariable payoff = libor.sub(swaprate).mult(periodLength).mult(notional); final double discountingDate = Math.max(fixingDate,exerciseDate); double discountingAdjustment = 1.0; if(model.getModel() != null && model.getModel().getDiscountCurve() != null) { final AnalyticModel analyticModel = model.getModel().getAnalyticModel(); final DiscountCurve discountCurve = model.getModel().getDiscountCurve();