NeoPZ
|
Abstract class defining integration rules. Numerical Integration. More...
#include <tpzintpoints.h>
Public Member Functions | |
virtual | ~TPZIntPoints () |
Default destructor. More... | |
TPZIntPoints () | |
TPZIntPoints (const TPZIntPoints ©) | |
TPZIntPoints & | operator= (const TPZIntPoints ©) |
virtual void | Name (std::string &name) const |
Returns the name of the cubature rule. More... | |
virtual int | NPoints () const =0 |
Returns number of points for the cubature rule related. More... | |
virtual void | Point (int i, TPZVec< REAL > &pos, REAL &w) const =0 |
Returns i-th point at master element and related weight. More... | |
virtual void | SetOrder (TPZVec< int > &ord, int type=0)=0 |
Sets the order of the cubature rule. More... | |
virtual void | GetOrder (TPZVec< int > &ord) const =0 |
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 =0 |
Returns the dimension of the master element related for the cubature rule. More... | |
virtual TPZIntPoints * | Clone () const =0 |
Make a clone of the related cubature rule. More... | |
virtual TPZIntPoints * | PrismExtend (int order)=0 |
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... | |
Abstract class defining integration rules. Numerical Integration.
Definition at line 19 of file tpzintpoints.h.
|
inlinevirtual |
Default destructor.
Definition at line 22 of file tpzintpoints.h.
|
inline |
Definition at line 25 of file tpzintpoints.h.
|
inline |
Definition at line 30 of file tpzintpoints.h.
|
pure virtual |
Make a clone of the related cubature rule.
Implemented in TPZInt1Point, TPZIntPrism3D, TPZIntPyram3D, TPZIntTetra3D, TPZIntCube3D, TPZIntQuad, TPZIntTriang, TPZInt1d, and TPZIntQuadQuarterPoint.
Referenced by TPZPostProcAnalysis::AutoBuildDisc(), TPZInterpolationSpace::BuildTransferMatrix(), TPZInterpolatedElement::BuildTransferMatrix(), TPZInterpolationSpace::CalcResidual(), TPZInterpolationSpace::CalcStiff(), TPZInterpolationSpace::ComputeError(), TPZMGAnalysis::ElementError(), TPZMultiphysicsCompEl< TGeometry >::EvaluateError(), TPZInterpolationSpace::EvaluateError(), TPZCompElDisc::EvaluateSquareResidual2D(), TPZInterpolationSpace::InterpolateSolution(), TPZInterpolationSpace::MinMaxSolutionValues(), Name(), TPZCompEl::TPZCompEl(), TPZCompElDisc::TPZCompElDisc(), and TPZInterfaceElement::TPZInterfaceElement().
|
pure virtual |
Returns the dimension of the master element related for the cubature rule.
Implemented in TPZInt1Point, TPZIntPrism3D, TPZIntPyram3D, TPZIntTetra3D, TPZIntCube3D, TPZIntQuad, TPZIntTriang, and TPZInt1d.
Referenced by pzgeom::GPr< TFather, Topology >::Diagnostic(), and Name().
|
virtual |
Returns the minimum order to integrate polinomials exactly for all implemented cubature rules.
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 in TPZInt1Point, TPZIntPrism3D, TPZIntPyram3D, TPZIntTetra3D, TPZIntCube3D, TPZIntQuad, TPZIntTriang, and TPZInt1d.
Definition at line 30 of file pzquad.cpp.
References TPZIntRuleP3D::NRULESPYRAMID_ORDER, TPZIntRuleT3D::NRULESTETRAHEDRA_ORDER, and TPZIntRuleT::NRULESTRIANGLE_ORDER.
Referenced by TPZInterfaceElement::CalcResidual(), TPZInterfaceElement::ComputeErrorFace(), TPZMultiphysicsCompEl< TGeometry >::EvaluateError(), TPZInterpolationSpace::EvaluateError(), TPZSBFemVolume::EvaluateError(), TPZInterfaceElement::EvaluateInterfaceJump(), TPZCompElDisc::EvaluateSquareResidual2D(), TPZMathTools::IntegrateFunction(), TPZInterfaceElement::IntegrateInterface(), TPZInterpolationSpace::InterpolateSolution(), TPZInterpolationSpace::MinMaxSolutionValues(), and Name().
|
pure virtual |
Gets the order of the integration rule for each dimension of the master element.
ord | Vector (3d) to get the orders of the polinomial integrated exactly. |
Implemented in TPZInt1Point, TPZIntPrism3D, TPZIntPyram3D, TPZIntTetra3D, TPZIntCube3D, TPZIntQuad, TPZIntTriang, and TPZInt1d.
Referenced by TPZInterpolationSpace::BuildTransferMatrix(), TPZInterpolatedElement::BuildTransferMatrix(), TPZInterpolationSpace::ComputeError(), TPZMGAnalysis::ElementError(), TPZMultiphysicsCompEl< TGeometry >::EvaluateError(), TPZInterpolationSpace::EvaluateError(), TPZSBFemVolume::EvaluateError(), TPZInterfaceElement::EvaluateInterfaceJump(), TPZInterpolationSpace::InterpolateSolution(), TPZInterpolationSpace::MinMaxSolutionValues(), Name(), TPZInterpolatedElement::Print(), and TPZCompElDisc::Write().
|
inlinevirtual |
Returns the name of the cubature rule.
Reimplemented in TPZInt1Point, TPZIntPrism3D, TPZIntPyram3D, TPZIntTetra3D, TPZIntCube3D, TPZIntQuad, TPZIntTriang, and TPZInt1d.
Definition at line 41 of file tpzintpoints.h.
References Clone(), Dimension(), GetMaxOrder(), GetOrder(), NPoints(), Point(), PrismExtend(), and SetOrder().
|
pure virtual |
Returns number of points for the cubature rule related.
Implemented in TPZInt1Point, TPZIntPrism3D, TPZIntPyram3D, TPZIntTetra3D, TPZIntCube3D, TPZIntQuad, TPZIntTriang, TPZInt1d, and TPZIntQuadQuarterPoint.
Referenced by TPZCompElDisc::AccumulateIntegrationRule(), TPZInterpolatedElement::AdjustPreferredSideOrder(), TPZGeoElSide::Area(), TPZPostProcAnalysis::AutoBuildDisc(), TPZInterpolationSpace::BuildTransferMatrix(), TPZInterpolatedElement::BuildTransferMatrix(), TPZCompElDisc::BuildTransferMatrix(), TPZInterpolatedElement::CalcIntegral(), TPZCompElPostProc< TCOMPEL >::CalcResidual(), TPZInterpolationSpace::CalcResidual(), TPZInterfaceElement::CalcResidual(), TPZMultiphysicsCompEl< TGeometry >::CalcResidual(), TPZMultiphysicsInterfaceElement::CalcStiff(), TPZInterpolationSpace::CalcStiff(), TPZInterfaceElement::CalcStiff(), TPZMultiphysicsCompEl< TGeometry >::CalcStiff(), TPZInterpolatedElement::CheckElementConsistency(), TPZCheckGeom::CheckNeighbourMap(), TPZCheckRestraint::CheckRestraint(), TPZCheckGeom::CheckSideTransform(), TPZCheckGeom::CheckSubFatherTransform(), TPZInterpolatedElement::CompareElement(), CompareFluxes(), TPZInterpolationSpace::ComputeError(), TPZInterfaceElement::ComputeErrorFace(), TPZSBFemVolume::ComputeKMatrices(), TPZGeoEl::ComputeParamTrans(), TPZRefPattern::ComputeParamTransform(), TPZRefPatternTools::ConstJacobian(), pzgeom::GPr< TFather, Topology >::Diagnostic(), TPZMGAnalysis::ElementError(), TPZMultiphysicsCompEl< TGeometry >::EvaluateError(), TPZInterpolationSpace::EvaluateError(), TPZSBFemVolume::EvaluateError(), TPZInterfaceElement::EvaluateInterfaceJump(), TPZCompElDisc::EvaluateSquareResidual2D(), TPZCompElWithMem< TBASE >::ForcePrepareIntPtIndices(), TPZGradientReconstruction::TPZGradientData::GetCenterPointAndCellAveraged(), TPZMathTools::IntegrateFunction(), TPZInterfaceElement::IntegrateInterface(), TPZMultiphysicsCompEl< TGeometry >::IntegrateSolution(), TPZInterpolationSpace::IntegrateSolution(), TPZCompEl::IntegrateSolution(), TPZInterpolationSpace::InterpolateSolution(), TPZInterpolatedElement::MeanSolution(), TPZInterpolationSpace::MinMaxSolutionValues(), Name(), TPZCompElWithMem< TBASE >::PrepareIntPtIndices(), TPZInterpolationSpace::ProjectFlux(), TPZInterpolatedElement::RestrainSide(), TPZCompElWithMem< TBASE >::SetIntegrationRule(), and TPZRefPatternTools::TransformationTest().
|
inline |
Definition at line 35 of file tpzintpoints.h.
Referenced by TPZIntTriang::operator=(), TPZIntQuad::operator=(), TPZIntCube3D::operator=(), TPZIntTetra3D::operator=(), TPZIntPyram3D::operator=(), TPZIntPrism3D::operator=(), and TPZInt1Point::operator=().
|
pure virtual |
Returns i-th point at master element and related weight.
i | Index of the integration point at cubature rule (the sequence is not important) |
pos | Vector (3d) to get the coordinates of the point at master element. |
w | It gets the weight related with integration point. |
Implemented in TPZInt1Point, TPZIntPrism3D, TPZIntPyram3D, TPZIntTetra3D, TPZIntCube3D, TPZIntQuad, TPZIntTriang, TPZInt1d, and TPZIntQuadQuarterPoint.
Referenced by TPZCompElDisc::AccumulateIntegrationRule(), TPZInterpolatedElement::AdjustPreferredSideOrder(), TPZGeoElSide::Area(), TPZInterpolationSpace::BuildTransferMatrix(), TPZInterpolatedElement::BuildTransferMatrix(), TPZCompElDisc::BuildTransferMatrix(), TPZInterpolatedElement::CalcIntegral(), TPZCompElPostProc< TCOMPEL >::CalcResidual(), TPZInterpolationSpace::CalcResidual(), TPZInterfaceElement::CalcResidual(), TPZMultiphysicsCompEl< TGeometry >::CalcResidual(), TPZMultiphysicsInterfaceElement::CalcStiff(), TPZInterpolationSpace::CalcStiff(), TPZInterfaceElement::CalcStiff(), TPZMultiphysicsCompEl< TGeometry >::CalcStiff(), TPZInterpolatedElement::CheckElementConsistency(), TPZCheckGeom::CheckNeighbourMap(), TPZCheckRestraint::CheckRestraint(), TPZCheckGeom::CheckSideTransform(), TPZCheckGeom::CheckSubFatherTransform(), TPZInterpolatedElement::CompareElement(), CompareFluxes(), TPZInterpolationSpace::ComputeError(), TPZInterfaceElement::ComputeErrorFace(), TPZSBFemVolume::ComputeKMatrices(), TPZGeoEl::ComputeParamTrans(), TPZRefPattern::ComputeParamTransform(), TPZRefPatternTools::ConstJacobian(), pzgeom::GPr< TFather, Topology >::Diagnostic(), TPZMGAnalysis::ElementError(), TPZMultiphysicsCompEl< TGeometry >::EvaluateError(), TPZInterpolationSpace::EvaluateError(), TPZSBFemVolume::EvaluateError(), TPZInterfaceElement::EvaluateInterfaceJump(), TPZCompElDisc::EvaluateSquareResidual2D(), TPZGradientReconstruction::TPZGradientData::GetCenterPointAndCellAveraged(), TPZMathTools::IntegrateFunction(), TPZInterfaceElement::IntegrateInterface(), TPZMultiphysicsCompEl< TGeometry >::IntegrateSolution(), TPZInterpolationSpace::IntegrateSolution(), TPZCompEl::IntegrateSolution(), TPZInterpolationSpace::InterpolateSolution(), TPZInterpolatedElement::MeanSolution(), TPZInterpolationSpace::MinMaxSolutionValues(), Name(), TPZInterpolationSpace::ProjectFlux(), TPZInterpolatedElement::RestrainSide(), and TPZRefPatternTools::TransformationTest().
|
virtual |
Prints information of the cubature rule.
out | Ostream to print. |
Reimplemented in TPZInt1d.
Definition at line 38 of file pzquad.cpp.
Referenced by pztopology::Pr< TFather >::Diagnostic(), TPZInterpolatedElement::Print(), TPZMultiphysicsCompEl< TGeometry >::Print(), and SetType().
|
pure virtual |
Implemented in TPZInt1Point, TPZIntPrism3D, TPZIntPyram3D, TPZIntTetra3D, TPZIntCube3D, TPZIntQuad, TPZIntTriang, and TPZInt1d.
Referenced by pztopology::Pr< TFather >::CreateSideIntegrationRule(), and Name().
|
pure virtual |
Sets the order of the cubature rule.
ord | Vector of orders for each dimension, to reach a exactly integration for polinomial corresponding |
type | Type of the integration rule, mainly important for 1d rules. |
Implemented in TPZInt1Point, TPZIntPrism3D, TPZIntPyram3D, TPZIntTetra3D, TPZIntCube3D, TPZIntQuad, TPZIntTriang, TPZInt1d, and TPZIntQuadQuarterPoint.
Referenced by TPZInterpolationSpace::BuildTransferMatrix(), TPZInterpolatedElement::BuildTransferMatrix(), TPZInterfaceElement::CalcResidual(), TPZMultiphysicsCompEl< TGeometry >::CalcResidual(), TPZMultiphysicsCompEl< TGeometry >::CalcStiff(), TPZCheckRestraint::CheckRestraint(), TPZInterpolationSpace::ComputeError(), TPZInterfaceElement::ComputeErrorFace(), TPZGeoEl::ComputeParamTrans(), TPZRefPattern::ComputeParamTransform(), TPZMGAnalysis::ElementError(), TPZMultiphysicsCompEl< TGeometry >::EvaluateError(), TPZInterpolationSpace::EvaluateError(), TPZSBFemVolume::EvaluateError(), TPZInterfaceElement::EvaluateInterfaceJump(), TPZCompElDisc::EvaluateSquareResidual2D(), TPZMathTools::IntegrateFunction(), TPZInterfaceElement::IntegrateInterface(), TPZMultiphysicsCompEl< TGeometry >::IntegrateSolution(), TPZInterpolationSpace::InterpolateSolution(), TPZInterpolationSpace::MinMaxSolutionValues(), Name(), TPZCompElDisc::Read(), TPZSBFemVolume::SetIntegrationRule(), TPZMultiphysicsCompEl< TGeometry >::SetIntegrationRule(), and TPZRefPatternTools::TransformationTest().
|
inlinevirtual |
Sets the type of gaussian quadrature as Lobatto, Raud or Legendre rule.
Reimplemented in TPZIntPrism3D, TPZIntCube3D, TPZIntQuad, and TPZInt1d.
Definition at line 80 of file tpzintpoints.h.
References Print().