Doxygen
1.9.1
|
Rule with hard-corded tabulated points and weights. More...
#include <tsgHardCodedTabulatedRules.hpp>
Public Member Functions | |
TableGaussPatterson () | |
Constructor, loads the nodes into the internal data structures. | |
~TableGaussPatterson ()=default | |
Destrutor, cleans all memory. | |
std::vector< double > | getNodes (int level) const |
Returns the nodes for the level, note that the nodes are nested. | |
double | getWeight (int level, int point) const |
Return the quadrature weight for level and given point. | |
Static Public Member Functions | |
static int | getNumLevels () |
Return the number of hard-coded levels. | |
Protected Member Functions | |
void | loadNodes () |
Load the nodes into the local data-strutures. | |
void | loadWeights () |
Load the weights into the local data-structures. | |
Rule with hard-corded tabulated points and weights.
The Gauss-Patterson rule combines nested points with the optimality of the Gauss quadratures. While not as powerful as Gauss-Legendre in one and tow dimensions, the rule wins in polynomial space of exactness with respect to integration for 3 or more dimensions. However, the points and weights are very hard to compute and most algorithms are very ill-conditioned. Thus, it is beneficial to have the points for the first 9 levels hard-coded.
Note that Gauss-Legendre rule combined with a full tensor grid gives highest exactness per number of points with respect to integration in one and two dimensions.