NeoPZ
Public Types | Public Member Functions | Protected Attributes | List of all members
TPZIntTriang Class Reference

Handles the numerical integration for two-dimensional problems using triangular elements. Numerical Integration. More...

#include <pzquad.h>

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

Public Types

enum  { Dim }
 

Public Member Functions

 TPZIntTriang (int OrdK=2)
 
 TPZIntTriang (const TPZIntTriang &copy)
 
TPZIntTriangoperator= (const TPZIntTriang &copy)
 
virtual ~TPZIntTriang ()
 
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)
 
virtual 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...
 

Protected Attributes

int fOrdKsi
 
TPZIntRuleTfIntKsi
 

Detailed Description

Handles the numerical integration for two-dimensional problems using triangular elements. Numerical Integration.

Definition at line 102 of file pzquad.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
Dim 

Definition at line 109 of file pzquad.h.

Constructor & Destructor Documentation

◆ TPZIntTriang() [1/2]

TPZIntTriang::TPZIntTriang ( int  OrdK = 2)

◆ TPZIntTriang() [2/2]

TPZIntTriang::TPZIntTriang ( const TPZIntTriang copy)
inline

Definition at line 111 of file pzquad.h.

◆ ~TPZIntTriang()

virtual TPZIntTriang::~TPZIntTriang ( )
inlinevirtual

Member Function Documentation

◆ Clone()

virtual TPZIntPoints* TPZIntTriang::Clone ( ) const
inlinevirtual

Make a clone of the related cubature rule.

Implements TPZIntPoints.

Definition at line 138 of file pzquad.h.

◆ Dimension()

virtual int TPZIntTriang::Dimension ( ) const
inlinevirtual

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

Implements TPZIntPoints.

Definition at line 129 of file pzquad.h.

References TPZInt1d::Dim.

◆ GetMaxOrder()

int TPZIntTriang::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 76 of file pzquad.cpp.

References TPZIntRuleT::NRULESTRIANGLE_ORDER.

◆ GetOrder()

void TPZIntTriang::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 247 of file pzquad.cpp.

Referenced by TPZIntPrism3D::SetOrder(), and TPZIntPrism3D::TPZIntPrism3D().

◆ Name()

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

Returns the name of the cubature rule.

Reimplemented from TPZIntPoints.

Definition at line 144 of file pzquad.h.

◆ NPoints()

int TPZIntTriang::NPoints ( ) const
virtual

Returns number of points for the cubature rule related.

Implements TPZIntPoints.

Definition at line 202 of file pzquad.cpp.

References DebugStop, and PZError.

Referenced by TPZIntPrism3D::NPoints(), and TPZIntPrism3D::Point().

◆ operator=()

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

Definition at line 113 of file pzquad.h.

References fIntKsi, fOrdKsi, and TPZIntPoints::operator=().

◆ Point()

void TPZIntTriang::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 213 of file pzquad.cpp.

References PZError.

Referenced by TPZIntPrism3D::Point().

◆ PrismExtend()

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

Implements TPZIntPoints.

Definition at line 134 of file pzquad.h.

◆ SetOrder()

void TPZIntTriang::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 225 of file pzquad.cpp.

References DebugStop, TPZIntRuleList::GetRuleT(), TPZIntRuleList::gIntRuleList, LOGPZ_WARN, TPZIntRuleT::NRULESTRIANGLE_ORDER, and TPZIntRuleT::Order().

Referenced by TPZIntPrism3D::SetOrder().

Member Data Documentation

◆ fIntKsi

TPZIntRuleT* TPZIntTriang::fIntKsi
protected

Definition at line 106 of file pzquad.h.

Referenced by operator=().

◆ fOrdKsi

int TPZIntTriang::fOrdKsi
protected

Definition at line 105 of file pzquad.h.

Referenced by operator=().


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