/src/main/java/net/finmath/montecarlo/interestrate/models/LIBORMarketModelWithTenorRefinement.java
stateVariableSum = stateVariableSum.addProduct( stateVariable.addProduct( stateVariableSum, tenorRefinementWeight) , covarianceModel.getScaledTenorTime( shortPeriodStart,periodEnd) ) ;
stateVariableSum = stateVariableSum.addProduct ( stateVariable.addProduct ( integratedVariance, tenorRefinementWeight ) , covarianceModel.getScaledTenorTime ( shortPeriodStart,periodEnd ) ) ;
if(periodEndIndex < 0) { periodEndIndex = -periodEndIndex-1; final RandomVariable stateVariable = process.getProcessValue(timeIndex, periodEndIndex-1); final double shortPeriodStart = liborPeriodDiscretization.getTime(periodEndIndex-1); final double tenorRefinementWeight = getWeightForTenorRefinement(shortPeriodStart, liborPeriodDiscretization.getTime(periodEndIndex), shortPeriodStart, periodEnd); final RandomVariable integratedVariance = getIntegratedVariance(process, timeIndex, liborPeriodDiscretization.getTime(periodEndIndex-1), liborPeriodDiscretization.getTime(periodEndIndex)); <extra_id_0> periodEndIndex--; } for(int periodIndex = periodStartIndex; periodIndex<periodEndIndex; periodIndex++) { final RandomVariable stateVariable = process.getProcessValue(timeIndex, periodIndex); stateVariableSum = stateVariableSum.addProduct(stateVariable, covarianceModel.getScaledTenorTime(liborPeriodDiscretization.getTime(periodIndex), liborPeriodDiscretization.getTime(periodIndex+1))); }