NeoPZ
tpzintrulep3d.h
Go to the documentation of this file.
1 
6 #ifndef TPZINTRULEP3D_H
7 #define TPZINTRULEP3D_H
8 
9 #include "pzreal.h"
10 #include "pzvec.h"
11 
18 
20  friend class TPZIntRuleList;
21 
23  int fNumInt;
33  int fOrder;
34 
39  TPZIntRuleP3D(int &order);
42 
43 
44 public:
45 
46  TPZIntRuleP3D(const TPZIntRuleP3D &copy) : fNumInt(copy.fNumInt), fLocationKsi(copy.fLocationKsi), fLocationEta(copy.fLocationEta),
47  fLocationZeta(copy.fLocationZeta), fWeight(copy.fWeight), fOrder(copy.fOrder)
48  {
49 
50  }
51 
53  {
54  fNumInt = copy.fNumInt;
55  fLocationKsi = copy.fLocationKsi;
56  fLocationEta = copy.fLocationEta;
57  fLocationZeta = copy.fLocationZeta;
58  fWeight = copy.fWeight;
59  fOrder = copy.fOrder;
60  return *this;
61  }
62 
63  enum {NRULESPYRAMID_ORDER = 37};
64 
66  int NInt() const{ return fNumInt; }
67 
69  void Loc(int i, TPZVec<REAL> &pos) const;
70 
72  REAL W(int i) const;
73 
75  int Order()
76  {
77  return fOrder;
78  }
79 
81  void Print(std::ostream & out = std::cout);
82 
83 protected:
84 
89  int ComputingCubatureRuleForPyramid(int order);
90 
91 };
92 
93 #endif
TPZVec< long double > fLocationZeta
Location of the integration point ZEta.
Definition: tpzintrulep3d.h:29
TPZIntRuleP3D(int &order)
Constructor of cubature rule for pyramid.
Templated vector implementation.
Integration rule for pyramid. Numerical Integration.
Definition: tpzintrulep3d.h:17
int NInt() const
Returns number of integration points.
Definition: tpzintrulep3d.h:66
void Print(std::ostream &out=std::cout)
Prints the number of integration points, all points and weights (as one dimension) ...
TPZIntRuleP3D(const TPZIntRuleP3D &copy)
Definition: tpzintrulep3d.h:46
Creates instances of all integration rules for rapid selection. Numerical Integration.
TPZVec< long double > fLocationKsi
Location of the integration point Ksi.
Definition: tpzintrulep3d.h:25
int Order()
return the order of the polynomial order that can be integrated
Definition: tpzintrulep3d.h:75
int fOrder
polynomial order of the integration rule
Definition: tpzintrulep3d.h:33
TPZVec< long double > fLocationEta
Location of the integration point Eta.
Definition: tpzintrulep3d.h:27
REAL W(int i) const
Returns weight for the ith point.
int ComputingCubatureRuleForPyramid(int order)
Computes the points and weights for pyramid cubature rule as first version of PZ. ...
TPZVec< long double > fWeight
Weight of the integration point.
Definition: tpzintrulep3d.h:31
Contains the declaration of TPZFlopCounter class and TPZCounter struct.
~TPZIntRuleP3D()
Default destructor.
void Loc(int i, TPZVec< REAL > &pos) const
Returns location of the ith point.
TPZIntRuleP3D & operator=(const TPZIntRuleP3D &copy)
Definition: tpzintrulep3d.h:52
int fNumInt
Number of integration points for this object.
Definition: tpzintrulep3d.h:23