Class inte_qaws_gsl (o2scl)¶
-
template<class func_t = funct>
class inte_qaws_gsl : public o2scl::inte_cheb_gsl<funct>¶ Adaptive integration with with algebraic-logarithmic singularities at the end-points (GSL)
This class computes the weighted integral
or removes the respective factor or from the weight.The adaptive refinement algorithm described for inte_qag_gsl is used. When a subinterval contains one of the endpoints, a special 25-point modified Clenshaw-Curtis rule is used to control the singularities. For subintervals which do not include the endpoints, a Gauss-Kronrod integration rule is used.
See GSL-based integration details in the User’s guide for general information about the GSL integration classes.
Data from \c gsl_integration_qaws_table
-
double alpha¶
-
double beta¶
-
int mu¶
-
int nu¶
-
double ri[25]¶
-
double rj[25]¶
-
double rg[25]¶
-
double rh[25]¶
-
bool fn_qaws_R¶
True if algebraic-logarithmic singularity is present at the right endpoint in the definition
f_trans
.
-
bool fn_qaws_L¶
True if algebraic-logarithmic singularity is present at the left endpoint in the definition
f_trans
.
-
double left_endpoint¶
Left endpoint in definition of
f_trans
.
-
double right_endpoint¶
Right endpoint in definition of
f_trans
.
-
inline void initialise_qaws_table()¶
Set the array values
ri
,rj
,rg
,rh
from the current valuesalpha
andbeta
.This is the function from the GSL source code
integration/qmomo.c
that initializesgsl_integration_qaws_table
.
-
inline void qc25s(func_t &func, double a, double b, double a1, double b1, double &result, double &abserr, int &err_reliable)¶
Clenshaw-Curtis 25-point integration and error estimator for functions with an algebraic-logarithmic singularity at the endpoint(s).
-
inline void compute_result(double *r, double *cheb12, double *cheb24, double &result12, double &result24)¶
Compute the 13-point and 25-point approximations from the Chebyshev moments and coefficients.
-
inline inte_qaws_gsl()¶
Initialize the adptive workspace as with the constructor inte_qag_gsl::inte_qag_gsl.
The default paramters
of the weight function are all zero.
-
inline ~inte_qaws_gsl()¶
-
inline int set_weight(double u_alpha, double u_beta, int u_mu, int u_nu)¶
Sets the exponents of singularites of the weight function.
The parameters determine the exponents of the weight function
-
inline void get_weight(double &u_alpha, double &u_beta, int &u_mu, int &u_nu)¶
Returns the current values (via reference) of the weight-function’s parameters.
-
inline virtual int integ_err(func_t &func, double a, double b, double &result, double &abserr)¶
Integrate the function
func
on the interval (a
,b
) returning theresult
and error estimateabserr
.
-
inline virtual const char *type()¶
Return string denoting type (“inte_qaws_gsl”)
-
double alpha¶