Code-Eli  0.3.6
eli::mutil::quad::simpson< data__ > Class Template Reference

#include <simpson.hpp>

Classes

struct  adaptive_params
 

Public Member Functions

 simpson ()
 
 simpson (const simpson< data__ > &)
 
 ~simpson ()
 
simpson< data__ > & operator= (const simpson< data__ > &)
 
size_t order () const
 
template<typename yit__ >
data__ operator() (const data__ &dx, yit__ yb, yit__ ye) const
 
template<typename xit__ , typename yit__ >
data__ operator() (xit__ x, yit__ yb, yit__ ye) const
 
template<typename f__ >
data__ operator() (f__ fun, const data__ &x0, const data__ &x1) const
 
template<typename f__ >
data__ operator() (f__ fun, const data__ &x0, const data__ &x1, const data__ &tol, const size_t &max_depth) const
 
template<typename f__ >
data__ operator() (f__ fun, const data__ &x0, const data__ &x1, typename simpson< data__ >::adaptive_params &ap) const
 

Private Member Functions

data__ simple (const data__ &a, const data__ &b, const data__ f[]) const
 
template<typename f__ >
void internal_recurse (f__ &fun, const data__ xc[], const data__ fc[], typename simpson< data__ >::adaptive_params &ap) const
 

Constructor & Destructor Documentation

template<typename data__>
eli::mutil::quad::simpson< data__ >::simpson ( )
inline
template<typename data__>
eli::mutil::quad::simpson< data__ >::simpson ( const simpson< data__ > &  )
inline
template<typename data__>
eli::mutil::quad::simpson< data__ >::~simpson ( )
inline

Member Function Documentation

template<typename data__>
template<typename f__ >
void eli::mutil::quad::simpson< data__ >::internal_recurse ( f__ &  fun,
const data__  xc[],
const data__  fc[],
typename simpson< data__ >::adaptive_params ap 
) const
inlineprivate

Here is the call graph for this function:

template<typename data__>
template<typename yit__ >
data__ eli::mutil::quad::simpson< data__ >::operator() ( const data__ &  dx,
yit__  yb,
yit__  ye 
) const
inline

Performs quadrature for a uniform spacing of y points

Parameters
yit__- iterator type for y points
[in]dx- uniform grid spacing
[in]yb- start iterator of y points
[in]ye- end iterator of y points
Returns
result from quadrature
template<typename data__>
template<typename xit__ , typename yit__ >
data__ eli::mutil::quad::simpson< data__ >::operator() ( xit__  x,
yit__  yb,
yit__  ye 
) const
inline

Performs quadrature for a nonuniform spacing of y points

Parameters
xit__- iterator type for grid points
yit__- iterator type for y points
[in]x- start iterator of grid points
[in]yb- start iterator of y points
[in]ye- end iterator of y points
Returns
result from quadrature
template<typename data__>
template<typename f__ >
data__ eli::mutil::quad::simpson< data__ >::operator() ( f__  fun,
const data__ &  x0,
const data__ &  x1 
) const
inline

Performs adaptive quadrature for a given functor

Parameters
f__- functor to be integrated
[in]x- start iterator of grid points
[in]yb- start iterator of y points
[in]ye- end iterator of y points
Returns
result from quadrature

Here is the call graph for this function:

template<typename data__>
template<typename f__ >
data__ eli::mutil::quad::simpson< data__ >::operator() ( f__  fun,
const data__ &  x0,
const data__ &  x1,
const data__ &  tol,
const size_t &  max_depth 
) const
inline

Performs adaptive quadrature for a given functor

Parameters
f__- functor to be integrated
[in]fun- instance of functor to be integrated
[in]x0- lower bounds of integration
[in]x1- upper bounds of integration
[in]tol- error tolerance to use for convergence test
[in]max_depth- maximum number of recursive depths to go before stopping
Returns
result from quadrature

Here is the call graph for this function:

template<typename data__>
template<typename f__ >
data__ eli::mutil::quad::simpson< data__ >::operator() ( f__  fun,
const data__ &  x0,
const data__ &  x1,
typename simpson< data__ >::adaptive_params ap 
) const
inline

Performs adaptive quadrature for a given functor

Parameters
f__- functor to be integrated
[in]fun- instance of functor to be integrated
[in]x0- lower bounds of integration
[in]x1- upper bounds of integration
[in]ap- adaptive parameters
Returns
result from quadrature

Here is the call graph for this function:

template<typename data__>
simpson<data__>& eli::mutil::quad::simpson< data__ >::operator= ( const simpson< data__ > &  )
inline
template<typename data__>
size_t eli::mutil::quad::simpson< data__ >::order ( ) const
inline
template<typename data__>
data__ eli::mutil::quad::simpson< data__ >::simple ( const data__ &  a,
const data__ &  b,
const data__  f[] 
) const
inlineprivate

The documentation for this class was generated from the following file: