/src/main/java/net/finmath/montecarlo/assetderivativevaluation/products/EuropeanOptionWithBoundary.java
prob.mult ( -1.0 ) ;
final RandomVariable numeraireAtZero = model.getNumeraire(evaluationTime); final RandomVariable monteCarloProbabilitiesAtZero = model.getMonteCarloWeights(evaluationTime); values.mult(numeraireAtZero).div(monteCarloProbabilitiesAtZero); final RandomVariableFromDoubleArray prob = new RandomVariableFromDoubleArray(0.0,1.0); prob.mult(monteCarloWeights).div(monteCarloProbabilitiesAtZero); prob.sub(1.0); <extra_id_0> values.add(getBoundaryAdjustment(evaluationTime, maturity, model, values)); return values; } public RandomVariable getBoundaryAdjustment(final double fromTime, final double toTime, final AssetModelMonteCarloSimulationModel model, final RandomVariable continuationValues) throws CalculationException { final RandomVariableFromDoubleArray values = new RandomVariableFromDoubleArray(0,0); final int fromTimeIndex = model.getTimeIndex(fromTime);