NeoPZ
|
Integration rule (points and weights) for triangles. Numerical Integration. More...
#include <tpzintrulet.h>
Public Types | |
enum | { NRULESTRIANGLE_ORDER } |
Public Member Functions | |
int | NInt () const |
Returns number of integration points. More... | |
void | Loc (int i, TPZVec< REAL > &pos) const |
Returns location of the ith point. More... | |
REAL | W (int i) const |
Return weight for the ith point. More... | |
int | Order () const |
Order associated with the integration rule. More... | |
Private Member Functions | |
TPZIntRuleT (int order) | |
Constructor of integration rule for triangle. More... | |
TPZIntRuleT (const TPZIntRuleT ©) | |
TPZIntRuleT & | operator= (const TPZIntRuleT ©) |
~TPZIntRuleT () | |
Default destructor. More... | |
int | ComputingSymmetricCubatureRule (int order) |
Computes the cubature rules following the symmetric construction presented at Linbo Zhang article. More... | |
void | TransformBarycentricCoordInCartesianCoord (long double baryvec[], long double weightvec[]) |
Transforms barycentric coordinates (3 component) of the point in triange in cartesian coordinates (2 component). More... | |
Private Attributes | |
int | fNumInt |
Number of integration points for this object. More... | |
TPZManVector< long double > | fLocationKsi |
Location of the integration point Ksi. More... | |
TPZManVector< long double > | fLocationEta |
Location of the integration point Eta. More... | |
TPZManVector< long double > | fWeight |
Weight of the integration point. More... | |
int | fOrder |
the polynomial order this integration rule can integrate More... | |
Friends | |
class | TPZIntRuleList |
The list can to access the constructor of the current class. More... | |
Integration rule (points and weights) for triangles. Numerical Integration.
Definition at line 18 of file tpzintrulet.h.
anonymous enum |
Enumerator | |
---|---|
NRULESTRIANGLE_ORDER |
Definition at line 72 of file tpzintrulet.h.
|
private |
Constructor of integration rule for triangle.
order | Order of the polinomial will be exactly integrated. |
Definition at line 10 of file tpzintrulet.cpp.
References ComputingSymmetricCubatureRule(), fOrder, NRULESTRIANGLE_ORDER, and PZError.
|
inlineprivate |
Definition at line 40 of file tpzintrulet.h.
|
private |
Default destructor.
Definition at line 21 of file tpzintrulet.cpp.
References fLocationEta, fLocationKsi, fNumInt, fWeight, and TPZManVector< T, NumExtAlloc >::Resize().
Referenced by operator=().
|
private |
Computes the cubature rules following the symmetric construction presented at Linbo Zhang article.
order | Order of the polinomial will be exactly integrated. |
Definition at line 640 of file tpzintrulet.cpp.
References fLocationEta, fLocationKsi, fNumInt, fWeight, PZError, QUAD_TRI_P10_pts, QUAD_TRI_P10_wts, QUAD_TRI_P11_pts, QUAD_TRI_P11_wts, QUAD_TRI_P12_pts, QUAD_TRI_P12_wts, QUAD_TRI_P13_pts, QUAD_TRI_P13_wts, QUAD_TRI_P14_pts, QUAD_TRI_P14_wts, QUAD_TRI_P15_pts, QUAD_TRI_P15_wts, QUAD_TRI_P16_pts, QUAD_TRI_P16_wts, QUAD_TRI_P17_pts, QUAD_TRI_P17_wts, QUAD_TRI_P18_pts, QUAD_TRI_P18_wts, QUAD_TRI_P19_pts, QUAD_TRI_P19_wts, QUAD_TRI_P1_pts, QUAD_TRI_P1_wts, QUAD_TRI_P20_pts, QUAD_TRI_P20_wts, QUAD_TRI_P21_pts, QUAD_TRI_P21_wts, QUAD_TRI_P2_pts, QUAD_TRI_P2_wts, QUAD_TRI_P3_pts, QUAD_TRI_P3_wts, QUAD_TRI_P4_pts, QUAD_TRI_P4_wts, QUAD_TRI_P5_pts, QUAD_TRI_P5_wts, QUAD_TRI_P6_pts, QUAD_TRI_P6_wts, QUAD_TRI_P7_pts, QUAD_TRI_P7_wts, QUAD_TRI_P8_pts, QUAD_TRI_P8_wts, QUAD_TRI_P9_pts, QUAD_TRI_P9_wts, TPZManVector< T, NumExtAlloc >::Resize(), and TransformBarycentricCoordInCartesianCoord().
Referenced by operator=(), and TPZIntRuleT().
void TPZIntRuleT::Loc | ( | int | i, |
TPZVec< REAL > & | pos | ||
) | const |
Returns location of the ith point.
Definition at line 30 of file tpzintrulet.cpp.
References fLocationEta, fLocationKsi, fNumInt, and PZError.
Referenced by NInt().
|
inline |
Returns number of integration points.
Definition at line 75 of file tpzintrulet.h.
|
inlineprivate |
Definition at line 46 of file tpzintrulet.h.
References ComputingSymmetricCubatureRule(), fLocationEta, fLocationKsi, fNumInt, fOrder, fWeight, TransformBarycentricCoordInCartesianCoord(), and ~TPZIntRuleT().
|
inline |
Order associated with the integration rule.
Definition at line 84 of file tpzintrulet.h.
References fOrder.
Referenced by TPZIntTriang::SetOrder(), and TPZIntTriang::TPZIntTriang().
|
private |
Transforms barycentric coordinates (3 component) of the point in triange in cartesian coordinates (2 component).
baryvec | Vector of barycentric coordinates (3 components) for each point |
weightvec | Vector of weights related for each point in baryvec vector |
Definition at line 719 of file tpzintrulet.cpp.
References fLocationEta, fLocationKsi, fNumInt, and fWeight.
Referenced by ComputingSymmetricCubatureRule(), and operator=().
REAL TPZIntRuleT::W | ( | int | i | ) | const |
|
friend |
The list can to access the constructor of the current class.
Definition at line 21 of file tpzintrulet.h.
|
private |
Location of the integration point Eta.
Definition at line 28 of file tpzintrulet.h.
Referenced by ComputingSymmetricCubatureRule(), Loc(), operator=(), TransformBarycentricCoordInCartesianCoord(), and ~TPZIntRuleT().
|
private |
Location of the integration point Ksi.
Definition at line 26 of file tpzintrulet.h.
Referenced by ComputingSymmetricCubatureRule(), Loc(), operator=(), TransformBarycentricCoordInCartesianCoord(), and ~TPZIntRuleT().
|
private |
Number of integration points for this object.
Definition at line 24 of file tpzintrulet.h.
Referenced by ComputingSymmetricCubatureRule(), Loc(), NInt(), operator=(), TransformBarycentricCoordInCartesianCoord(), W(), and ~TPZIntRuleT().
|
private |
the polynomial order this integration rule can integrate
Definition at line 32 of file tpzintrulet.h.
Referenced by operator=(), Order(), and TPZIntRuleT().
|
private |
Weight of the integration point.
Definition at line 30 of file tpzintrulet.h.
Referenced by ComputingSymmetricCubatureRule(), operator=(), TransformBarycentricCoordInCartesianCoord(), W(), and ~TPZIntRuleT().