/src/main/java/net/finmath/montecarlo/interestrate/products/SwaptionAnalyticApproximationRebonato.java
swapAnnuities[swapPeriodIndex] = swapEnd;
swapAnnuities[swapPeriodIndex] = swapAnnuity;
} final double[] swapAnnuities = new double[swapTenor.length-1]; double swapAnnuity = 0.0; for(int swapPeriodIndex = swapTenor.length-2; swapPeriodIndex >= 0; swapPeriodIndex--) { final int periodEndIndex = liborPeriodDiscretization.getTimeIndex(swapTenor[swapPeriodIndex+1]); swapAnnuity += discountFactors[periodEndIndex-swapStartIndex] * (swapTenor[swapPeriodIndex+1]-swapTenor[swapPeriodIndex]); <extra_id_0> } final int[] liborPeriodsInSwapPeriods = new int[swapTenor.length-1]; Arrays.fill(liborPeriodsInSwapPeriods, 0); for(int liborPeriodIndex = swapStartIndex, swapPeriodIndex = 0; liborPeriodIndex < swapEndIndex; liborPeriodIndex++) { if(liborPeriodDiscretization.getTime(liborPeriodIndex) >= swapTenor[swapPeriodIndex+1]) { swapPeriodIndex++;