8 #ifndef TPZMULTIPHYSICSINTERFACEELH 9 #define TPZMULTIPHYSICSINTERFACEELH 53 std::map<int64_t,int64_t> & gl2lcElMap);
73 std::map<int64_t,int64_t> & gl2lcConMap,
74 std::map<int64_t,int64_t> & gl2lcElMap)
const override 122 fConnectIndexes[inode] = index;
197 virtual void Print(std::ostream &out = std::cout)
const override;
279 virtual int ClassId()
const override;
Represents a graphical mesh used for post processing purposes. Post processing.
void CalcStiff(TPZElementMatrix &ek, TPZElementMatrix &ef) override
virtual void BuildCornerConnectList(std::set< int64_t > &connectindexes) const override
adds the connect indexes associated with base shape functions to the set
virtual int Dimension() const override
Dimension of the element.
void IncrementElConnected()
Informs the connect that this element is connected to it.
virtual int NConnects() const override
Returns the number of nodes of the element.
virtual void BuildCornerConnectList(std::set< int64_t > &connectindexes) const =0
adds the connect indexes associated with base shape functions to the set
Implements computational element and a side. Computational Element.
TPZCompEl * LeftElement() const
Returns the left element from the element interface.
virtual void Solution(TPZVec< REAL > &qsi, int var, TPZVec< STATE > &sol) override
Calculates the solution - sol - for the variable var at point qsi, where qsi is expressed in terms of...
virtual int64_t ConnectIndex(int i) const override
Returns the index of the ith connectivity of the element.
TPZCompElSide Left() const
access function to the left element
clarg::argInt dimension("-d", "Matrices dimension M x M", 1000)
const TPZIntPoints & GetIntegrationRule() const override
Contains declaration of TPZCompEl class which defines the interface of a computational element...
TPZManVector< int64_t, 3 > fRightElIndices
indices of the Right Element Vector
TPZManVector< int64_t, 20 > fConnectIndexes
indexes of the connects
virtual int64_t NMeshes()=0
virtual void Print(std::ostream &out=std::cout) const override
Prints element data.
Contains the declaration of the TPZMultiphysicsElement class. This class is abstract.
void MapQsi(TPZManVector< TPZCompElSide > &Neighbor, TPZVec< REAL > &qsi, TPZVec< REAL > &NeighIntPoint)
Maps qsi coordinate at this master element to qsi coordinate at neighbor master element.
REAL val(STATE &number)
Returns value of the variable.
virtual void ComputeRequiredData(TPZVec< REAL > &intpointtemp, TPZVec< TPZTransform<> > &trvec, TPZVec< TPZMaterialData > &datavec)
Compute and fill data with requested attributes for each of the compels in fElementVec.
virtual TPZCompEl * Clone(TPZCompMesh &mesh) const override
Method for creating a copy of the element.
virtual void SetConnectIndex(int inode, int64_t index) override
Set the index i to node inode.
Abstract class defining integration rules. Numerical Integration.
virtual void CreateGraphicalElement(TPZGraphMesh &grmesh, int dimension) override
Creates corresponding graphical element(s) if the dimension matches graphical elements are used to ge...
void CreateIntegrationRule()
Defines the behaviour of all geometric elements. GeometryTPZGeoEl is the common denominator for all g...
void GetLeftRightElement(TPZCompElSide &leftel, TPZCompElSide &rightel)
virtual int ComputeIntegrationOrder() const override
void SetLeftRightElement(const TPZCompElSide &leftel, const TPZCompElSide &rightel)
virtual TPZCompEl * ClonePatchEl(TPZCompMesh &mesh, std::map< int64_t, int64_t > &gl2lcConMap, std::map< int64_t, int64_t > &gl2lcElMap) const override
Method for creating a copy of the element in a patch mesh.
void SetLeftRightElementIndices(const TPZVec< int64_t > &lefindices, const TPZVec< int64_t > &rightindices)
void InitMaterialData(TPZMaterialData ¢er_data, TPZVec< TPZMaterialData > &data_left, TPZVec< TPZMaterialData > &data_right)
Initialize the material data structures.
This class associates an element matrix with the coeficients of its contribution in the global stiffn...
void ComputeSideTransform(TPZManVector< TPZCompElSide > &Neighbor, TPZManVector< TPZTransform<> > &transf)
Compute the transform of a paramenter point in the multiphysic interface element to a parameter point...
virtual int Dimension() const =0
Returns the dimension of the element.
TPZCompEl * Element() const
Gives a pointer to the reference computational element.
TPZManVector< int64_t, 3 > fLeftElIndices
indices of the Left Element Vector
TPZGeoEl * Reference() const
Return a pointer to the corresponding geometric element if such exists, return 0 otherwise.
void ComputeCenterNormal(TPZVec< REAL > &normal) const
Computes the contribution over an interface between two discontinuous elements. Computational Element...
Implements computational mesh. Computational Mesh.
TPZCompElSide fRightElSide
Element vector the right of the normal a interface.
TPZCompEl * RightElement() const
Returns the right element from the element interface.
void InitializeElementMatrix(TPZElementMatrix &ek, TPZElementMatrix &ef)
Initialize the structure of the stiffness matrix.
TPZMultiphysicsInterfaceElement()
Default constructor.
virtual int NumberOfCompElementsInsideThisCompEl() override
Return the size of the elementvec in multiphysics, if it is not multiphysics, just return 1...
TPZCompElSide Right() const
Access function to the right element.
virtual ~TPZMultiphysicsInterfaceElement()
Default destructor.
Defines the interface of a computational element. Computational Element.
virtual int ClassId() const override
Define the class id associated with the class.
void EvaluateError(std::function< void(const TPZVec< REAL > &loc, TPZVec< STATE > &val, TPZFMatrix< STATE > &deriv)> fp, TPZVec< REAL > &, bool store_error) override
Performs an error estimate on the elemen.
TPZCompElSide fLeftElSide
Element vector the left of the normal a interface.