/src/main/java/net/finmath/montecarlo/interestrate/models/LIBORMarketModelStandard.java
final AbstractTermStructureMonteCarloProduct swaption = new SwaptionSimple( swaprate, SwaptionSimple.ValueUnit.VALUE) ;
final AbstractTermStructureMonteCarloProduct swaption = new SwaptionSimple ( swaprate, swapTenorTimes, SwaptionSimple.ValueUnit.VALUE ) ;
if(isUseAnalyticApproximation) { final AbstractTermStructureMonteCarloProduct swaption = new SwaptionAnalyticApproximation(swaprate, swapTenorTimes, SwaptionAnalyticApproximation.ValueUnit.VOLATILITYLOGNORMAL); final double impliedVolatility = swaptionMarketData.getVolatility(exerciseDate, swapLength, swaptionMarketData.getSwapPeriodLength(), swaprate); calibrationProducts.add(new CalibrationProduct(swaption, impliedVolatility, 1.0)); } else { <extra_id_0> final double forwardSwaprate = Swap.getForwardSwapRate(swapTenor, swapTenor, forwardCurve); final double swapAnnuity = SwapAnnuity.getSwapAnnuity(swapTenor, forwardCurve); final double impliedVolatility = swaptionMarketData.getVolatility(exerciseDate, swapLength, swaptionMarketData.getSwapPeriodLength(), swaprate); final double targetValue = AnalyticFormulas.blackModelSwaptionValue(forwardSwaprate, impliedVolatility, exerciseDate, swaprate, swapAnnuity); calibrationProducts.add(new CalibrationProduct(swaption, targetValue, 1.0)); }