OGS
IntegrationGaussLegendrePrism.h
Go to the documentation of this file.
1
11#pragma once
12
16
17namespace NumLib
18{
23{
24public:
30 explicit IntegrationGaussLegendrePrism(unsigned const order)
31 {
32 this->setIntegrationOrder(order);
33 }
34
36 void setIntegrationOrder(unsigned const order);
37
39 unsigned getIntegrationOrder() const { return _order; }
40
42 unsigned getNumberOfPoints() const { return _n_sampl_pt; }
43
44 // clang-format off
46 // clang-format on
47 MathLib::WeightedPoint getWeightedPoint(unsigned const igp) const
48 {
50 }
51
52 // clang-format off
54 // clang-format on
55 static MathLib::WeightedPoint getWeightedPoint(unsigned const order,
56 unsigned const igp);
57
58 template <typename Method>
59 static MathLib::WeightedPoint getWeightedPoint(unsigned const igp)
60 {
61 return MathLib::WeightedPoint(Method::X[igp], Method::W[igp]);
62 }
63
70 static unsigned getNumberOfPoints(unsigned const order);
71
72private:
73 unsigned _order{2};
74 unsigned _n_sampl_pt{0};
75};
76
77} // namespace NumLib
Gauss-Legendre quadrature rule for prisms.
void setIntegrationOrder(unsigned const order)
Change the integration order.
unsigned getIntegrationOrder() const
return current integration order.
static MathLib::WeightedPoint getWeightedPoint(unsigned const igp)
unsigned getNumberOfPoints() const
return the number of sampling points
MathLib::WeightedPoint getWeightedPoint(unsigned const igp) const