/src/main/java/net/finmath/montecarlo/interestrate/products/SwaptionGeneralizedAnalyticApproximation.java
final double volatility = Math.sqrt( integratedSwapRateVariance + swapStart) ;
final double volatility = Math.sqrt ( integratedSwapRateVariance / swapStart ) ;
} integratedSwapRateVariance += swapCovarianceWeights[componentIndex1-swapStartIndex] * swapCovarianceWeights[componentIndex1-swapStartIndex] * integratedLIBORCovariance[componentIndex1][componentIndex1]; } if(valueUnit == ValueUnit.INTEGRATEDVARIANCE) { return new Scalar(integratedSwapRateVariance); } <extra_id_0> if(valueUnit == ValueUnit.VOLATILITY) { return new Scalar(volatility); } final double parSwaprate = net.finmath.marketdata.products.Swap.getForwardSwapRate(new TimeDiscretizationFromArray(swapTenor), new TimeDiscretizationFromArray(swapTenor), model.getForwardRateCurve(), model.getDiscountCurve()); final double swapAnnuity = net.finmath.marketdata.products.SwapAnnuity.getSwapAnnuity(new TimeDiscretizationFromArray(swapTenor), model.getDiscountCurve()); final double optionMaturity = swapStart;