18 SetFreeIntPtIndices();
21 template <
class TBASE>
28 if(fIntPtIndices.NElements())
32 std::stringstream sout;
33 sout << __PRETTY_FUNCTION__ <<
" Attempting to add memory indices to an already configured TPZCompElWithMem";
42 PZError <<
"Error at " << __PRETTY_FUNCTION__ <<
" this->Material() == NULL\n";
46 if (this->NumberOfCompElementsInsideThisCompEl() == 0) {
51 const TPZIntPoints &intrule = TBASE::GetIntegrationRule();
54 int intrulepoints = intrule.
NPoints();
56 fIntPtIndices.Resize(intrulepoints);
58 for(
int int_ind = 0; int_ind < intrulepoints; ++int_ind){
59 fIntPtIndices[int_ind] = this->Material()->PushMemItem();
75 if(fIntPtIndices.NElements())
79 std::stringstream sout;
80 sout << __PRETTY_FUNCTION__ <<
" Attempting to add memory indices to an already configured TPZCompElWithMem";
89 PZError <<
"Error at " << __PRETTY_FUNCTION__ <<
" this->Material() == NULL\n";
92 if (this->LeftElementSide().Element() == 0 || this->RightElementSide().Element() == 0) {
96 if (this->NumberOfCompElementsInsideThisCompEl() == 0) {
104 int intrulepoints = intrule.
NPoints();
106 fIntPtIndices.Resize(intrulepoints);
108 for(
int int_ind = 0; int_ind < intrulepoints; ++int_ind){
109 fIntPtIndices[int_ind] = this->Material()->PushMemItem();
Contains TPZShapeTetra class which implements the shape functions of a tetrahedral element...
virtual int NPoints() const =0
Returns number of points for the cubature rule related.
Contains the declaration of the TPZCompElWithMem class, it is as TPZCompEl with enable material memor...
virtual ~TPZCompElWithMem()
virtual void PrepareIntPtIndices() override
PrepareIntPtIndices initializes the material damage varibles memory in the proper material class...
Contains TPZShapeLinear class which implements the shape functions of a linear one-dimensional elemen...
Abstract class defining integration rules. Numerical Integration.
This abstract class defines the behaviour which each derived class needs to implement.
Contains TPZShapeCube class which implements the shape functions of a hexaedral element.
virtual TPZMaterial * Material() const
Identify the material object associated with the element.
Contains the TPZGeoTetrahedra class which implements the geometry of a tetrahedral element...
Contains declaration of TPZInterfaceElement class which computes the contribution over an interface b...
Contains the declaration of multiphysic interface class.
Contains TPZShapePoint class which implements the shape function associated with a point...
#define LOGPZ_ERROR(A, B)
Define log for errors (cout)
Contains the TPZGeoCube class which implements the geometry of hexahedra element. ...
Contains the TPZGeoPoint class which implements the geometry of a point element or 0-D element...
Contains TPZShapePrism class which implements the shape functions of a prism element.
Contains TPZShapePiram class which implements the shape functions of a pyramid element.
Contains the TPZGeoPyramid class which implements the geometry of pyramid element.
virtual const TPZIntPoints & GetIntegrationRule() const
Contains the TPZGeoPrism class which implements the geometry of a prism element.
Contains TPZShapeQuad class which implements the shape functions of a quadrilateral element...
Contains TPZShapeTriang class which implements the shape functions of a triangular element...
Implements an interface to register a class id and a restore function. Persistence.
#define PZError
Defines the output device to error messages and the DebugStop() function.