Struct template error_estimator
boost::numeric::quadrature::error_estimator — Error estimation.
Synopsis
template<typename Domain, typename Image>
struct error_estimator {
// types
typedef unspecified image_type;
typedef unspecified domain_type;
typedef unspecified scalar_image_type;
typedef unspecified flag_type;
// public member functions
template<typename Weight>
void center_point(Weight, typename call_traits< image_type >::param_type) ;
template<typename Weight>
void point(Weight, typename call_traits< image_type >::param_type,
typename call_traits< image_type >::param_type) ;
template<typename ImagePoints, typename Weight, typename WeightRange>
void operator()(typename call_traits< image_type >::param_type,
typename call_traits< image_type >::param_type,
typename call_traits< image_type >::param_type,
const ImagePoints &, const ImagePoints &, Weight,
const WeightRange &, Domain) ;
const image_type & absolute_error() const;
const image_type & integral_abs() const;
call_traits< flag_type >::const_reference residual_roundoff() const;
call_traits< flag_type >::const_reference roundoff() const;
// public static functions
static scalar_image_type minimum_relative_error() ;
image_type abserr;
image_type resabs;
image_type resasc;
flag_type m_residual_roundoff;
flag_type m_roundoff;
};
Description
Error estimation is for the integral I(x) of f(x), is based on the integral of abs(f(x)) and on the integral of I(x)-f(x). Adapted from quadpack.
Note that the calls to center_point and to point could have been computed in the call to operator(), but that was found to give different rounnding behaviour in the coefficients.
error_estimator public member functions
-
template<typename Weight>
void center_point(Weight center_weight,
typename call_traits< image_type >::param_type center_value) ;
| Parameters: |
center_value |
value of integrand at centre of interval |
center_weight |
weight at centre of interval |
|
-
template<typename Weight>
void point(Weight weight,
typename call_traits< image_type >::param_type lower,
typename call_traits< image_type >::param_type upper) ;
| Parameters: |
lower |
value of integrand at lower offset of interval |
upper |
value of integrand at upper offset of interval |
weight |
weight at centre of interval |
|
-
template<typename ImagePoints, typename Weight, typename WeightRange>
void operator()(typename call_traits< image_type >::param_type resk,
typename call_traits< image_type >::param_type resg,
typename call_traits< image_type >::param_type center_value,
const ImagePoints & lower_values,
const ImagePoints & upper_values, Weight center_weight,
const WeightRange & weights, Domain half_length) ;
| Parameters: |
center_value |
|
center_weight |
|
half_length |
|
lower_values |
|
resg |
|
resk |
|
upper_values |
|
weights |
|
|
const image_type & absolute_error() const;
const image_type & integral_abs() const;
call_traits< flag_type >::const_reference residual_roundoff() const;
call_traits< flag_type >::const_reference roundoff() const;
error_estimator public static functions
static scalar_image_type minimum_relative_error() ;