NeoPZ
tpzintrulet3d.h
Go to the documentation of this file.
1 
6 #ifndef TPZINTRULET3D_H
7 #define TPZINTRULET3D_H
8 
9 #include "pzreal.h"
10 #include "pzmanvector.h"
11 
18 
20  friend class TPZIntRuleList;
21 
23  int fNumInt;
33  int fOrder;
34 
39  TPZIntRuleT3D(int i = 2);
42 
43  TPZIntRuleT3D(const TPZIntRuleT3D &copy) : fNumInt(copy.fNumInt), fLocationKsi(copy.fLocationKsi), fLocationEta(copy.fLocationEta),
44  fLocationZeta(copy.fLocationZeta), fWeight(copy.fWeight), fOrder(copy.fOrder)
45  {
46 
47  }
49  {
50  fNumInt = copy.fNumInt;
51  fLocationKsi = copy.fLocationKsi;
52  fLocationEta = copy.fLocationEta;
53  fLocationZeta = copy.fLocationZeta;
54  fWeight = copy.fWeight;
55  fOrder = copy.fOrder;
56  return *this;
57  }
62  int ComputingSymmetricCubatureRule(int order);
63 
69  void TransformBarycentricCoordInCartesianCoord(long double baryvec[],long double weightvec[]);
70 
71 public:
73 
75  int NInt() const { return fNumInt;}
76 
78  void Loc(int i, TPZVec<REAL> &pos) const;
79 
81  REAL W(int i) const;
82 
83  int Order()
84  {
85  return fOrder;
86  }
87 };
88 
89 #endif
REAL W(int i) const
Returns weight for the ith point.
void Loc(int i, TPZVec< REAL > &pos) const
Returns location of the ith point.
TPZManVector< long double > fLocationZeta
Location of the integration point Zeta.
Definition: tpzintrulet3d.h:29
int NInt() const
Returns number of integration points.
Definition: tpzintrulet3d.h:75
TPZManVector< long double > fLocationKsi
Location of the integration point Ksi.
Definition: tpzintrulet3d.h:25
Integration rule for tetrahedra. Numerical Integration.
Definition: tpzintrulet3d.h:17
int fOrder
Polynomial order of the integration rule.
Definition: tpzintrulet3d.h:33
void TransformBarycentricCoordInCartesianCoord(long double baryvec[], long double weightvec[])
Transform barycentric coordinates of the point in tetrahedra by cartesian coordinates (3 component)...
Creates instances of all integration rules for rapid selection. Numerical Integration.
Free store vector implementation.
TPZManVector< long double > fLocationEta
Location of the integration point Eta.
Definition: tpzintrulet3d.h:27
TPZIntRuleT3D & operator=(const TPZIntRuleT3D &copy)
Definition: tpzintrulet3d.h:48
TPZManVector< long double > fWeight
Weight of the integration point.
Definition: tpzintrulet3d.h:31
int ComputingSymmetricCubatureRule(int order)
Computes the cubature rules following the symmetric construction presented at Linbo Zhang article...
~TPZIntRuleT3D()
Default destructor. It delete the vector of points and weights.
Contains the declaration of TPZFlopCounter class and TPZCounter struct.
int fNumInt
Number of integration points for this object.
Definition: tpzintrulet3d.h:23
TPZIntRuleT3D(const TPZIntRuleT3D &copy)
Definition: tpzintrulet3d.h:43
TPZIntRuleT3D(int i=2)
Constructor of integration rule for tetrahedra.