/src/main/java/net/finmath/montecarlo/assetderivativevaluation/models/VarianceGammaModel.java
} riskFreeRateAtTimeStep = riskFreeRate;
riskFreeRateAtTimeStep = riskFreeRate; }
if(discountCurveForForwardRate != null) { final double time = process.getTime(timeIndex); final double timeNext = process.getTime(timeIndex+1); riskFreeRateAtTimeStep = getRandomVariableForConstant(Math.log(discountCurveForForwardRate.getDiscountFactor(time) / discountCurveForForwardRate.getDiscountFactor(timeNext)) / (timeNext-time)); } else { <extra_id_0> return new RandomVariable[] { riskFreeRateAtTimeStep.add(theta.mult(nu).add(sigma.squared().mult(nu).mult(0.5)).mult(-1).add(1.0).log().div(nu)) }; } @Override public RandomVariable[] getFactorLoading(final MonteCarloProcess process, final int timeIndex, final int componentIndex, final RandomVariable[] realizationAtTimeIndex) { final RandomVariable[] factors = new RandomVariable[1];