NeoPZ
Public Types | Public Member Functions | Private Attributes | List of all members
TPZIntPyram3D Class Reference

Handles the numerical integration for three-dimensional problems using pyramid elements. Numerical Integration. More...

#include <pzquad.h>

Inheritance diagram for TPZIntPyram3D:
[legend]
Collaboration diagram for TPZIntPyram3D:
[legend]

Public Types

enum  { Dim }
 

Public Member Functions

 TPZIntPyram3D (int OrdK=2)
 
 TPZIntPyram3D (const TPZIntPyram3D &copy)
 
TPZIntPyram3Doperator= (const TPZIntPyram3D &copy)
 
virtual int NPoints () const
 Returns number of points for the cubature rule related. More...
 
virtual void Point (int ip, TPZVec< REAL > &pos, REAL &w) const
 Returns i-th point at master element and related weight. More...
 
virtual void SetOrder (TPZVec< int > &ord, int type=0)
 Sets the order of the cubature rule. More...
 
virtual void GetOrder (TPZVec< int > &ord) const
 Gets the order of the integration rule for each dimension of the master element. More...
 
virtual int GetMaxOrder () const
 Returns the minimum order to integrate polinomials exactly for all implemented cubature rules. More...
 
virtual int Dimension () const
 Returns the dimension of the master element related for the cubature rule. More...
 
virtual TPZIntPointsPrismExtend (int order)
 
TPZIntPointsClone () const
 Make a clone of the related cubature rule. More...
 
void Name (std::string &name) const
 Returns the name of the cubature rule. More...
 
- Public Member Functions inherited from TPZIntPoints
virtual ~TPZIntPoints ()
 Default destructor. More...
 
 TPZIntPoints ()
 
 TPZIntPoints (const TPZIntPoints &copy)
 
TPZIntPointsoperator= (const TPZIntPoints &copy)
 
virtual void SetType (int type, int order)
 Sets the type of gaussian quadrature as Lobatto, Raud or Legendre rule. More...
 
virtual void Print (std::ostream &out) const
 Prints information of the cubature rule. More...
 

Private Attributes

int fOrdKsi
 
TPZIntRuleP3DfIntKsi
 

Detailed Description

Handles the numerical integration for three-dimensional problems using pyramid elements. Numerical Integration.

Definition at line 369 of file pzquad.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
Dim 

Definition at line 373 of file pzquad.h.

Constructor & Destructor Documentation

◆ TPZIntPyram3D() [1/2]

TPZIntPyram3D::TPZIntPyram3D ( int  OrdK = 2)

◆ TPZIntPyram3D() [2/2]

TPZIntPyram3D::TPZIntPyram3D ( const TPZIntPyram3D copy)
inline

Definition at line 375 of file pzquad.h.

Member Function Documentation

◆ Clone()

TPZIntPoints* TPZIntPyram3D::Clone ( ) const
inlinevirtual

Make a clone of the related cubature rule.

Implements TPZIntPoints.

Definition at line 402 of file pzquad.h.

◆ Dimension()

virtual int TPZIntPyram3D::Dimension ( ) const
inlinevirtual

Returns the dimension of the master element related for the cubature rule.

Implements TPZIntPoints.

Definition at line 393 of file pzquad.h.

References TPZInt1d::Dim.

◆ GetMaxOrder()

int TPZIntPyram3D::GetMaxOrder ( ) const
virtual

Returns the minimum order to integrate polinomials exactly for all implemented cubature rules.

Note
To get real maxime order for especific rule call GetRealMaxOrder(), but for Gauss rule 1D the implementation can to compute a cubature rule up to on hundred order.

TPZIntPoints method that returns a coherent maxime order to work It is necessary because now can to be computed rule with integration points up to one thousand.

Reimplemented from TPZIntPoints.

Definition at line 82 of file pzquad.cpp.

References TPZIntRuleP3D::NRULESPYRAMID_ORDER.

◆ GetOrder()

void TPZIntPyram3D::GetOrder ( TPZVec< int > &  ord) const
virtual

Gets the order of the integration rule for each dimension of the master element.

Parameters
ordVector (3d) to get the orders of the polinomial integrated exactly.

Implements TPZIntPoints.

Definition at line 401 of file pzquad.cpp.

◆ Name()

void TPZIntPyram3D::Name ( std::string &  name) const
inlinevirtual

Returns the name of the cubature rule.

Reimplemented from TPZIntPoints.

Definition at line 408 of file pzquad.h.

◆ NPoints()

int TPZIntPyram3D::NPoints ( ) const
virtual

Returns number of points for the cubature rule related.

Implements TPZIntPoints.

Definition at line 366 of file pzquad.cpp.

References PZError.

◆ operator=()

TPZIntPyram3D& TPZIntPyram3D::operator= ( const TPZIntPyram3D copy)
inline

◆ Point()

void TPZIntPyram3D::Point ( int  i,
TPZVec< REAL > &  pos,
REAL &  w 
) const
virtual

Returns i-th point at master element and related weight.

Parameters
iIndex of the integration point at cubature rule (the sequence is not important)
posVector (3d) to get the coordinates of the point at master element.
wIt gets the weight related with integration point.

Implements TPZIntPoints.

Definition at line 374 of file pzquad.cpp.

References PZError.

◆ PrismExtend()

virtual TPZIntPoints* TPZIntPyram3D::PrismExtend ( int  order)
inlinevirtual

Implements TPZIntPoints.

Definition at line 398 of file pzquad.h.

◆ SetOrder()

void TPZIntPyram3D::SetOrder ( TPZVec< int > &  ord,
int  type = 0 
)
virtual

Sets the order of the cubature rule.

Parameters
ordVector of orders for each dimension, to reach a exactly integration for polinomial corresponding
typeType of the integration rule, mainly important for 1d rules.

Implements TPZIntPoints.

Definition at line 386 of file pzquad.cpp.

References TPZIntRuleList::GetRuleP3D(), TPZIntRuleList::gIntRuleList, LOGPZ_WARN, TPZIntRuleP3D::NRULESPYRAMID_ORDER, and TPZIntRuleP3D::Order().

Member Data Documentation

◆ fIntKsi

TPZIntRuleP3D* TPZIntPyram3D::fIntKsi
private

Definition at line 371 of file pzquad.h.

Referenced by operator=().

◆ fOrdKsi

int TPZIntPyram3D::fOrdKsi
private

Definition at line 370 of file pzquad.h.

Referenced by operator=().


The documentation for this class was generated from the following files: