118 <<
"radius is not stored in TPZCompElDisc. It is stored in TPZAgglomerateElement." << std::endl;}
121 virtual void SetNInterfaces(
int nfaces) {
PZError <<
"TPZCompElDisc::SetNFaces - This method should never be called because the number of interfaces" << std::endl
122 <<
"is not stored in TPZCompElDisc. It is only stored by TPZAgglomerateElement." << std::endl;}
145 std::map<int64_t,int64_t> &gl2lcConMap,
146 std::map<int64_t,int64_t> &gl2lcElMap);
165 std::map<int64_t,int64_t> & gl2lcConMap,
166 std::map<int64_t,int64_t> & gl2lcElMap)
const override {
223 fCenterPoint.
Fill(0.);
250 virtual void Print(std::ostream & out = std::cout)
const override;
253 virtual int Degree()
const;
299 virtual int NShapeF()
const override;
Represents a graphical mesh used for post processing purposes. Post processing.
int GetMaterial(const TPZGeoElSide &gside)
REAL Volume()
Return the volume of the element.
virtual void AccumulateIntegrationRule(int degree, TPZStack< REAL > &point, TPZStack< REAL > &weight)
Contains the TPZInt1d, TPZIntTriang, TPZIntQuad, TPZIntCube3D, TPZIntTetra3D, TPZIntPyram3D and TPZIn...
REAL CenterPoint(int index) const
void AppendExternalShapeFunctions(TPZVec< REAL > &X, TPZFMatrix< REAL > &phi, TPZFMatrix< REAL > &dphi)
Add extenal shape function into already computed phi and dphi discontinuous functions.
virtual int NShapeF() const override
Returns the shapes number of the element.
Represents a set of shape functions associated with a computational element/side. Computational Eleme...
void SolutionX(TPZVec< REAL > &x, TPZVec< STATE > &uh)
Computes the solution in function of a point in cartesian space.
virtual void SetCreateFunctions(TPZCompMesh *mesh) override
Set create function in TPZCompMesh to create elements of this type.
virtual TPZCompEl * Clone(TPZCompMesh &mesh, int64_t &index) const
virtual int NConnects() const override
Returns the number of connects.
virtual int SideConnectLocId(int icon, int is) const override
Returns the local node number of icon along is.
virtual void resize(const int64_t newsize)
clarg::argInt dimension("-d", "Matrices dimension M x M", 1000)
static void SetOrthogonalFunction(void(*orthogonal)(REAL C, REAL x0, REAL x, int degree, TPZFMatrix< REAL > &phi, TPZFMatrix< REAL > &dphi, int n))
Sets the orthogonal function which will be used throughout the program.
Contains declaration of TPZCompEl class which defines the interface of a computational element...
Templated vector implementation.
bool fUseQsiEta
Variable to choose the qsi point or the X point in the calculus of the phis and dphis.
void Read(TPZStream &buf, void *context) override
Read the element data from a stream.
virtual int64_t CreateMidSideConnect()
It creates new conect that it associates the degrees of freedom of the element and returns its index...
virtual int NSideConnects(int iside) const override
Returns the number of dof nodes along side iside.
virtual const TPZIntPoints & GetIntegrationRule() const override
Returns a reference to an integration rule suitable for integrating the interior of the element...
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) override
Compute shape functions based on master element in the classical FEM manner.
Contains declaration of TPZInterpolationSpace class which implements the interface for interpolated c...
void degree(int root, int adj_num, int adj_row[], int adj[], int mask[], int deg[], int *iccsze, int ls[], int node_num)
void InternalPoint(TPZVec< REAL > &point)
Returns the center point.
Utility class which represents an element with its side. The Geometric approximation classes Geometry...
virtual TPZCompEl * ClonePatchEl(TPZCompMesh &mesh, std::map< int64_t, int64_t > &gl2lcConMap, std::map< int64_t, int64_t > &gl2lcElMap) const override
void BuildTransferMatrix(TPZCompElDisc &coarsel, TPZTransfer< STATE > &transfer)
void SetExternalShapeFunction(TPZAutoPointer< TPZFunction< STATE > > externalShapes)
Define external shape functions which are stored in class attribute fExternalShape.
virtual int NSides() const =0
Returns the number of connectivities of the element.
virtual void ComputeSolution(TPZVec< REAL > &qsi, TPZSolVec &sol, TPZGradSolVec &dsol, TPZFMatrix< REAL > &axes) override
Computes solution and its derivatives in the local coordinate qsi.
void CreateGraphicalElement(TPZGraphMesh &grmesh, int dimension) override
Creates corresponding graphical element(s) if the dimension matches graphical elements are used to ge...
Abstract class defining integration rules. Numerical Integration.
virtual void PRefine(int order) override
Change the preferred order for the element and proceed the adjust of the aproximation space taking in...
void SetConnectIndex(int, int64_t index) override
Set the index i to node inode.
This abstract class defines the behaviour which each derived class needs to implement.
virtual REAL NormalizeConst()
Calculates the normalizing constant of the bases of the element.
virtual void CenterPoint(int side, TPZVec< REAL > &masscent) const =0
It returns the coordinates from the center of the side of the element in the element coordinate space...
void Write(TPZStream &buf, int withclassid) const override
Save the element data to a stream.
TPZCompElDisc()
Default constructor.
bool HasExternalShapeFunction()
Return whether element has external shape functions set to.
void SetTensorialShape()
Set tensorial shape functions.
void SetTotalOrderShape()
Set total order shape functions.
TPZAutoPointer< TPZIntPoints > CreateIntegrationRule() const
virtual void SetPreferredOrder(int order) override
Define the desired order for entire element.
Defines the behaviour of all geometric elements. GeometryTPZGeoEl is the common denominator for all g...
Contains TPZMatrixclass which implements full matrix (using column major representation).
#define DebugStop()
Returns a message to user put a breakpoint in.
This class defines the boundary condition for TPZMaterial objects.
int ClassId() const override
Returns the unique identifier for reading/writing objects to streams.
virtual void SetNInterfaces(int nfaces)
Sets element's number of interfaces.
int NumInterfaces()
Returns number of TPZInterfaceElement pointing to this.
TPZAutoPointer< TPZFunction< STATE > > fExternalShape
A pz function to allow the inclusion of extra shape functions which are defined externally.
int64_t fConnectIndex
It preserves index of connect associated to the element.
TPZCompEl * Reference() const
Return a pointer to the element referenced by the geometric element.
Contains declaration of the TPZAutoPointer class which has Increment and Decrement actions are mutexe...
virtual void AccumulateVertices(TPZStack< TPZGeoNode *> &nodes)
Accumulates the vertices of the agglomerated elements.
virtual int NConnectShapeF(int inod, int order) const override
Returns the number of shapefunctions associated with a connect.
int MaxOrderExceptExternalShapes()
Returns the max order of interpolation excluding external shape order.
pzshape::TPZShapeDisc::MShapeType fShapefunctionType
Shape function type used by the element.
int64_t ConnectIndex(int side=0) const override
Returns the connect index from the element.
TPZManVector< REAL, 3 > fCenterPoint
It keeps the interior point coordinations of the element.
virtual TPZCompEl * Clone(TPZCompMesh &mesh) const override
Method for creating a copy of the element.
virtual ~TPZCompElDisc()
Default destructor.
virtual int NNodes() const =0
Returns the number of nodes of the element.
This class associates an element matrix with the coeficients of its contribution in the global stiffn...
Implements the interfaces for TPZCompElDisc, TPZInterfaceElement and TPZInterpolatedElement. Computational element.
static TPZCompEl * CreateDisc(TPZGeoEl *geo, TPZCompMesh &mesh, int64_t &index)
Creates discontinuous computational element.
void SetTensorialShapeFull()
Set tensorial shape functions with many derivatives.
virtual int MaxOrder() override
Returns the max order of interpolation.
virtual int Dimension() const =0
Returns the dimension of the element.
virtual void Print(std::ostream &out=std::cout) const override
Prints the features of the element.
virtual void Shape(TPZVec< REAL > &qsi, TPZFMatrix< REAL > &phi, TPZFMatrix< REAL > &dphidxi) override
Computes the shape function set at the point x. This method uses the order of interpolation of the el...
TPZGeoEl * Reference() const
Return a pointer to the corresponding geometric element if such exists, return 0 otherwise.
virtual void X(TPZVec< REAL > &qsi, TPZVec< REAL > &result) const =0
Return the coordinate in real space of the point coordinate in the master element space...
MElementType
Define the element types.
Implements computational mesh. Computational Mesh.
int NCornerConnects() const
Amount of vertices of the element.
virtual void SetInnerRadius(REAL InnerRadius)
Sets the inner radius value.
static void(* fOrthogonal)(REAL C, REAL x0, REAL x, int degree, TPZFMatrix< REAL > &phi, TPZFMatrix< REAL > &dphi, int n)
Pointer to orthogonal function to use as shape function.
void Fill(const T ©, const int64_t from=0, const int64_t numelem=-1)
Will fill the elements of the vector with a copy object.
Contains the declaration of the shape function discontinuous.
virtual void SetDegree(int degree)
Assigns the degree of the element.
virtual int Degree() const
Returns the degree of interpolation of the element.
Defines the interface for saving and reading data. Persistency.
Contains the declaration of TPZFlopCounter class and TPZCounter struct.
void SetCenterPoint(int i, REAL x)
REAL fConstC
Normalizing constant for shape functions.
void Divide(int64_t index, TPZVec< int64_t > &subindex, int interpolate=0) override
Divide the computational element.
This class implements a discontinuous element (for use with discontinuous Galerkin). Computational Element.
virtual REAL VolumeOfEl() override
Returns the volume of the geometric element associated.
virtual void ShapeX(TPZVec< REAL > &X, TPZFMatrix< REAL > &phi, TPZFMatrix< REAL > &dphi)
virtual REAL InnerRadius()
Returns the inner radius value.
Implements rectangular matrix which extends a solution vector of the coarse mesh to a solution vector...
virtual int NInterfaces()
Returns the number of interfaces.
int Dimension() const override
Returns dimension from the element.
Defines the interface of a computational element. Computational Element.
void SetTotalOrderShapeFull()
Set total order shape functions.
virtual void BuildCornerConnectList(std::set< int64_t > &connectindexes) const override
adds the connect indexes associated with base shape functions to the set
virtual MElementType Type() override
Type of the element.
#define PZError
Defines the output device to error messages and the DebugStop() function.
static REAL EvaluateSquareResidual2D(TPZInterpolationSpace *cel)
Compute the integral of the square residual over the element domain.
REAL ConstC() const
It returns the constant that normalizes the bases of the element.
TPZAutoPointer< TPZIntPoints > fIntRule