PARTONS/NumA++
|
Numerical Analysis C++ routines
|
Classes | |
struct | extrapolation_table |
struct | gsl_integration_workspace |
Public Types | |
enum | { GSL_SUCCESS = 0 , GSL_FAILURE = -1 , GSL_CONTINUE = -2 , GSL_EDOM = 1 , GSL_ERANGE = 2 , GSL_EFAULT = 3 , GSL_EINVAL = 4 , GSL_EFAILED = 5 , GSL_EFACTOR = 6 , GSL_ESANITY = 7 , GSL_ENOMEM = 8 , GSL_EBADFUNC = 9 , GSL_ERUNAWAY = 10 , GSL_EMAXITER = 11 , GSL_EZERODIV = 12 , GSL_EBADTOL = 13 , GSL_ETOL = 14 , GSL_EUNDRFLW = 15 , GSL_EOVRFLW = 16 , GSL_ELOSS = 17 , GSL_EROUND = 18 , GSL_EBADLEN = 19 , GSL_ENOTSQR = 20 , GSL_ESING = 21 , GSL_EDIVERGE = 22 , GSL_EUNSUP = 23 , GSL_EUNIMPL = 24 , GSL_ECACHE = 25 , GSL_ETABLE = 26 , GSL_ENOPROG = 27 , GSL_ENOPROGJ = 28 , GSL_ETOLF = 29 , GSL_ETOLX = 30 , GSL_ETOLG = 31 , GSL_EOF = 32 } |
Public Member Functions | |
void | gsl_error (const char *reason, const char *file, int line, int gsl_errno) |
GaussKronrodAdaptive () | |
virtual | ~GaussKronrodAdaptive () |
virtual void | configure () |
double | integrate (FunctionType1D *pFunction, double a, double b, std::vector< double > ¶meters) |
Integration routine. More... | |
int | compute (FunctionType1D *pFunction, const double a, const double b, std::vector< double > ¶meters, double &result, gsl_integration_workspace *workspace, const double limit) |
gsl_integration_workspace * | gsl_integration_workspace_alloc (const size_t n) |
void | gsl_integration_workspace_free (gsl_integration_workspace *w) |
void | initialise (gsl_integration_workspace *workspace, double a, double b) |
void | retrieve (const gsl_integration_workspace *workspace, double *a, double *b, double *r, double *e) |
void | update (gsl_integration_workspace *workspace, double a1, double b1, double area1, double error1, double a2, double b2, double area2, double error2) |
void | qpsrt (gsl_integration_workspace *workspace) |
int | increase_nrmax (gsl_integration_workspace *workspace) |
void | reset_nrmax (gsl_integration_workspace *workspace) |
double | sum_results (const gsl_integration_workspace *workspace) |
int | large_interval (gsl_integration_workspace *workspace) |
void | set_initial_result (gsl_integration_workspace *workspace, double result, double error) |
void | initialise_table (struct extrapolation_table *table) |
void | append_table (struct extrapolation_table *table, double y) |
void | qelg (struct extrapolation_table *table, double &result, double &abserr) |
int | test_positivity (double result, double resabs) |
int | subinterval_too_small (double a1, double a2, double b2) |
double | GSL_MAX_DBL (double a, double b) |
void | gsl_integration_21qk (FunctionType1D *pFunction, double a, double b, double &result, double &abserr, double &resabs, double &resasc, std::vector< double > ¶meters) |
double | rescale_error (double err, const double result_abs, const double result_asc) |
double | GSL_MAX (double a, double b) |
virtual GaussKronrodAdaptive * | clone () const |
Public Member Functions inherited from NumA::Integrator1D | |
Integrator1D () | |
Default constructor. More... | |
virtual | ~Integrator1D () |
Default destructor. More... | |
virtual void | configure (const ElemUtils::Parameters ¶meters) |
Provides a generic method to configure all types of integrations by passing a Parameters object. More... | |
const Tolerances & | getTolerances () const |
void | setTolerances (const Tolerances &tolerances) |
const Errors & | getErrors () const |
void | setErrors (const Errors &errors) |
Static Public Member Functions | |
static const std::vector< double > | make_xgk_21 () |
static const std::vector< double > | make_wg_21 () |
static const std::vector< double > | make_wgk_21 () |
Static Public Member Functions inherited from NumA::Integrator1D | |
template<typename PointerToObj , typename PointerToMemFn > | |
static Functor1D< PointerToObj, PointerToMemFn > * | newIntegrationFunctor (PointerToObj *object, PointerToMemFn function) |
Use FunctorUtils::newFunctor1D instead. More... | |
static Integrator1D * | newIntegrator (const IntegratorType1D::Type &oneDimIntegratorType) |
Instantiates an Integrator object. More... | |
Static Public Attributes | |
static const std::vector< double > | xgk = make_xgk_21() |
static const std::vector< double > | wg = make_wg_21() |
static const std::vector< double > | wgk = make_wgk_21() |
Static Public Attributes inherited from NumA::Integrator1D | |
static const std::string | PARAM_NAME_ABSOLUTE_TOLERANCE |
Parameter used in the configure() to set the absolute tolerance. More... | |
static const std::string | PARAM_NAME_RELATIVE_TOLERANCE |
Parameter used in the configure() to set the relative tolerance. More... | |
Protected Member Functions | |
GaussKronrodAdaptive (const GaussKronrodAdaptive &other) | |
Protected Member Functions inherited from NumA::Integrator1D | |
Integrator1D (const Integrator1D &other) | |
Copy constructor. More... | |
Additional Inherited Members | |
Protected Attributes inherited from NumA::Integrator1D | |
Tolerances | m_tolerances |
Absolute and relative tolerances. More... | |
Errors | m_errors |
Absolute and relative errors estimations. More... | |
anonymous enum |
|
inline |
|
inlinevirtual |
|
inlineprotected |
|
inline |
|
inlinevirtual |
Implements NumA::Integrator1D.
|
inline |
|
inlinevirtual |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinevirtual |
Integration routine.
pFunction | Functor representing the one-dimensional function to integrate. |
a | Lower bound. |
b | Upper bound. |
parameters | Parameters that can be passed to the function. |
Implements NumA::Integrator1D.
|
inline |
|
static |
|
static |
|
static |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
static |
|
static |
|
static |