NeoPZ
Public Member Functions | Protected Member Functions | Private Attributes | List of all members
TPZCompElHDiv< TSHAPE > Class Template Reference

#include <pzelchdiv.h>

Inheritance diagram for TPZCompElHDiv< TSHAPE >:
[legend]
Collaboration diagram for TPZCompElHDiv< TSHAPE >:
[legend]

Public Member Functions

 TPZCompElHDiv (TPZCompMesh &mesh, TPZGeoEl *gel, int64_t &index)
 
 TPZCompElHDiv (TPZCompMesh &mesh, const TPZCompElHDiv< TSHAPE > &copy)
 
 TPZCompElHDiv (TPZCompMesh &mesh, const TPZCompElHDiv< TSHAPE > &copy, std::map< int64_t, int64_t > &gl2lcConMap, std::map< int64_t, int64_t > &gl2lcElMap)
 Constructor used to generate patch mesh... generates a map of connect index from global mesh to clone mesh. More...
 
 TPZCompElHDiv ()
 
virtual ~TPZCompElHDiv ()
 
virtual TPZCompElClone (TPZCompMesh &mesh) const override
 Method for creating a copy of the element. More...
 
virtual TPZCompElClonePatchEl (TPZCompMesh &mesh, std::map< int64_t, int64_t > &gl2lcConMap, std::map< int64_t, int64_t > &gl2lcElMap) const override
 Create a copy of the given element. The clone copy have the connect indexes mapped to the local clone connects by the given map. More...
 
virtual void SetCreateFunctions (TPZCompMesh *mesh) override
 Set create function in TPZCompMesh to create elements of this type. More...
 
virtual void Print (std::ostream &out=std::cout) const override
 Prints the relevant data of the element to the output stream. More...
 
virtual MElementType Type () override
 Return the type of the element. More...
 
virtual int NConnects () const override
 Returns the number of connect objects of the element. More...
 
virtual void SetConnectIndex (int i, int64_t connectindex) override
 Sets the node pointer of node i to nod. More...
 
int RestrainedFace ()
 return the first one dof restraint More...
 
virtual int NConnectShapeF (int connect, int order) const override
 Number of shapefunctions of the connect associated. More...
 
virtual int Dimension () const override
 Returns the dimension of the element. More...
 
virtual int NCornerConnects () const override
 Returns the number of corner connects of the element. More...
 
virtual int NFluxShapeF () const
 return the number of shape for flux(just for flux) More...
 
virtual int NSideConnects (int side) const override
 Returns the number of dof nodes along side iside. More...
 
virtual int SideConnectLocId (int node, int side) const override
 return the local index for connect More...
 
virtual int ConnectSideLocId (int connect) const
 return the local index for side More...
 
virtual int64_t ConnectIndex (int con) const override
 Returns the index of the ith connectivity of the element. More...
 
