15 template<
class T,
int N>
55 virtual void SetType(
int type,
int order) {
85 void Print(std::ostream &out = std::cout)
const {
86 if(fIntP) fIntP->
Print(out);
90 void Name(std::string &name)
const {
144 void Name(std::string &name)
const {
145 name =
"TPZIntTriang";
236 void Name(std::string &name)
const {
264 fIntKsi(copy.fIntKsi), fIntEta(copy.fIntEta), fIntZeta(copy.fIntZeta) {
313 void Name(std::string &name)
const {
314 name =
"TPZIntCube3D";
360 void Name(std::string &name)
const {
361 name =
"TPZIntTetra3D";
376 fIntKsi(copy.fIntKsi) {
408 void Name(std::string &name)
const {
409 name =
"TPZIntPyram3D";
432 fIntRule1D(copy.fIntRule1D), fIntTriang(copy.fIntTriang) {
450 fIntRule1D.
SetType(type,order);
470 void Name(std::string &name)
const {
471 name =
"TPZIntPrism3D";
510 virtual void Name(std::string &name)
const {
511 name =
"TPZInt1Point";
529 std::cout <<
"TPZInt1Point:: Bad number point " << ip << std::endl;
Integration rule (points and weights) for triangles. Numerical Integration.
virtual TPZIntPoints * PrismExtend(int order)
virtual void Point(int ip, TPZVec< REAL > &pos, REAL &w) const
Returns i-th point at master element and related weight.
void SetType(int &type, int order)
Sets a gaussian quadrature: 0 - Gauss Legendre, 1 - Gauss Lobatto, 2 - Gauss Jacobi with alpha = beta...
TPZInt1d(const TPZInt1d ©)
virtual TPZIntPoints * PrismExtend(int order)
Contains the TPZPrInteg class which defines prismatic extension of an integration rule...
TPZIntPoints * Clone() const
Make a clone of the related cubature rule.
virtual void Name(std::string &name) const
Returns the name of the cubature rule.
Handles the numerical integration for two-dimensional problems using triangular elements. Numerical Integration.
virtual TPZIntPoints * Clone() const
Make a clone of the related cubature rule.
Implements a vector class which allows to use external storage provided by the user. Utility.
virtual TPZIntPoints * Clone() const
Make a clone of the related cubature rule.
TPZIntTriang(const TPZIntTriang ©)
void Name(std::string &name) const
Returns the name of the cubature rule.
void SetOrder(TPZVec< int > &ord, int type=0)
Sets the order of the cubature rule.
TPZIntPrism3D(const TPZIntPrism3D ©)
Copy constructor.
TPZIntQuad & operator=(const TPZIntQuad ©)
TPZIntPoints & operator=(const TPZIntPoints ©)
Handles the numerical integration for three-dimensional problems using cube elements. Numerical Integration.
int GetMaxOrder() const
Returns the minimum order to integrate polinomials exactly for all implemented cubature rules...
Contains the TPZIntRuleT class which defines integration rule for triangles based on Linbo Zhang's pa...
TPZIntTetra3D(const TPZIntTetra3D ©)
TPZIntCube3D & operator=(const TPZIntCube3D ©)
TPZInt1d(int OrdK=0, int type=0)
TPZIntTriang & operator=(const TPZIntTriang ©)
virtual int Dimension() const
Returns the dimension of the master element related for the cubature rule.
virtual int GetMaxOrder() const
virtual int Dimension() const
Returns the dimension of the master element related for the cubature rule.
Integration rule for pyramid. Numerical Integration.
void Name(std::string &name) const
Returns the name of the cubature rule.
TPZIntCube3D(const TPZIntCube3D ©)
Copy constructor.
void Name(std::string &name) const
Returns the name of the cubature rule.
TPZInt1d & operator=(const TPZInt1d ©)
virtual int Dimension() const
Returns the dimension of the master element related for the cubature rule.
virtual TPZIntPoints * PrismExtend(int order)
virtual ~TPZIntQuad()
Destructor.
virtual int Dimension() const
Returns the dimension of the master element related for the cubature rule.
virtual TPZIntPoints * PrismExtend(int order)
void Name(std::string &name) const
Returns the name of the cubature rule.
This class implements a simple vector storage scheme for a templated class T. Utility.
Handles the numerical integration for three-dimensional problems using pyramid elements. Numerical Integration.
Integration rule for tetrahedra. Numerical Integration.
Handles the numerical integration for one-dimensional problems. Numerical Integration.
virtual int GetRealMaxOrder() const
virtual void SetType(int type, int order)
Sets the type of gaussian quadrature as Lobatto, Raud or Legendre rule.
int NPoints() const
Returns number of points for the cubature rule related.
TPZIntPyram3D(const TPZIntPyram3D ©)
Abstract class defining integration rules. Numerical Integration.
virtual TPZIntPoints * Clone() const
Make a clone of the related cubature rule.
void GetOrder(TPZVec< int > &ord) const
Gets the order of the integration rule for each dimension of the master element.
void Point(int ip, TPZVec< REAL > &pos, REAL &w) const
Returns i-th point at master element and related weight.
Handles the numerical integration for two-dimensional problems using quadrilateral elements...
virtual int Dimension() const
Returns the dimension of the master element related for the cubature rule.
virtual int Dimension() const
Returns the dimension of the master element related for the cubature rule.
void Name(std::string &name) const
Returns the name of the cubature rule.
Handles the numerical integration for three-dimensional problems using prism elements. Numerical Integration This cubature rule uses a cubature rule for one dimension (zeta) and a cubature rule for triangle (base).
TPZInt1Point(const TPZInt1Point ©)
TPZIntPoints * Clone() const
Make a clone of the related cubature rule.
virtual int NPoints() const
Returns number of points for the cubature rule related.
TPZIntQuad(const TPZIntQuad ©)
Copy constructor.
virtual TPZIntPoints * Clone() const
Make a clone of the related cubature rule.
virtual int GetMaxOrder() const
virtual TPZIntPoints * Clone() const
Make a clone of the related cubature rule.
virtual void SetType(int type, int order)
Sets the type of gaussian quadrature as Lobatto, Raud or Legendre rule.
virtual int GetMaxOrder() const
Returns the minimum order to integrate polinomials exactly for all implemented cubature rules...
TPZIntPoints * Clone() const
Make a clone of the related cubature rule.
void Name(std::string &name) const
Returns the name of the cubature rule.
TPZInt1Point(int order=0)
TPZIntPoints * PrismExtend(int order)
virtual void GetOrder(TPZVec< int > &ord) const
Gets the order of the integration rule for each dimension of the master element.
void Print(std::ostream &out=std::cout)
Prints the number of integration points, all points and weights (as one dimension) ...
TPZIntTetra3D & operator=(const TPZIntTetra3D ©)
virtual ~TPZIntCube3D()
Destructor.
Integration rule for one point. Numerical Integration.
void Print(std::ostream &out=std::cout) const
Prints information of the cubature rule.
virtual void SetType(int type, int order)
Set the order and the type of integration rule :
int Dimension() const
Returns the dimension of the master element related for the cubature rule.
TPZInt1Point & operator=(const TPZInt1Point ©)
virtual void SetType(int type, int order)
Sets the type of gaussian quadrature as Lobatto, Raud or Legendre rule.
Contains the TPZIntPoints class which defines integration rules.
TPZIntPrism3D & operator=(const TPZIntPrism3D ©)
virtual TPZIntPoints * PrismExtend(int order)
Contains the declaration of TPZFlopCounter class and TPZCounter struct.
virtual TPZIntPoints * PrismExtend(int order)
TPZIntPyram3D & operator=(const TPZIntPyram3D ©)
Prismatic extension of an integration rule. Numerical Integration.
void Name(std::string &name) const
Returns the name of the cubature rule.
Handles the numerical integration for three-dimensional problems using tetraedra elements. Numerical Integration.
virtual TPZIntPoints * PrismExtend(int order)
Implements the Gaussian quadrature. Numerical Integration Abstract class.
virtual int Dimension() const
Returns the dimension of the master element related for the cubature rule.
virtual void SetOrder(TPZVec< int > &ord, int type=0)
Sets the order of the cubature rule.