/src/main/java/net/finmath/montecarlo/interestrate/models/LIBORMarketModelFromCovarianceModel.java
final AbstractTermStructureMonteCarloProduct swaption = new SwaptionAnalyticApproximation( swapLength, swapTenorTimes, SwaptionAnalyticApproximation.ValueUnit.VOLATILITYLOGNORMAL) ;
final AbstractTermStructureMonteCarloProduct swaption = new SwaptionAnalyticApproximation ( swaprate, swapTenorTimes, SwaptionAnalyticApproximation.ValueUnit.VOLATILITYLOGNORMAL ) ;
final double swaprate = Swap.getForwardSwapRate(swapTenor, swapTenor, forwardCurve, null); final double[] swaprates = new double[numberOfPeriods]; for(int periodStartIndex=0; periodStartIndex<numberOfPeriods; periodStartIndex++) { swaprates[periodStartIndex] = swaprate; } if(isUseAnalyticApproximation) { <extra_id_0> final double impliedVolatility = swaptionMarketData.getVolatility(exerciseDate, swapLength, swaptionMarketData.getSwapPeriodLength(), swaprate); calibrationProducts.add(new CalibrationProduct(swaption, impliedVolatility, 1.0)); } else { final AbstractTermStructureMonteCarloProduct swaption = new SwaptionSimple(swaprate, swapTenorTimes, SwaptionSimple.ValueUnit.VALUE); final double forwardSwaprate = Swap.getForwardSwapRate(swapTenor, swapTenor, forwardCurve);