virtual void AddShapeRestraint (TPZOneShapeRestraint restraint) override
 Add a shape restraint (meant to fit the pyramid to restraint. More...
 
virtual std::list< TPZOneShapeRestraintGetShapeRestraints () const override
 Return a list with the shape restraints. More...
 
virtual void ResetShapeRestraints () override
 Return a list with the shape restraints. More...
 
virtual int GetSideOrient (int side) override
 It returns the normal orientation of the reference element by the side. Only side that has dimension larger than zero and smaller than me. More...
 
virtual void SetSideOrient (int side, int sideorient) override
 It set the normal orientation of the element by the side. Only side that has dimension equal to my dimension minus one. More...
 
virtual void SetIntegrationRule (int ord) override
 
virtual void GetInterpolationOrder (TPZVec< int > &ord) override
 Identifies the interpolation order on the interior of the element. More...
 
virtual int PreferredSideOrder (int iside) override
 Returns the preferred order of the polynomial along side iside. More...
 
virtual void SetPreferredOrder (int order) override
 Sets the preferred interpolation order along a side. More...
 
virtual void SetSideOrder (int side, int order) override
 Sets the interpolation order of side to order. More...
 
virtual int EffectiveSideOrder (int side) const override
 Returns the actual interpolation order of the polynomial along the side. More...
 
virtual int ConnectOrder (int connect) const override
 return the interpolation order of the polynomial for connect More...
 
int NShapeContinuous (TPZVec< int > &order)
 return the number of continuous functions More...
 
void FillOrder (TPZVec< int > &order) const
 Fill the polynomial order needed from the continuous shape functions. More...
 
virtual int MaxOrder () override
 Return the maximum order?? More...
 
int SideOrient (int face)
 the orientation of the face More...
 
virtual void InitMaterialData (TPZMaterialData &data) override
 Initialize a material data and its attributes based on element dimension, number of state variables and material definitions. More...
 
virtual void ComputeRequiredData (TPZMaterialData &data, TPZVec< REAL > &qsi) override
 Compute and fill data with requested attributes. More...
 
void ComputeShapeIndex (TPZVec< int > &sides, TPZVec< int64_t > &shapeindex)
 Compute the correspondence between the normal vectors and the shape functions. More...
 
void FirstShapeIndex (TPZVec< int64_t > &Index) const
 Returns the vector index of the first index shape associate to to each side Special implementation to Hdiv. More...
 
void IndexShapeToVec (TPZVec< int > &VectorSide, TPZVec< std::pair< int, int64_t > > &IndexVecShape, int pressureorder)
 Returns a matrix index of the shape and vector associate to element. More...
 
void IndexShapeToVec (TPZVec< int > &VectorSide, TPZVec< int > &bilinear, TPZVec< int > &direction, TPZVec< std::pair< int, int64_t > > &IndexVecShape, int pressureorder)
 Returns a matrix index of the shape and vector associate to element. More...
 
void IndexShapeToVec2 (TPZVec< int > &VectorSide, TPZVec< int > &bilinear, TPZVec< int > &direction, TPZVec< std::pair< int, int64_t > > &IndexVecShape, int pressureorder)
 
virtual void SideShapeFunction (int side, TPZVec< REAL > &point, TPZFMatrix< REAL > &phi, TPZFMatrix< REAL > &dphi) override
 Computes the values of the shape function of the side. More...
 
void Shape (TPZVec< REAL > &pt, TPZFMatrix< REAL > &phi, TPZFMatrix< REAL > &dphi) override
 Computes the shape function set at the point x. More...
 
virtual void Solution (TPZVec< REAL > &qsi, int var, TPZVec< STATE > &sol) override
 Compute the solution for a given variable. More...
 
virtual void ComputeSolution (TPZVec< REAL > &qsi, TPZSolVec &sol, TPZGradSolVec &dsol, TPZFMatrix< REAL > &axes) override
 Computes solution and its derivatives in the local coordinate qsi. More...
 
virtual void ComputeSolution (TPZVec< REAL > &qsi, TPZMaterialData &data) override
 Compute shape functions based on master element in the classical FEM manne. More...
 
void ComputeSolutionHDiv (TPZVec< REAL > &qsi, TPZMaterialData &data)
 
virtual void ComputeSolution (TPZVec< REAL > &qsi, TPZFMatrix< REAL > &phi, TPZFMatrix< REAL > &dphix, const TPZFMatrix< REAL > &axes, TPZSolVec &sol, TPZGradSolVec &dsol) override
 Computes solution and its derivatives in local coordinate qsi. More...
 
virtual void ComputeSolution (TPZVec< REAL > &qsi, TPZVec< REAL > &normal, TPZSolVec &leftsol, TPZGradSolVec &dleftsol, TPZFMatrix< REAL > &leftaxes, TPZSolVec &rightsol, TPZGradSolVec &drightsol, TPZFMatrix< REAL > &rightaxes) override
 Computes solution and its derivatives in the local coordinate qsi. More...
 
void ComputeSolutionHDiv (TPZMaterialData &data)
 Compute the solution using Hdiv structure. More...
 
void CreateGraphicalElement (TPZGraphMesh &grafgrid, int dimension) override
 Creates corresponding graphical element(s) if the dimension matches graphical elements are used to generate output files. More...
 
TPZTransform TransformSideToElement (int side) override
 Returns the transformation which transform a point from the side to the interior of the element. More...
 
int ClassId () const override
 Returns the unique identifier for reading/writing objects to streams. More...
 
void Write (TPZStream &buf, int withclassid) const override
 Save the element data to a stream. More...
 
void Read (TPZStream &buf, void *context) override
 Read the element data from a stream. More...
 
virtual void PRefine (int order) override
 Refinement along the element. More...
 
template<>
int RestrainedFace ()
 
- Public Member Functions inherited from TPZIntelGen< TSHAPE >
 TPZIntelGen (TPZCompMesh &mesh, TPZGeoEl *gel, int64_t &index)
 
 TPZIntelGen (TPZCompMesh &mesh, TPZGeoEl *gel, int64_t &index, int nocreate)
 
 TPZIntelGen (TPZCompMesh &mesh, const TPZIntelGen< TSHAPE > &copy)
 
 TPZIntelGen (TPZCompMesh &mesh, const TPZIntelGen< TSHAPE > &copy, std::map< int64_t, int64_t > &gl2lcConMap, std::map< int64_t, int64_t > &gl2lcElMap)
 Constructor used to generate patch mesh... generates a map of connect index from global mesh to clone mesh. More...
 
 TPZIntelGen ()
 
virtual ~TPZIntelGen ()
 
virtual void SetInterpolationOrder (int order)
 Sets the interpolation order for the interior of the element. More...
 
void Shape (TPZVec< REAL > &pt, TPZFMatrix< REAL > &phi, TPZFMatrix< REAL > &dphi) override
 Computes the shape function set at the point x. More...
 
void CreateGraphicalElement (TPZGraphMesh &grafgrid, int dimension) override
 Creates corresponding graphical element(s) if the dimension matches graphical elements are used to generate output files. More...
 
TPZTransform TransformSideToElement (int side) override
 Returns the transformation which transform a point from the side to the interior of the element. More...
 
virtual const TPZIntPointsGetIntegrationRule () const override
 Returns a reference to an integration rule suitable for integrating the interior of the element. More...
 
virtual TPZIntPointsGetIntegrationRule () override
 Returns a reference to an integration rule suitable for integrating the interior of the element. More...
 
template<>
void CreateGraphicalElement (TPZGraphMesh &grafgrid, int dimension)
 Creates corresponding graphical element(s) if the dimension matches graphical elements are used to generate output files. More...
 
- Public Member Functions inherited from TPZInterpolatedElement
 TPZInterpolatedElement (TPZCompMesh &mesh, TPZGeoEl *reference, int64_t &index)
 Constructor with a mesh and geometric element as arguments. More...
 
 TPZInterpolatedElement (TPZCompMesh &mesh, const TPZInterpolatedElement &copy)
 Constructor aimed at creating a copy of an interpolated element within a new mesh. More...
 
 TPZInterpolatedElement (TPZCompMesh &mesh, const TPZInterpolatedElement &copy, std::map< int64_t, int64_t > &gl2lcElMap)
 Copy the given element into a new patch mesh. More...
 
 TPZInterpolatedElement ()
 
virtual ~TPZInterpolatedElement ()
 Destructor, does nothing. More...
 
int ClassId () const override
 Define the class id associated with the class. More...
 
void Write (TPZStream &buf, int withclassid) const override
 Saves the element data to a stream. More...
 
void Read (TPZStream &buf, void *context) override
 Reads the element data from a stream. More...
 
virtual void SetInterface (int, int64_t)
 To enable to work with discontinuous element that can have interface elements. More...
 
virtual int Interface (int)
 
virtual int CanHaveInterface ()
 
virtual void DeleteInterfaces ()
 
REAL MeanSolution (int var)
 Returns total mass contained into the element. More...
 
void CalcIntegral (TPZElementMatrix &ef)
 Computes the integral over the finite element. More...
 
int NShapeF () const override
 Returns the total number of shapefunctions. More...
 
int NSideShapeF (int side) const
 Returns the number of shape functions on a side. More...
 
virtual int MidSideConnectLocId (int is) const
 Returns the local id of the connect in the middle of the side. More...
 
virtual TPZConnectMidSideConnect (int is) const
 Returns a reference to the connect in the middle of the side. More...
 
int64_t SideConnectIndex (int icon, int is) const
 Returns the index of the c th connect object along side is. More...
 
TPZConnectSideConnect (int icon, int is)
 Returns a pointer to the icon th connect object along side is. More...
 
virtual void BuildCornerConnectList (std::set< int64_t > &connectindexes) const override
 adds the connect indexes associated with base shape functions to the set More...
 
int AdjustPreferredSideOrder (int side, int order)
 Adjusts the preferredSideOrder for faces. More...
 
bool VerifyConstraintConsistency (int side, TPZCompElSide large) const
 return true if the connects associated with the side have dependency with large and if the dependency dimensions match More...
 
virtual void ForceSideOrder (int side, int order)
 Impose an interpolation order on a given side (without using computesideorder) More...
 
virtual REAL CompareElement (int var, char *matname) override
 Compare the L2 norm of the difference between the Å¡varÅ¡ solution of the current element with the Å¡varÅ¡ solution of the element which is pointed to by the geometric element. More...
 
void CheckConstraintConsistency (int side)
 Check the consistency of the constrained connects along a side. More...
 
void CheckConstraintConsistency ()
 Check the consistency of the constrained connects for all sides. More...
 
virtual int CheckElementConsistency ()
 Checks element data structure consistancy. More...
 
int CompareShapeF (int sides, int sidel, TPZFMatrix< REAL > &phis, TPZFMatrix< REAL > &dphis, TPZFMatrix< REAL > &phil, TPZFMatrix< REAL > &dphil, TPZTransform<> &transform)
 Compare the shape functions of sides of an element. More...
 
void Divide (int64_t index, TPZVec< int64_t > &sub, int interpolatesolution=0) override
 Implement the refinement of an interpolated element. More...
 
void PRefine (int order) override
 Changes the interpolation order of a side. Updates all constraints and block sizes
. More...
 
virtual void RestrainSide (int side, TPZInterpolatedElement *neighbour, int neighbourside)
 Compute the shapefunction restraints which need to be applied to the shape functions on the side of the element. More...
 
virtual void RemoveSideRestraintsII (MInsertMode mode)
 Delete the restraints on the nodes of the connected elements if necessary. More...
 
virtual void RemoveSideRestraintWithRespectTo (int side, const TPZCompElSide &neighbour)
 Removes the side restraints of the current element along side with respect to neighbour/side. More...
 
void RecomputeRestraints (int side)
 Will recompute the restraints of all connects which are restrained by this side. More...
 
virtual void BuildTransferMatrix (TPZInterpolatedElement &coarsel, TPZTransform<> &t, TPZTransfer< STATE > &transfer)
 Accumulates the transfer coefficients between the current element and the coarse element into the transfer matrix, using the transformation t. More...
 
virtual int64_t CreateMidSideConnect (int side)
 Verify the neighbours of the element and create a node along this side. More...
 
virtual void IdentifySideOrder (int side)
 Checks if the side order is consistent with the preferred side order and with the constraints and recomputes the constraints if necessary. More...
 
- Public Member Functions inherited from TPZInterpolationSpace
 TPZInterpolationSpace ()
 Default constructor. More...
 
virtual ~TPZInterpolationSpace ()
 Default destructor. More...
 
 TPZInterpolationSpace (TPZCompMesh &mesh, const TPZInterpolationSpace &copy)
 Puts a copy of the element in the referred mesh. More...
 
 TPZInterpolationSpace (TPZCompMesh &mesh, const TPZInterpolationSpace &copy, std::map< int64_t, int64_t > &gl2lcElMap)
 Puts a copy of the element in the patch mesh. More...
 
 TPZInterpolationSpace (TPZCompMesh &mesh, const TPZInterpolationSpace &copy, int64_t &index)
 Copy of the element in the new mesh whit alocated index. More...
 
 TPZInterpolationSpace (TPZCompMesh &mesh, TPZGeoEl *gel, int64_t &index)
 Create a computational element within mesh. More...
 
virtual void ComputeShape (TPZVec< REAL > &intpoint, TPZMaterialData &data)
 Compute shape functions based on master element in the classical FEM manne. More...
 
virtual void ComputeRequiredData (TPZVec< REAL > &intpointtemp, TPZVec< TPZTransform< REAL > > &trvec, TPZVec< TPZMaterialData > &datavec)
 Compute and fill data with requested attributes for each of the compels in fElementVec. More...
 
virtual void ComputeNormal (TPZMaterialData &data)
 Computes the proper normal vector towards the neighbour element. More...
 
void VectorialProd (TPZVec< REAL > &ivec, TPZVec< REAL > &jvec, TPZVec< REAL > &kvec, bool unitary=false)
 Computes the vectorial product of two vectors and normalize the result if unitary is set to true. More...
 
virtual void CalcStiff (TPZElementMatrix &ek, TPZElementMatrix &ef) override
 Computes the element stiffness matrix and right hand side. More...
 
virtual void CalcResidual (TPZElementMatrix &ef) override
 Only computes the element residual. More...
 
virtual void InitializeElementMatrix (TPZElementMatrix &ek, TPZElementMatrix &ef)
 Initialize element matrix in which is computed CalcStiff. More...
 
virtual void InitializeElementMatrix (TPZElementMatrix &ef)
 Initialize element matrix in which is computed in CalcResidual. More...
 
void MinMaxSolutionValues (TPZVec< STATE > &min, TPZVec< STATE > &max)
 Returns minimum and maximum values for each state variable. More...
 
virtual REAL InnerRadius ()
 Returns the inner radius value. More...
 
void InterpolateSolution (TPZInterpolationSpace &coarsel)
 Interpolates the solution into the degrees of freedom nodes from the degrees of freedom nodes from the coarse element. More...
 
void CreateInterfaces (bool BetweenContinuous=false)
 Create interfaces between this and its neighbours. More...
 
TPZInterfaceElementCreateInterface (int side, bool BetweenContinuous=false)
 Create an interface between this and the neighbour by side side. More...
 
int ExistsInterface (TPZGeoElSide geosd)
 Verify existence of interface. More...
 
void RemoveInterfaces ()
 Remove interfaces connected to this element. More...
 
void RemoveInterface (int side)
 Remove interface which is neighbour from side side. More...
 
virtual void EvaluateError (std::function< void(const TPZVec< REAL > &loc, TPZVec< STATE > &val, TPZFMatrix< STATE > &deriv)> func, TPZVec< REAL > &errors, bool store_error) override
 Performs an error estimate on the elemen. More...
 
virtual void ComputeError (int errorid, TPZVec< REAL > &error) override
 Computes the element error estimator. More...
 
virtual TPZVec< STATE > IntegrateSolution (int variable) const override
 Integrate a variable over the element. More...
 
virtual void Integrate (int variable, TPZVec< STATE > &value) override
 Integrates a variable over the element. More...
 
void ProjectFlux (TPZElementMatrix &ek, TPZElementMatrix &ef) override
 Integrate the solution over the element. More...
 
virtual int GetPreferredOrder ()
 Returns the prefered order for the element. More...
 
void BuildTransferMatrix (TPZInterpolationSpace &coarsel, TPZTransform<> &t, TPZTransfer< STATE > &transfer)
 Accumulates the transfer coefficients between the current element and the coarse element
into the transfer matrix, using the transformation t. More...
 
int NSideShapeF (int side) const
 Returns the number of shape functions on a side. More...
 
int64_t SideConnectIndex (int icon, int is) const
 Returns the index of the c th connect object along side is. More...
 
TPZConnectSideConnect (int icon, int is) const
 Returns a pointer to the icon th connect object along side is. More...
 
virtual void AdjustIntegrationRule ()
 Adjust the integration rule according to the polynomial order of shape functions. More...
 
virtual int ComputeIntegrationOrder () const override
 Compute integration order according to ... . More...
 
virtual void ComputeShape (TPZVec< REAL > &intpoint, TPZVec< REAL > &X, TPZFMatrix< REAL > &jacobian, TPZFMatrix< REAL > &axes, REAL &detjac, TPZFMatrix< REAL > &jacinv, TPZFMatrix< REAL > &phi, TPZFMatrix< REAL > &dphi, TPZFMatrix< REAL > &dphidx)
 Compute shape functions based on master element in the classical FEM manner. More...
 
- Public Member Functions inherited from TPZCompEl
 TPZCompEl ()
 Simple Constructor. More...
 
virtual ~TPZCompEl ()
 Simple destructor. More...
 
 TPZCompEl (TPZCompMesh &mesh, const TPZCompEl &copy)
 Put a copy of the element in the referred mesh. More...
 
 TPZCompEl (TPZCompMesh &mesh, const TPZCompEl &copy, std::map< int64_t, int64_t > &gl2lcElMap)
 Put a copy of the element in the patch mesh. More...
 
 TPZCompEl (TPZCompMesh &mesh, const TPZCompEl &copy, int64_t &index)
 Copy of the element in the new mesh returning allocated index. More...
 
 TPZCompEl (TPZCompMesh &mesh, TPZGeoEl *gel, int64_t &index)
 Creates a computational element within mesh. Inserts the element within the data structure of the mesh. More...
 
virtual REAL VolumeOfEl ()
 Returns the volume of the geometric element associated. More...
 
virtual void LoadElementReference ()
 Loads the geometric element reference. More...
 
virtual void Assemble ()
 Computes the element stifness matrix and right hand side in an internal data structure. Used for initializing condensed element data structures. More...
 
virtual bool HasMaterial (const std::set< int > &materialids) const
 Verifies if the material associated with the element is contained in the set. More...
 
virtual void GetMemoryIndices (TPZVec< int64_t > &indices) const
 Get the indices of the vector of element memory associated with the integration points. More...
 
virtual void SetMemoryIndices (TPZVec< int64_t > &indices)
 Set the indices of the vector of element memory associated with the integration points. More...
 
virtual void PrepareIntPtIndices ()
 Prepare the vector of the material withmem with the correct integration point indexes. More...
 
virtual void ForcePrepareIntPtIndices ()
 PrepareIntPtIndices initializes the material damage varibles memory in the proper material class. More...
 
virtual void SetFreeIntPtIndices ()
 Frees the material damage varibles memory in the proper material class. More...
 
virtual int NumberOfCompElementsInsideThisCompEl ()
 Return the size of the elementvec in multiphysics, if it is not multiphysics, just return 1. More...
 
virtual void TransferMultiphysicsElementSolution ()
 
virtual void SetMultiphysicsElementSolution ()
 
virtual TPZVec< STATE > IntegrateSolution (const std::string &varname, const std::set< int > &matids)
 Compute the integral of a variable defined by the string if the material id is included in matids. More...
 
virtual void BuildConnectList (std::set< int64_t > &indepconnectlist, std::set< int64_t > &depconnectlist)
 Builds the list of all connectivities related to the element including the connects pointed to by dependent connects. More...
 
virtual void BuildConnectList (TPZStack< int64_t > &connectlist) const
 Builds the list of all connectivities related to the element including the connects pointed to by dependent connects. More...
 
virtual void BuildConnectList (std::set< int64_t > &connectlist)
 Builds the list of all connectivities related to the element including the connects pointed to by dependent connects. More...
 
virtual int HasDependency ()
 Returns 1 if the element has at least one dependent node. Returns 0 otherwise. More...
 
virtual int PressureConnectIndex () const
 Returns the index of the pressure connect. More...
 
virtual void ReduceInternalNodes ()
 Domain Decomposition.
This method will eliminate the nodes which are internal to the element from the datastructure of the grid
After calling this method, the superelement will statically condense the internal equations. More...
 
virtual void CalcBlockDiagonal (TPZStack< int64_t > &connectlist, TPZBlockDiagonal< STATE > &block)
 Calculates the diagonal block. More...
 
REAL MaximumRadiusOfEl ()
 Will return the maximum distance between the nodes of the reference element. More...
 
REAL LesserEdgeOfEl ()
 Will return the smallest distance between two nodes of the reference element. More...
 
virtual void InitializeIntegrationRule ()
 
virtual void SetIntegrationRule (TPZIntPoints *intrule)
 Method to set a dynamically allocated integration rule. More...
 
virtual int IsInterface ()
 
TPZGeoElReference () const
 Return a pointer to the corresponding geometric element if such exists, return 0 otherwise. More...
 
void SetReference (int64_t referenceindex)
 
virtual bool NeedsComputing (const std::set< int > &materialids)
 return true if the element has a variational statement associated with the material ids More...
 
virtual int NEquations ()
 Returns the number of equations of the element. More...
 
int64_t Index () const
 Returns element index of the mesh fELementVec list. More...
 
void SetIndex (int64_t index)
 Sets element index of the mesh fELementVec list. More...
 
virtual TPZConnectConnect (int i) const
 Returns a pointer to the ith node. More...
 
virtual TPZMaterialMaterial () const
 Identify the material object associated with the element. More...
 
TPZGeoElGetRefElPatch ()
 Returns the reference geometric element patch.
Look for a geometric element which refers to a computational element and is neighbour of the current element AND is larger than the current element. More...
 
virtual void LoadSolution ()
 Loads the solution within the internal data structure of the element. More...
 
void SetMesh (TPZCompMesh *mesh)
 Sets the grid of the element. More...
 
TPZCompMeshMesh () const
 Return a pointer to the grid of the element. More...
 
virtual void PrintSolution (TPZVec< REAL > &point, const char *VarName, std::ostream &out)
 Prints the solution - sol - for the variable "VarName" at point specified in terms of the master element coordinates. More...
 
virtual void PrintCoordinate (TPZVec< REAL > &point, int CoordinateIndex, std::ostream &out)
 Prints one coordinate index corresponding to the point to the output stream. More...
 
virtual void PrintTitle (const char *VarName, std::ostream &out)
 Prints the variables names associated with the element material. More...
 
- Public Member Functions inherited from TPZSavable
 TPZSavable ()
 
virtual ~TPZSavable ()
 
virtual std::list< std::map< std::string, uint64_t > > VersionHistory () const
 
virtual std::pair< std::string, uint64_t > Version () const
 
virtual bool Compare (TPZSavable *copy, bool override=false)
 Compares the object for identity with the object pointed to, eventually copy the object. More...
 
virtual bool Compare (TPZSavable *copy, bool override=false) const
 Compares the object for identity with the object pointed to, eventually copy the object. More...
 
- Public Member Functions inherited from TPZRegisterClassId
template<typename T >
 TPZRegisterClassId (int(T::*)() const)
 
 TPZRegisterClassId ()=default
 

Protected Member Functions

void Append (TPZFMatrix< REAL > &u1, TPZFMatrix< REAL > &u2, TPZFMatrix< REAL > &u12)
 To append vectors. More...
 
- Protected Member Functions inherited from TPZInterpolatedElement
void UpdateNeighbourSideOrder (int side, TPZVec< TPZCompElSide > &elvec)
 Updates the interpolation order of all neighbouring elements along side to have side order equal to the side order of the current element. More...
 
- Protected Member Functions inherited from TPZInterpolationSpace
void ExpandShapeFunctions (TPZVec< int64_t > &connectlist, TPZVec< int > &dependencyorder, TPZVec< int > &blocksizes, TPZFMatrix< REAL > &phi, TPZFMatrix< REAL > &dphi)
 Auxiliary method to expand a vector of shapefunctions and their derivatives to acount for constraints. More...
 

Private Attributes

TPZManVector< int, TSHAPE::NFaces > fSideOrient
 vector which defines whether the normal is outward or not More...
 
std::list< TPZOneShapeRestraintfRestraints
 Data structure which defines the restraints. More...
 

Additional Inherited Members

- Public Types inherited from TPZInterpolatedElement
enum  MInsertMode { EInsert, EDelete }
 Defines a flag indicating the state of creation/deletion of the element This has an impact on how constraints are being computed. More...
 
- Static Public Member Functions inherited from TPZInterpolationSpace
static void Convert2Axes (const TPZFMatrix< REAL > &dphi, const TPZFMatrix< REAL > &jacinv, TPZFMatrix< REAL > &dphidx)
 convert a shapefunction derivative in xi-eta to a function derivative in axes More...
 
- Static Public Member Functions inherited from TPZCompEl
static int StaticClassId ()
 
static void SetgOrder (int order)
 Sets the value of the default interpolation order. More...
 
static int GetgOrder ()
 Set the default value of the interpolation order. More...
 
static void SetOrthogonalFunction (void(*orthogonal)(REAL x, int num, TPZFMatrix< REAL > &phi, TPZFMatrix< REAL > &dphi))
 Sets the orthogonal function which will be used throughout the program by default this function is the Chebyshev function. More...
 
static void Chebyshev (REAL x, int num, TPZFMatrix< REAL > &phi, TPZFMatrix< REAL > &dphi)
 Implements of the orthogonal Chebyshev functions. More...
 
- Static Public Member Functions inherited from TPZSavable
static std::set< TPZRestoreClassBase * > & RestoreClassSet ()
 This static function guarantees that the gMap object is available when needed. More...
 
static std::map< int, TPZRestore_t > & ClassIdMap ()
 This static function guarantees that the gMap object is available when needed. More...
 
static std::pair< std::string, uint64_t > NeoPZVersion ()
 
static void Register (TPZRestoreClassBase *restore)
 
static void RegisterClassId (int classid, TPZRestore_t fun)
 
static TPZSavableCreateInstance (const int &classId)
 
- Static Protected Member Functions inherited from TPZInterpolatedElement
static int ComputeSideOrder (TPZVec< TPZCompElSide > &elementset)
 Computes the minimum interpolation order of the elements contained in elementset this method is used to identify the side order of a set of equal level elements. More...
 
- Protected Attributes inherited from TPZIntelGen< TSHAPE >
TPZManVector< int64_t, TSHAPE::NSides > fConnectIndexes
 Indexes of the connects associated with the elements. More...
 
TSHAPE::IntruleType fIntRule
 Integration rule associated with the topology of the element. More...
 
- Protected Attributes inherited from TPZInterpolationSpace
int fPreferredOrder
 Preferred polynomial order. More...
 
- Protected Attributes inherited from TPZCompEl
TPZCompMeshfMesh
 Computational mesh to which the element belongs. More...
 
int64_t fIndex
 Element index into mesh element vector. More...
 
TPZIntPointsfIntegrationRule
 Integration rule established by the user. More...
 

Detailed Description

template<class TSHAPE>
class TPZCompElHDiv< TSHAPE >

By varying the classes passed as template arguments, the complete family of computational elements are implemented

Definition at line 22 of file pzelchdiv.h.

Constructor & Destructor Documentation

◆ TPZCompElHDiv() [1/4]

template<class TSHAPE >
TPZCompElHDiv< TSHAPE >::TPZCompElHDiv ( TPZCompMesh mesh,
TPZGeoEl gel,
int64_t &  index 
)

◆ TPZCompElHDiv() [2/4]

template<class TSHAPE >
TPZCompElHDiv< TSHAPE >::TPZCompElHDiv ( TPZCompMesh mesh,
const TPZCompElHDiv< TSHAPE > &  copy 
)

◆ TPZCompElHDiv() [3/4]

template<class TSHAPE >
TPZCompElHDiv< TSHAPE >::TPZCompElHDiv ( TPZCompMesh mesh,
const TPZCompElHDiv< TSHAPE > &  copy,
std::map< int64_t, int64_t > &  gl2lcConMap,
std::map< int64_t, int64_t > &  gl2lcElMap 
)

Constructor used to generate patch mesh... generates a map of connect index from global mesh to clone mesh.

Definition at line 102 of file pzelchdiv.cpp.

References TPZIntelGen< TSHAPE >::fConnectIndexes, TPZInterpolationSpace::fPreferredOrder, LOGPZ_ERROR, and TPZCompElHDiv< TSHAPE >::NConnects().

◆ TPZCompElHDiv() [4/4]

template<class TSHAPE >
TPZCompElHDiv< TSHAPE >::TPZCompElHDiv ( )

◆ ~TPZCompElHDiv()

template<class TSHAPE >
TPZCompElHDiv< TSHAPE >::~TPZCompElHDiv ( )
virtual

Member Function Documentation

◆ AddShapeRestraint()

template<class TSHAPE>
virtual void TPZCompElHDiv< TSHAPE >::AddShapeRestraint ( TPZOneShapeRestraint  restraint)
inlineoverridevirtual

Add a shape restraint (meant to fit the pyramid to restraint.

Reimplemented from TPZInterpolatedElement.

Definition at line 120 of file pzelchdiv.h.

Referenced by TPZCompMeshTools::AddHDivPyramidRestraints().

◆ Append()

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::Append ( TPZFMatrix< REAL > &  u1,
TPZFMatrix< REAL > &  u2,
TPZFMatrix< REAL > &  u12 
)
protected

To append vectors.

Definition at line 1213 of file pzelchdiv.cpp.

References TPZMatrix< TVar >::Cols(), PZError, TPZFMatrix< TVar >::Redim(), and TPZMatrix< TVar >::Rows().

◆ Clone()

template<class TSHAPE>
virtual TPZCompEl* TPZCompElHDiv< TSHAPE >::Clone ( TPZCompMesh mesh) const
inlineoverridevirtual

Method for creating a copy of the element.

Reimplemented from TPZIntelGen< TSHAPE >.

Reimplemented in TPZCompElHDivPressure< TSHAPE >.

Definition at line 53 of file pzelchdiv.h.

◆ ClonePatchEl()

template<class TSHAPE>
virtual TPZCompEl* TPZCompElHDiv< TSHAPE >::ClonePatchEl ( TPZCompMesh mesh,
std::map< int64_t, int64_t > &  gl2lcConMap,
std::map< int64_t, int64_t > &  gl2lcElMap 
) const
inlineoverridevirtual

Create a copy of the given element. The clone copy have the connect indexes mapped to the local clone connects by the given map.

Parameters
meshPatch clone mesh
gl2lcConMapmap the connects indexes from global element (original) to the local copy.
gl2lcElMapmap the indexes of the elements between the original element and the patch element

Reimplemented from TPZIntelGen< TSHAPE >.

Reimplemented in TPZCompElHDivPressure< TSHAPE >.

Definition at line 64 of file pzelchdiv.h.

References TPZCompElHDiv< TSHAPE >::NConnects(), TPZCompElHDiv< TSHAPE >::NConnectShapeF(), TPZCompElHDiv< TSHAPE >::Print(), TPZCompElHDiv< TSHAPE >::RestrainedFace(), TPZCompElHDiv< TSHAPE >::SetConnectIndex(), TPZCompElHDiv< TSHAPE >::SetCreateFunctions(), and TPZCompElHDiv< TSHAPE >::Type().

◆ ComputeRequiredData()

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::ComputeRequiredData ( TPZMaterialData data,
TPZVec< REAL > &  qsi 
)
overridevirtual

◆ ComputeShapeIndex()

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::ComputeShapeIndex ( TPZVec< int > &  sides,
TPZVec< int64_t > &  shapeindex 
)

◆ ComputeSolution() [1/4]

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::ComputeSolution ( TPZVec< REAL > &  qsi,
TPZSolVec sol,
TPZGradSolVec dsol,
TPZFMatrix< REAL > &  axes 
)
overridevirtual

Computes solution and its derivatives in the local coordinate qsi.

Methods for error evaluation
Methods for computing derived post processed values (depending on the variational statement)

Parameters
qsimaster element coordinate
solfinite element solution
dsolsolution derivatives
axesaxes indicating the direction of the derivatives

Reimplemented from TPZInterpolatedElement.

Reimplemented in TPZCompElHDivPressure< TSHAPE >.

Definition at line 1035 of file pzelchdiv.cpp.

References TPZMaterialData::axes, TPZCompElHDiv< TSHAPE >::ComputeRequiredData(), TPZGeoEl::Dimension(), TPZMaterialData::dsol, TPZMaterialData::fNeedsSol, TPZCompElHDiv< TSHAPE >::InitMaterialData(), TPZInterpolatedElement::NShapeF(), TPZCompEl::Reference(), and TPZMaterialData::sol.

Referenced by TPZCompElHDiv< TSHAPE >::ComputeRequiredData(), and TPZCompElHDiv< TSHAPE >::SideOrient().

◆ ComputeSolution() [2/4]

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::ComputeSolution ( TPZVec< REAL > &  qsi,
TPZMaterialData data 
)
overridevirtual

Compute shape functions based on master element in the classical FEM manne.

Parameters
[in]qsipoint in master element coordinates
[in]datastores all input data

Reimplemented from TPZInterpolatedElement.

Reimplemented in TPZCompElHDivPressure< TSHAPE >.

Definition at line 1028 of file pzelchdiv.cpp.

References TPZCompElHDiv< TSHAPE >::ComputeSolutionHDiv().

◆ ComputeSolution() [3/4]

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::ComputeSolution ( TPZVec< REAL > &  qsi,
TPZFMatrix< REAL > &  phi,
TPZFMatrix< REAL > &  dphix,
const TPZFMatrix< REAL > &  axes,
TPZSolVec sol,
TPZGradSolVec dsol 
)
overridevirtual

Computes solution and its derivatives in local coordinate qsi.

Parameters
qsimaster element coordinate
phimatrix containing shape functions compute in qsi point
dphixmatrix containing the derivatives of shape functions with respect of global coordinates: D[phi,x], D[phi,y], D[phi,z]
axesaxes indicating the direction of the derivatives
solfinite element solution
dsolsolution derivatives

Reimplemented from TPZInterpolatedElement.

Reimplemented in TPZCompElHDivPressure< TSHAPE >.

Definition at line 1015 of file pzelchdiv.cpp.

References TPZMaterialData::axes, TPZCompElHDiv< TSHAPE >::ComputeSolutionHDiv(), TPZMaterialData::dphix, TPZMaterialData::dsol, TPZCompElHDiv< TSHAPE >::InitMaterialData(), TPZMaterialData::phi, and TPZMaterialData::sol.

◆ ComputeSolution() [4/4]

template<class TSHAPE>
virtual void TPZCompElHDiv< TSHAPE >::ComputeSolution ( TPZVec< REAL > &  qsi,
TPZVec< REAL > &  normal,
TPZSolVec leftsol,
TPZGradSolVec dleftsol,
TPZFMatrix< REAL > &  leftaxes,
TPZSolVec rightsol,
TPZGradSolVec drightsol,
TPZFMatrix< REAL > &  rightaxes 
)
inlineoverridevirtual

Computes solution and its derivatives in the local coordinate qsi.

Parameters
qsimaster element coordinate of the interface element
normalunit normal vector
leftsolfinite element solution
dleftsolsolution derivatives
leftaxesaxes associated with the left solution
rightsolfinite element solution
drightsolsolution derivatives
rightaxesaxes associated with the right solution This method will function for both volumetric and interface elements

Reimplemented from TPZInterpolatedElement.

Definition at line 271 of file pzelchdiv.h.

References TPZCompElHDiv< TSHAPE >::ClassId(), TPZCompElHDiv< TSHAPE >::ComputeSolutionHDiv(), TPZCompElHDiv< TSHAPE >::CreateGraphicalElement(), DebugStop, dimension, TPZCompElHDiv< TSHAPE >::PRefine(), TPZCompElHDiv< TSHAPE >::Read(), TPZCompElHDiv< TSHAPE >::TransformSideToElement(), and TPZCompElHDiv< TSHAPE >::Write().

◆ ComputeSolutionHDiv() [1/2]

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::ComputeSolutionHDiv ( TPZVec< REAL > &  qsi,
TPZMaterialData data 
)

◆ ComputeSolutionHDiv() [2/2]

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::ComputeSolutionHDiv ( TPZMaterialData data)

◆ ConnectIndex()

template<class TSHAPE >
int64_t TPZCompElHDiv< TSHAPE >::ConnectIndex ( int  i) const
overridevirtual

Returns the index of the ith connectivity of the element.

Parameters
iconnectivity index who want knows

Reimplemented from TPZIntelGen< TSHAPE >.

Reimplemented in TPZCompElHDivPressure< TSHAPE >.

Definition at line 479 of file pzelchdiv.cpp.

References DebugStop, TPZIntelGen< TSHAPE >::fConnectIndexes, and TPZCompElHDiv< TSHAPE >::NConnects().

Referenced by TPZCompElHDiv< TSHAPE >::NConnectShapeF(), TPZCompElHDiv< TSHAPE >::NCornerConnects(), and TPZCompElHDiv< TSHAPE >::RestrainedFace().

◆ ConnectOrder()

template<class TSHAPE >
int TPZCompElHDiv< TSHAPE >::ConnectOrder ( int  connect) const
overridevirtual

◆ ConnectSideLocId()

template<class TSHAPE >
int TPZCompElHDiv< TSHAPE >::ConnectSideLocId ( int  connect) const
virtual

return the local index for side

Definition at line 442 of file pzelchdiv.cpp.

Referenced by TPZCompElHDiv< TSHAPE >::NCornerConnects(), and TPZCompElHDiv< TSHAPE >::PRefine().

◆ CreateGraphicalElement()

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::CreateGraphicalElement ( TPZGraphMesh graphmesh,
int  dimension 
)
overridevirtual

Creates corresponding graphical element(s) if the dimension matches graphical elements are used to generate output files.

Parameters
graphmeshgraphical mesh where the element will be created
dimensiontarget dimension of the graphical element

Reimplemented from TPZCompEl.

Reimplemented in TPZCompElHDivPressure< TSHAPE >.

Definition at line 1743 of file pzelchdiv.cpp.

References TPZCompEl::Material().

Referenced by TPZCompElHDiv< TSHAPE >::ComputeSolution().

◆ Dimension()

template<class TSHAPE>
virtual int TPZCompElHDiv< TSHAPE >::Dimension ( ) const
inlineoverridevirtual

Returns the dimension of the element.

Reimplemented from TPZIntelGen< TSHAPE >.

Reimplemented in TPZCompElHDivPressure< TSHAPE >.

Definition at line 93 of file pzelchdiv.h.

Referenced by TPZCompElHDiv< TSHAPE >::NConnects(), TPZCompElHDiv< TSHAPE >::NSideConnects(), and TPZCompElHDiv< TSHAPE >::PreferredSideOrder().

◆ EffectiveSideOrder()

template<class TSHAPE >
int TPZCompElHDiv< TSHAPE >::EffectiveSideOrder ( int  side) const
overridevirtual

◆ FillOrder()

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::FillOrder ( TPZVec< int > &  order) const

◆ FirstShapeIndex()

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::FirstShapeIndex ( TPZVec< int64_t > &  Index) const

Returns the vector index of the first index shape associate to to each side Special implementation to Hdiv.

return the first shape associate to each side

Definition at line 599 of file pzelchdiv.cpp.

References TPZCompElHDiv< TSHAPE >::FillOrder(), TPZCompEl::Index(), and LOGPZ_DEBUG.

Referenced by TPZCompElHDiv< TSHAPE >::ComputeShapeIndex(), TPZCompElHDiv< TSHAPE >::IndexShapeToVec2(), TPZCompElHDiv< TSHAPE >::NConnectShapeF(), and TPZCompElHDiv< TSHAPE >::SideOrient().

◆ GetInterpolationOrder()

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::GetInterpolationOrder ( TPZVec< int > &  ord)
overridevirtual

Identifies the interpolation order on the interior of the element.

Reimplemented from TPZIntelGen< TSHAPE >.

Reimplemented in TPZCompElHDivPressure< TSHAPE >.

Definition at line 449 of file pzelchdiv.cpp.

References TPZCompElHDiv< TSHAPE >::ConnectOrder(), TPZCompElHDiv< TSHAPE >::NConnects(), and TPZVec< T >::Resize().

Referenced by TPZCompElHDiv< TSHAPE >::ResetShapeRestraints().

◆ GetShapeRestraints()

template<class TSHAPE>
virtual std::list<TPZOneShapeRestraint> TPZCompElHDiv< TSHAPE >::GetShapeRestraints ( ) const
inlineoverridevirtual

Return a list with the shape restraints.

Reimplemented from TPZCompEl.

Definition at line 126 of file pzelchdiv.h.

References TPZCompElHDiv< TSHAPE >::fRestraints.

◆ GetSideOrient()

template<class TSHAPE >
int TPZCompElHDiv< TSHAPE >::GetSideOrient ( int  side)
overridevirtual

It returns the normal orientation of the reference element by the side. Only side that has dimension larger than zero and smaller than me.

Parameters
sideside of the reference elemen

Reimplemented from TPZInterpolationSpace.

Definition at line 873 of file pzelchdiv.cpp.

References DebugStop, and TPZCompElHDiv< TSHAPE >::fSideOrient.

Referenced by TPZCompElHDiv< TSHAPE >::ResetShapeRestraints().

◆ IndexShapeToVec() [1/2]

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::IndexShapeToVec ( TPZVec< int > &  VectorSide,
TPZVec< std::pair< int, int64_t > > &  IndexVecShape,
int  pressureorder 
)

Returns a matrix index of the shape and vector associate to element.

Parameters
[in]VectorSideIndicates the side associated with each vector
[out]IndexVecShapeIndicates for the vector/shape function for the approximation space
[in]pressureorderOrder of the pressure (to select shape functions?)

Definition at line 861 of file pzelchdiv.cpp.

References DebugStop.

Referenced by TPZCompElHDiv< TSHAPE >::SideOrient().

◆ IndexShapeToVec() [2/2]

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::IndexShapeToVec ( TPZVec< int > &  VectorSide,
TPZVec< int > &  bilinear,
TPZVec< int > &  direction,
TPZVec< std::pair< int, int64_t > > &  IndexVecShape,
int  pressureorder 
)

Returns a matrix index of the shape and vector associate to element.

Parameters
[in]VectorSideIndicates the side associated with each vector
[out]IndexVecShapeIndicates for the vector/shape function for the approximation space
[in]pressureorderOrder of the pressure (to select shape functions?)

Definition at line 656 of file pzelchdiv.cpp.

References DebugStop.

◆ IndexShapeToVec2()

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::IndexShapeToVec2 ( TPZVec< int > &  VectorSide,
TPZVec< int > &  bilinear,
TPZVec< int > &  direction,
TPZVec< std::pair< int, int64_t > > &  IndexVecShape,
int  pressureorder 
)

◆ InitMaterialData()

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::InitMaterialData ( TPZMaterialData data)
overridevirtual

◆ MaxOrder()

template<class TSHAPE >
int TPZCompElHDiv< TSHAPE >::MaxOrder ( )
overridevirtual

◆ NConnects()

template<class TSHAPE >
int TPZCompElHDiv< TSHAPE >::NConnects ( ) const
overridevirtual

◆ NConnectShapeF()

template<class TSHAPE >
int TPZCompElHDiv< TSHAPE >::NConnectShapeF ( int  connect,
int  order 
) const
overridevirtual

◆ NCornerConnects()

template<class TSHAPE>
virtual int TPZCompElHDiv< TSHAPE >::NCornerConnects ( ) const
inlineoverridevirtual

◆ NFluxShapeF()

template<class TSHAPE >
int TPZCompElHDiv< TSHAPE >::NFluxShapeF ( ) const
virtual

◆ NShapeContinuous()

template<class TSHAPE >
int TPZCompElHDiv< TSHAPE >::NShapeContinuous ( TPZVec< int > &  order)

return the number of continuous functions

Definition at line 1320 of file pzelchdiv.cpp.

Referenced by TPZCompElHDiv< TSHAPE >::ResetShapeRestraints(), and TPZCompElHDiv< TSHAPE >::Shape().

◆ NSideConnects()

template<class TSHAPE >
int TPZCompElHDiv< TSHAPE >::NSideConnects ( int  iside) const
overridevirtual

Returns the number of dof nodes along side iside.

Reimplemented from TPZIntelGen< TSHAPE >.

Definition at line 411 of file pzelchdiv.cpp.

References TPZCompElHDiv< TSHAPE >::Dimension(), and LOGPZ_ERROR.

Referenced by TPZCompElHDiv< TSHAPE >::EffectiveSideOrder(), TPZCompElHDiv< TSHAPE >::NCornerConnects(), and TPZCompElHDiv< TSHAPE >::SideConnectLocId().

◆ PreferredSideOrder()

template<class TSHAPE >
int TPZCompElHDiv< TSHAPE >::PreferredSideOrder ( int  iside)
overridevirtual

◆ PRefine()

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::PRefine ( int  order)
overridevirtual

◆ Print()

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::Print ( std::ostream &  out = std::cout) const
overridevirtual

◆ Read()

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::Read ( TPZStream buf,
void *  context 
)
overridevirtual

◆ ResetShapeRestraints()

template<class TSHAPE>
virtual void TPZCompElHDiv< TSHAPE >::ResetShapeRestraints ( )
inlineoverridevirtual

◆ RestrainedFace() [1/2]

template<class TSHAPE >
int TPZCompElHDiv< TSHAPE >::RestrainedFace ( )

◆ RestrainedFace() [2/2]

template<>
int TPZCompElHDiv< TPZShapePiram >::RestrainedFace ( )

◆ SetConnectIndex()

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::SetConnectIndex ( int  i,
int64_t  connectindex 
)
overridevirtual

Sets the node pointer of node i to nod.

Reimplemented from TPZIntelGen< TSHAPE >.

Reimplemented in TPZCompElHDivPressure< TSHAPE >.

Definition at line 200 of file pzelchdiv.cpp.

References DebugStop, TPZIntelGen< TSHAPE >::fConnectIndexes, LOGPZ_DEBUG, and TPZCompElHDiv< TSHAPE >::NConnects().

Referenced by TPZCompElHDiv< TSHAPE >::ClonePatchEl().

◆ SetIntegrationRule()

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::SetIntegrationRule ( int  ord)
overridevirtual

Reimplemented from TPZIntelGen< TSHAPE >.

Definition at line 404 of file pzelchdiv.cpp.

References TPZIntelGen< TSHAPE >::fIntRule.

Referenced by TPZCompElHDiv< TSHAPE >::ResetShapeRestraints().

◆ SetPreferredOrder()

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::SetPreferredOrder ( int  order)
overridevirtual

Sets the preferred interpolation order along a side.

This method only updates the datastructure of the element
In order to change the interpolation order of an element, use the method PRefine

Sets the preferred interpolation order along a side This method only updates the datastructure of the element In order to change the interpolation order of an element, use the method PRefine

Reimplemented from TPZIntelGen< TSHAPE >.

Reimplemented in TPZCompElHDivPressure< TSHAPE >.

Definition at line 512 of file pzelchdiv.cpp.

References TPZIntelGen< TSHAPE >::SetPreferredOrder().

Referenced by TPZCompElHDiv< TSHAPE >::PRefine(), and TPZCompElHDiv< TSHAPE >::ResetShapeRestraints().

◆ SetSideOrder()

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::SetSideOrder ( int  side,
int  order 
)
overridevirtual

◆ SetSideOrient()

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::SetSideOrient ( int  side,
int  sideorient 
)
overridevirtual

It set the normal orientation of the element by the side. Only side that has dimension equal to my dimension minus one.

Parameters
sideside of the reference elemen

Reimplemented from TPZInterpolationSpace.

Definition at line 888 of file pzelchdiv.cpp.

References DebugStop, and TPZCompElHDiv< TSHAPE >::fSideOrient.

Referenced by TPZCompElHDiv< TSHAPE >::ResetShapeRestraints().

◆ Shape()

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::Shape ( TPZVec< REAL > &  qsi,
TPZFMatrix< REAL > &  phi,
TPZFMatrix< REAL > &  dphidxi 
)
overridevirtual

Computes the shape function set at the point x.

Parameters
qsipoint in master element coordinates
phivector of values of shapefunctions, dimension (numshape,1)
dphimatrix of derivatives of shapefunctions in master element coordinates, dimension (dim,numshape) This method uses the order of interpolation of the element along the sides to compute the number of shapefunctions

Implements TPZInterpolationSpace.

Reimplemented in TPZCompElHDivPressure< TSHAPE >.

Definition at line 1300 of file pzelchdiv.cpp.

References TPZCompElHDiv< TSHAPE >::FillOrder(), TPZGeoNode::Id(), TPZGeoEl::NodePtr(), TPZCompElHDiv< TSHAPE >::NShapeContinuous(), TPZFMatrix< TVar >::Redim(), TPZCompEl::Reference(), and Shape().

Referenced by TPZCompElHDivPressure< TSHAPE >::Shape(), and TPZCompElHDiv< TSHAPE >::SideOrient().

◆ SideConnectLocId()

template<class TSHAPE >
int TPZCompElHDiv< TSHAPE >::SideConnectLocId ( int  node,
int  side 
) const
overridevirtual

◆ SideOrient()

template<class TSHAPE>
int TPZCompElHDiv< TSHAPE >::SideOrient ( int  face)
inline

◆ SideShapeFunction()

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::SideShapeFunction ( int  side,
TPZVec< REAL > &  point,
TPZFMatrix< REAL > &  phi,
TPZFMatrix< REAL > &  dphi 
)
overridevirtual

◆ Solution()

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::Solution ( TPZVec< REAL > &  qsi,
int  var,
TPZVec< STATE > &  sol 
)
overridevirtual

◆ TransformSideToElement()

template<class TSHAPE >
TPZTransform TPZCompElHDiv< TSHAPE >::TransformSideToElement ( int  side)
overridevirtual

Returns the transformation which transform a point from the side to the interior of the element.

Jorge 09/06/2001

Implements TPZInterpolatedElement.

Reimplemented in TPZCompElHDivPressure< TSHAPE >.

Definition at line 1336 of file pzelchdiv.cpp.

Referenced by TPZCompElHDiv< TSHAPE >::ComputeSolution().

◆ Type()

template<class TSHAPE >
MElementType TPZCompElHDiv< TSHAPE >::Type ( )
overridevirtual

Return the type of the element.

Reimplemented from TPZIntelGen< TSHAPE >.

Reimplemented in TPZCompElHDivPressure< TSHAPE >.

Definition at line 187 of file pzelchdiv.cpp.

Referenced by TPZCompElHDiv< TSHAPE >::ClonePatchEl().

◆ Write()

template<class TSHAPE >
void TPZCompElHDiv< TSHAPE >::Write ( TPZStream buf,
int  withclassid 
) const
overridevirtual

Member Data Documentation

◆ fRestraints

template<class TSHAPE>
std::list<TPZOneShapeRestraint> TPZCompElHDiv< TSHAPE >::fRestraints
private

◆ fSideOrient

template<class TSHAPE>
TPZManVector<int, TSHAPE::NFaces> TPZCompElHDiv< TSHAPE >::fSideOrient
private

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