NeoPZ
Public Types | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
TPZIntRuleP3D Class Reference

Integration rule for pyramid. Numerical Integration. More...

#include <tpzintrulep3d.h>

Collaboration diagram for TPZIntRuleP3D:
[legend]

Public Types

enum  { NRULESPYRAMID_ORDER }
 

Public Member Functions

 TPZIntRuleP3D (const TPZIntRuleP3D &copy)
 
TPZIntRuleP3Doperator= (const TPZIntRuleP3D &copy)
 
int NInt () const
 Returns number of integration points. More...
 
void Loc (int i, TPZVec< REAL > &pos) const
 Returns location of the ith point. More...
 
REAL W (int i) const
 Returns weight for the ith point. More...
 
int Order ()
 return the order of the polynomial order that can be integrated More...
 
void Print (std::ostream &out=std::cout)
 Prints the number of integration points, all points and weights (as one dimension) More...
 

Protected Member Functions

int ComputingCubatureRuleForPyramid (int order)
 Computes the points and weights for pyramid cubature rule as first version of PZ. More...
 

Private Member Functions

 TPZIntRuleP3D (int &order)
 Constructor of cubature rule for pyramid. More...
 
 ~TPZIntRuleP3D ()
 Default destructor. More...
 

Private Attributes

int fNumInt
 Number of integration points for this object. More...
 
TPZVec< long double > fLocationKsi
 Location of the integration point Ksi. More...
 
TPZVec< long double > fLocationEta
 Location of the integration point Eta. More...
 
TPZVec< long double > fLocationZeta
 Location of the integration point ZEta. More...
 
TPZVec< long double > fWeight
 Weight of the integration point. More...
 
int fOrder
 polynomial order of the integration rule More...
 

Friends

class TPZIntRuleList
 The list can to access the constructor of the current class. More...
 

Detailed Description

Integration rule for pyramid. Numerical Integration.

Author
Philippe R. B. Devloo phil@.nosp@m.fec..nosp@m.unica.nosp@m.mp.b.nosp@m.r

Definition at line 17 of file tpzintrulep3d.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
NRULESPYRAMID_ORDER 

Definition at line 63 of file tpzintrulep3d.h.

Constructor & Destructor Documentation

◆ TPZIntRuleP3D() [1/2]

TPZIntRuleP3D::TPZIntRuleP3D ( int &  order)
private

Constructor of cubature rule for pyramid.

Parameters
orderOrder of the polinomial will be integrated exactly with this cubature rule

Definition at line 17 of file tpzintrulep3d.cpp.

◆ ~TPZIntRuleP3D()

TPZIntRuleP3D::~TPZIntRuleP3D ( )
private

Default destructor.

Definition at line 30 of file tpzintrulep3d.cpp.

◆ TPZIntRuleP3D() [2/2]

TPZIntRuleP3D::TPZIntRuleP3D ( const TPZIntRuleP3D copy)
inline

Definition at line 46 of file tpzintrulep3d.h.

Member Function Documentation

◆ ComputingCubatureRuleForPyramid()

int TPZIntRuleP3D::ComputingCubatureRuleForPyramid ( int  order)
protected

Computes the points and weights for pyramid cubature rule as first version of PZ.

Parameters
orderOrder of the polinomial will be integrated exactly with this cubature rule

Computes the points and weights for Pyramid quadrature rule order is the degree of the polinomial will be integrated exactly with this cubature rule

Computing the rule for Legender format to use for find the integration points at plane z = cte measure of the plane (1-z)^2

Computing the rule to jacobi format

Redimension of the weights to take a volume of the pyramid

Definition at line 72 of file tpzintrulep3d.cpp.

References TPZGaussRule::ComputingGaussJacobiQuadrature(), TPZGaussRule::ComputingGaussLegendreQuadrature(), and TPZVec< T >::Resize().

Referenced by Order().

◆ Loc()

void TPZIntRuleP3D::Loc ( int  i,
TPZVec< REAL > &  pos 
) const

Returns location of the ith point.

Definition at line 38 of file tpzintrulep3d.cpp.

References PZError.

Referenced by NInt().

◆ NInt()

int TPZIntRuleP3D::NInt ( ) const
inline

Returns number of integration points.

Definition at line 66 of file tpzintrulep3d.h.

References fNumInt, Loc(), and W().

◆ operator=()

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

Definition at line 52 of file tpzintrulep3d.h.

References fLocationEta, fLocationKsi, fLocationZeta, fNumInt, fOrder, and fWeight.

◆ Order()

int TPZIntRuleP3D::Order ( )
inline

return the order of the polynomial order that can be integrated

Definition at line 75 of file tpzintrulep3d.h.

References ComputingCubatureRuleForPyramid(), fOrder, and Print().

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

◆ Print()

void TPZIntRuleP3D::Print ( std::ostream &  out = std::cout)

Prints the number of integration points, all points and weights (as one dimension)

Definition at line 141 of file tpzintrulep3d.cpp.

Referenced by Order().

◆ W()

REAL TPZIntRuleP3D::W ( int  i) const

Returns weight for the ith point.

Definition at line 50 of file tpzintrulep3d.cpp.

References PZError.

Referenced by NInt().

Friends And Related Function Documentation

◆ TPZIntRuleList

friend class TPZIntRuleList
friend

The list can to access the constructor of the current class.

Definition at line 20 of file tpzintrulep3d.h.

Member Data Documentation

◆ fLocationEta

TPZVec<long double> TPZIntRuleP3D::fLocationEta
private

Location of the integration point Eta.

Definition at line 27 of file tpzintrulep3d.h.

Referenced by operator=().

◆ fLocationKsi

TPZVec<long double> TPZIntRuleP3D::fLocationKsi
private

Location of the integration point Ksi.

Definition at line 25 of file tpzintrulep3d.h.

Referenced by operator=().

◆ fLocationZeta

TPZVec<long double> TPZIntRuleP3D::fLocationZeta
private

Location of the integration point ZEta.

Definition at line 29 of file tpzintrulep3d.h.

Referenced by operator=().

◆ fNumInt

int TPZIntRuleP3D::fNumInt
private

Number of integration points for this object.

Definition at line 23 of file tpzintrulep3d.h.

Referenced by NInt(), and operator=().

◆ fOrder

int TPZIntRuleP3D::fOrder
private

polynomial order of the integration rule

Definition at line 33 of file tpzintrulep3d.h.

Referenced by operator=(), and Order().

◆ fWeight

TPZVec<long double> TPZIntRuleP3D::fWeight
private

Weight of the integration point.

Definition at line 31 of file tpzintrulep3d.h.

Referenced by operator=().


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