queso-0.51.1
List of all members
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:
Inheritance graph
[legend]
Collaboration diagram for QUESO::WignerInverseChebyshev1st1DQuadrature:
Collaboration graph
[legend]

Public Member Functions

Constructor/Destructor methods
 WignerInverseChebyshev1st1DQuadrature (double minDomainValue, double maxDomainValue, unsigned int order)
 TODO: Default constructor. More...
 
 ~WignerInverseChebyshev1st1DQuadrature ()
 Destructor. More...
 
Mathematical methods
void dumbRoutine () const
 A bogus method. More...
 
- Public Member Functions inherited from QUESO::Base1DQuadrature
 Base1DQuadrature (double minDomainValue, double maxDomainValue, unsigned int order)
 Default constructor. More...
 
virtual ~Base1DQuadrature ()
 Virtual destructor. 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...
 
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
 
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 267 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 678 of file 1DQuadrature.C.

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

682  :
684 {
685  m_positions.resize(m_order+1,0.); // Yes, '+1'
686  m_weights.resize (m_order+1,0.); // Yes, '+1'
687 
688  // http://en.wikipedia.org/wiki/Chebyshev-Gauss_quadrature
689  switch (m_order) {
690  default:
691  UQ_FATAL_TEST_MACRO(true,
693  "WignerInverseChebyshev1st1DQuadrature::constructor()",
694  "order not supported");
695  break;
696  }
697 
698  // Scale positions from the interval [-1, 1] to the interval [min,max]
699  for (unsigned int j = 0; j < m_positions.size(); ++j) {
702  }
703 }
Base1DQuadrature(double minDomainValue, double maxDomainValue, unsigned int order)
Default constructor.
Definition: 1DQuadrature.C:32
std::vector< double > m_weights
Definition: 1DQuadrature.h:86
const int UQ_UNAVAILABLE_RANK
Definition: Defines.h:74
double maxDomainValue() const
Returns the maximum value of the domain of the (one-dimensional) function.
Definition: 1DQuadrature.C:64
std::vector< double > m_positions
Definition: 1DQuadrature.h:85
unsigned int order() const
Returns the order of the quadrature rule.
Definition: 1DQuadrature.C:70
double minDomainValue() const
Returns the minimum value of the domain of the (one-dimensional) function.
Definition: 1DQuadrature.C:58
#define UQ_FATAL_TEST_MACRO(test, givenRank, where, what)
Definition: Defines.h:223
QUESO::WignerInverseChebyshev1st1DQuadrature::~WignerInverseChebyshev1st1DQuadrature ( )

Destructor.

Definition at line 705 of file 1DQuadrature.C.

706 {
707 }

Member Function Documentation

void QUESO::WignerInverseChebyshev1st1DQuadrature::dumbRoutine ( ) const
virtual

A bogus method.

Implements QUESO::Base1DQuadrature.

Definition at line 710 of file 1DQuadrature.C.

711 {
712  return;
713 }

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

Generated on Thu Apr 23 2015 19:26:17 for queso-0.51.1 by  doxygen 1.8.5