/src/main/java/net/finmath/montecarlo/assetderivativevaluation/products/EuropeanOptionDeltaLikelihood.java
RandomVariable values = underlyingAtToday.sub( strike).floor( 0.0).mult( likelihoodRatio) ;
RandomVariable values = underlyingAtMaturity.sub ( strike ) .floor ( 0.0 ) .mult ( likelihoodRatio ) ;
likelihoodRatio = logPhi2.sub(logPhi1).div(h); } else { final RandomVariable x = underlyingAtMaturity.div(underlyingAtToday).log().sub(r.mult(T).sub(sigma.squared().mult(0.5*T))).div(sigma).div(Math.sqrt(T)); likelihoodRatio = x.div(underlyingAtToday).div(sigma).div(Math.sqrt(T)); } <extra_id_0> final RandomVariable numeraireAtMaturity = model.getNumeraire(maturity); final RandomVariable monteCarloWeights = model.getMonteCarloWeights(maturity); values = values.div(numeraireAtMaturity).mult(monteCarloWeights); final RandomVariable numeraireAtEvalTime = model.getNumeraire(evaluationTime); final RandomVariable monteCarloWeightsAtEvalTime = model.getMonteCarloWeights(evaluationTime); values = values.mult(numeraireAtEvalTime).div(monteCarloWeightsAtEvalTime);