queso-0.57.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
QUESO::WignerInverseChebyshev1st1DQuadrature Class Reference

Class for first type Chebyshev-Gauss quadrature rule for one-dimensional functions. More...

#include <1DQuadrature.h>

Inheritance diagram for QUESO::WignerInverseChebyshev1st1DQuadrature:
QUESO::Base1DQuadrature QUESO::BaseQuadrature

Public Member Functions

Constructor/Destructor methods
 WignerInverseChebyshev1st1DQuadrature (double minDomainValue, double maxDomainValue, unsigned int order)
 TODO: Default constructor. More...
 
 ~WignerInverseChebyshev1st1DQuadrature ()
 Destructor. More...
 
- Public Member Functions inherited from QUESO::Base1DQuadrature
 Base1DQuadrature (double minDomainValue, double maxDomainValue, unsigned int order)
 Default constructor. More...
 
virtual ~Base1DQuadrature ()=0
 Pure virtual destructor, forcing this to be an abstract object. More...
 
double minDomainValue () const
 Returns the minimum value of the domain of the (one-dimensional) function. More...
 
double maxDomainValue () const
 Returns the maximum value of the domain of the (one-dimensional) function. More...
 
unsigned int order () const
 Returns the order of the quadrature rule. More...
 
const std::vector< double > & positions () const
 Array of the positions for the numerical integration. More...
 
- Public Member Functions inherited from QUESO::BaseQuadrature
 BaseQuadrature ()
 
virtual ~BaseQuadrature ()=0
 Pure virtual destructor, forcing this to be an abstract object. More...
 
const std::vector< double > & weights () const
 Array of the weights used in the numerical integration. More...
 

Additional Inherited Members

- Protected Attributes inherited from QUESO::Base1DQuadrature
double m_minDomainValue
 
double m_maxDomainValue
 
unsigned int m_order
 
std::vector< double > m_positions
 
- Protected Attributes inherited from QUESO::BaseQuadrature
std::vector< double > m_weights
 

Detailed Description

Class for first type Chebyshev-Gauss quadrature rule for one-dimensional functions.

Chebyshev-Gauss quadrature, also called Chebyshev Type 1 quadrature, is a Gaussian quadrature over the interval [-1,1] with weighting function \( W(x)=\frac{1}{\sqrt{1-x^2}}\).
The abscissas for quadrature order \( n \) are given by the roots of the Chebyshev polynomial of the first kind \( T_n(x) \), which occur symmetrically about 0.
The abscissas are given explicitly by \( x_i=\cos[\frac{(2i-1)\pi}{2n}]\) and the weights are \( w_i=\frac{\pi}{n}. \)

See Also
Weisstein, Eric W. "Chebyshev-Gauss Quadrature." From MathWorld–A Wolfram Web Resource. http://mathworld.wolfram.com/Chebyshev-GaussQuadrature.html.
http://en.wikipedia.org/wiki/Chebyshev-Gauss_quadrature.

Definition at line 232 of file 1DQuadrature.h.

Constructor & Destructor Documentation

QUESO::WignerInverseChebyshev1st1DQuadrature::WignerInverseChebyshev1st1DQuadrature ( double  minDomainValue,
double  maxDomainValue,
unsigned int  order 
)

TODO: Default constructor.

Todo:
Constructs a Gaussian-Chebyshev quadrature (of first type) of order order, in the interval [minDomainValue,maxDomainValue]. This method scales the the abscissas (positions) of the quadrature from the interval [-1,1] to [minDomainValue,maxDomainValue].

Definition at line 622 of file 1DQuadrature.C.

References QUESO::Base1DQuadrature::m_maxDomainValue, QUESO::Base1DQuadrature::m_minDomainValue, QUESO::Base1DQuadrature::m_order, QUESO::Base1DQuadrature::m_positions, and QUESO::BaseQuadrature::m_weights.

626  :
628 {
629  m_positions.resize(m_order+1,0.); // Yes, '+1'
630  m_weights.resize (m_order+1,0.); // Yes, '+1'
631 
632  // http://en.wikipedia.org/wiki/Chebyshev-Gauss_quadrature
633  switch (m_order) {
634  default:
635  queso_error_msg("order not supported");
636  break;
637  }
638 
639  // Scale positions from the interval [-1, 1] to the interval [min,max]
640  for (unsigned int j = 0; j < m_positions.size(); ++j) {
643  }
644 }
double maxDomainValue() const
Returns the maximum value of the domain of the (one-dimensional) function.
Definition: 1DQuadrature.C:61
double minDomainValue() const
Returns the minimum value of the domain of the (one-dimensional) function.
Definition: 1DQuadrature.C:55
Base1DQuadrature(double minDomainValue, double maxDomainValue, unsigned int order)
Default constructor.
Definition: 1DQuadrature.C:34
std::vector< double > m_weights
std::vector< double > m_positions
Definition: 1DQuadrature.h:83
unsigned int order() const
Returns the order of the quadrature rule.
Definition: 1DQuadrature.C:67
QUESO::WignerInverseChebyshev1st1DQuadrature::~WignerInverseChebyshev1st1DQuadrature ( )

Destructor.

Definition at line 646 of file 1DQuadrature.C.

647 {
648 }

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

Generated on Tue Jun 5 2018 19:49:19 for queso-0.57.1 by  doxygen 1.8.5