30 std::map<int64_t,int64_t> & gl2lcConMap,
31 std::map<int64_t,int64_t> & gl2lcElMap)
const 34 for (int64_t l=0; l<
fDef.size(); l++) {
35 for (
int i=0; i<2; i++) {
36 newel->
fDef[l].fIdf[i] =
fDef[l].fIdf[i];
37 std::map<int64_t,int64_t>::iterator it = gl2lcConMap.find(
fDef[l].fConnect[i]);
38 if (it != gl2lcConMap.end()) {
39 newel->
fDef[l].fConnect[i] = it->second;
63 int64_t nlagrange =
fDef.size();
65 for (int64_t l=0; l<nlagrange; l++)
71 ek.
fMat(count+
fDef[l].fIdf[0],count+
fDef[l].fIdf[0]) = 1.;
72 ek.
fMat(count+
fDef[l].fIdf[0],count+blsize0+
fDef[l].fIdf[1]) = -1.;
73 ek.
fMat(count+blsize0+
fDef[l].fIdf[1],count+
fDef[l].fIdf[0]) = -1.;
74 ek.
fMat(count+blsize0+
fDef[l].fIdf[1],count+blsize0+
fDef[l].fIdf[1]) = 1.;
77 ef.
fMat(count+
fDef[l].fIdf[0],0) = -diff;
78 ef.
fMat(count+blsize0+
fDef[l].fIdf[1],0) = diff;
79 count += blsize0+blsize1;
111 for(i=0; i<ncon; i++){
118 numeq += nshape*nstate;
124 for(i=0; i<ncon; i++){
int Set(const int index, const int dim, const int pos=-1)
Modifies existing block dimensions or creates a new block with given index.
Represents a set of shape functions associated with a computational element/side. Computational Eleme...
TPZStack< int64_t > fConnect
Vector of pointers to TPZConnect objects.
virtual ~TPZCompElLagrange()
TPZFNMatrix< 1000, STATE > fMat
Pointer to a blocked matrix object.
virtual int64_t ConnectIndex(int i) const override
Returns the index of the ith connectivity of the element.
virtual void CalcStiff(TPZElementMatrix &ek, TPZElementMatrix &ef) override
Computes the element stifness matrix and right hand side.
int ClassId() const override
Define the class id associated with the class.
TPZBlock< STATE > fBlock
Block structure associated with fMat.
virtual void Resize(const int64_t newsize, const T &object)
Resizes the vector object.
virtual int ClassId() const override
Define the class id associated with the class.
This abstract class defines the behaviour which each derived class needs to implement.
Contains declaration of TPZElementMatrix struct which associates an element matrix with the coeficien...
virtual TPZMaterial * Material() const
Identify the material object associated with the element.
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.
int64_t SequenceNumber() const
Returns the Sequence number of the connect object.
#define DebugStop()
Returns a message to user put a breakpoint in.
TPZCompMesh * Mesh() const
Return a pointer to the grid of the element.
virtual int NConnects() const override
Returns the number of nodes of the element.
unsigned int NShape() const
const TPZBlock< STATE > & Block() const
Access the block structure of the solution vector.
int SetNBlocks(const int num_of_blocks)
Sets number of blocks on diagonal matrix.
int Redim(const int64_t newRows, const int64_t newCols) override
Redimension a matrix and ZERO your elements.
virtual TPZConnect & Connect(int i) const
Returns a pointer to the ith node.
unsigned char NState() const
Number of state variables associated with the connect.
int32_t Hash(std::string str)
This class associates an element matrix with the coeficients of its contribution in the global stiffn...
TPZManVector< TLagrange, 3 > fDef
Implements computational mesh. Computational Mesh.
int NumLoadCases()
returns the number of load cases for this material object
int64_t Cols() const
Returns number of cols.
void InitializeElementMatrix(TPZElementMatrix &ek, TPZElementMatrix &ef)
Computes the element right hand side.
Defines the interface of a computational element. Computational Element.