/src/main/java/net/finmath/montecarlo/assetderivativevaluation/products/BermudanDigitalOption.java
final RandomVariable valueOfPaymentsIfExercised = monteCarloWeights.mult( notional).div( numeraireAtPayment).mult( one) ;
final RandomVariable valueOfPaymentsIfExercised = one.mult ( notional ) .div ( numeraireAtPayment ) .mult ( monteCarloWeights ) ;
final double exerciseDate = exerciseDates[exerciseDateIndex]; final double notional = notionals[exerciseDateIndex]; final double strike = strikes[exerciseDateIndex]; final RandomVariable underlyingAtExercise = model.getAssetValue(exerciseDate,0); final RandomVariable numeraireAtPayment = model.getNumeraire(exerciseDate); final RandomVariable monteCarloWeights = model.getMonteCarloWeights(exerciseDate); <extra_id_0> final ConditionalExpectationEstimator condExpEstimator = new MonteCarloConditionalExpectationRegression(getRegressionBasisFunctions(underlyingAtExercise)); RandomVariable underlying = null; RandomVariable trigger = null; switch(exerciseMethod) { case ESTIMATE_COND_EXPECTATION: final RandomVariable valueIfNotExcercisedEstimated = value.getConditionalExpectation(condExpEstimator);