Object-oriented Scientific Computing Library: Version 0.910
Protected Member Functions
gsl_inte_cheb< func_t > Class Template Reference

Chebyshev integration base class (GSL) More...

#include <gsl_inte_qawc.h>

Inheritance diagram for gsl_inte_cheb< func_t >:
gsl_inte_transform< func_t > gsl_inte_singular< func_t > gsl_inte_kronrod< func_t > gsl_inte inte< func_t > gsl_inte_qawc< func_t > gsl_inte_qawo_sin< func_t > gsl_inte_qaws< func_t > gsl_inte_qawf_sin< func_t > gsl_inte_qawo_cos< func_t > gsl_inte_qawf_cos< func_t >

Detailed Description

template<class func_t>
class gsl_inte_cheb< func_t >

This class provides the basic Chebyshev integration functions for use in the GSL-based integration classes which require them. See GSL-based integration routines in the User's guide for general information about the GSL integration classes.

Definition at line 42 of file gsl_inte_qawc.h.

Protected Member Functions

void compute_moments (double cc, double *moment)
 Compute the Chebyshev moments.
template<class func2_t >
void inte_cheb_series (func2_t &f, double a, double b, double *cheb12, double *cheb24)
 Compute Chebyshev series expansion using a FFT method.

Member Function Documentation

template<class func_t >
template<class func2_t >
void gsl_inte_cheb< func_t >::inte_cheb_series ( func2_t &  f,
double  a,
double  b,
double *  cheb12,
double *  cheb24 
) [inline, protected]

The Chebyshev coefficients for the truncated expansions,

\[ f(x) = \frac{a_0}{2}T_0(x) + \frac{a_d}{2}T_d(x) + \sum_{k=}^{d-1} a_k^{(d)}T_k(x), \]

are computed for $ d=12 $ and $ d=24 $ using an FFT algorithm from Tolstov62 that is adapted so that the both sets of coefficients are computed simultaneously.

Given the function specified in f, this function computes the 13 Chebyshev coefficients, $ C^{12}_{k} $ of degree 12 and 25 Chebyshev coefficients of degree 24, $ C^{24}_{k} $, for the interval $ [a,b] $ using a FFT method.

These coefficients are constructed to approximate the original function with

\[ f = \sum_{k=1}^{13} C^{12}_{k} T_{k-1}(x) \]

and

\[ f = \sum_{k=1}^{25} C^{24}_{k} T_{k-1}(x) \]

where $ T_{k-1}(x) $ is the Chebyshev polynomial of degree $ k-1 $ evaluated at the point $ x $.

It is assumed that memory for cheb12 and cheb24 has been allocated beforehand.

Originally written in QUADPACK by R. Piessens and E. de Doncker, translated into C for GSL by Brian Gough, and then rewritten for O2scl .

Definition at line 111 of file gsl_inte_qawc.h.


The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Documentation generated with Doxygen. Provided under the GNU Free Documentation License (see License Information).

Get Object-oriented Scientific Computing
Lib at SourceForge.net. Fast, secure and Free Open Source software
downloads.