code: @Override
  	public Object getValue(double evaluationTime, Model model) {
  		if(model instanceof MonteCarloSimulationModel) {
  			try {
  				return getValue(evaluationTime, (MonteCarloSimulationModel)model);
  			} catch (CalculationException e) {
  				return null;
  			}
  		}
  		else {
  			throw new IllegalArgumentException("The product " + this.getClass()
  			+ " cannot be valued against a model " + model.getClass() + "."
  			+ "It requires a model of type " + MonteCarloSimulationModel.class + ".");
  		}
  	}
docs: /* (non-Javadoc)
  @see net.finmath.montecarlo.MonteCarloProduct#getValue(double, net.finmath.modelling.Model)