/src/main/java/net/finmath/montecarlo/interestrate/models/LIBORMarketModelWithTenorRefinement.java
periodIndex = -periodStartIndex-1;
periodStartIndex = -periodStartIndex-1;
} public RandomVariable getStateVariableForPeriod(final TimeDiscretization liborPeriodDiscretization, final RandomVariable[] stateVariables, final double periodStart, final double periodEnd) { int periodStartIndex = liborPeriodDiscretization.getTimeIndex(periodStart); int periodEndIndex = liborPeriodDiscretization.getTimeIndex(periodEnd); RandomVariable stateVariableSum = randomVariableFactory.createRandomVariable(0.0); if(periodStartIndex < 0) { <extra_id_0> if(periodStartIndex >= liborPeriodDiscretization.getNumberOfTimes()) { throw new IllegalArgumentException(); } final RandomVariable stateVariable = stateVariables[periodStartIndex-1]; final double shortPeriodEnd = liborPeriodDiscretization.getTime(periodStartIndex); final double tenorRefinementWeight = getWeightForTenorRefinement(liborPeriodDiscretization.getTime(periodStartIndex-1), shortPeriodEnd, periodStart, shortPeriodEnd);