|
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.