public ConditionalExpectationEstimator getConditionalExpectationEstimator(double fixingDate, LIBORModelMonteCarloSimulationModel model) throws CalculationException {
		RandomVariable[] regressionBasisFunctions			= regressionBasisFunctionsProvider != null ? regressionBasisFunctionsProvider.getBasisFunctions(fixingDate, model) : getBasisFunctions(fixingDate, model);
		MonteCarloConditionalExpectationRegression condExpEstimator = new MonteCarloConditionalExpectationRegression(regressionBasisFunctions);

		return condExpEstimator;
	}
public ConditionalExpectationEstimator getConditionalExpectationEstimator ( double fixingDate , LIBORModelMonteCarloSimulationModel model ) throws CalculationException { RandomVariable [ ] regressionBasisFunctions = regressionBasisFunctionsProvider != null ? regressionBasisFunctionsProvider . getBasisFunctions ( fixingDate , model ) : getBasisFunctions ( fixingDate , model ) ; MonteCarloConditionalExpectationRegression condExpEstimator = new MonteCarloConditionalExpectationRegression ( regressionBasisFunctions ) ; return condExpEstimator ; }
Return the conditional expectation estimator suitable for this product.

@param fixingDate The condition time.
@param model The model
@return The conditional expectation estimator suitable for this product
@throws net.finmath.exception.CalculationException Thrown if the valuation fails, specific cause may be available via the <code>cause()</code> method.