XC Open source finite element analysis program
Public Member Functions | Protected Member Functions | List of all members

MIT C4 shell element. More...

#include <CorotShellMITC4.h>

Inheritance diagram for XC::CorotShellMITC4:
XC::ShellMITC4Base XC::QuadBase4N< SectionFDPhysicalProperties > XC::ElemPlano< 4, SectionFDPhysicalProperties > XC::ElemWithMaterial< NNODOS, SectionFDPhysicalProperties > XC::ElementBase< NNODOS > XC::Element XC::MeshComponent XC::ContinuaReprComponent XC::DomainComponent XC::TaggedObject XC::MovableObject XC::DistributedBase

Public Member Functions

 CorotShellMITC4 (void)
 Constructor.
 
 CorotShellMITC4 (int tag, const SectionForceDeformation *ptr_mat)
 Constructor.
 
 CorotShellMITC4 (int tag, int node1, int node2, int node3, int node4, SectionForceDeformation &theMaterial)
 Constructor.
 
ElementgetCopy (void) const
 Virtual constructor.
 
int update (void)
 Actualiza los valores de las variables de estado.
 
int sendSelf (CommParameters &)
 Sends object through the channel being passed as parameter.
 
int recvSelf (const CommParameters &)
 Receives object through the channel being passed as parameter.
 
- Public Member Functions inherited from XC::ShellMITC4Base
 ShellMITC4Base (int classTag, const ShellCrdTransf3dBase *)
 Constructor.
 
 ShellMITC4Base (int tag, int classTag, const SectionForceDeformation *ptr_mat, const ShellCrdTransf3dBase *)
 Constructor.
 
 ShellMITC4Base (int tag, int classTag, int node1, int node2, int node3, int node4, const SectionFDPhysicalProperties &, const ShellCrdTransf3dBase *)
 Constructor.
 
 ShellMITC4Base (const ShellMITC4Base &otro)
 Copy constructor.
 
ShellMITC4Baseoperator= (const ShellMITC4Base &otro)
 Assignment operator.
 
 ~ShellMITC4Base (void)
 Destructor.
 
void setDomain (Domain *theDomain)
 set domain
 
int getNumDOF (void) const
 return number of dofs
 
int update (void)
 Actualiza los valores de las variables de estado.
 
const MatrixgetTangentStiff (void) const
 return stiffness matrix
 
const MatrixgetInitialStiff (void) const
 return secant matrix
 
const MatrixgetMass (void) const
 return mass matrix
 
const GaussModelgetGaussModel (void) const
 Returns the element Gauss points.
 
Vector getInterpolationFactors (const ParticlePos3d &) const
 Returns interpolattion factors for a material point.
 
Vector getInterpolationFactors (const Pos3d &) const
 Returns interpolation factors for a material point.
 
Vector getInterpolatedDisplacements (const ParticlePos3d &) const
 Returns interpolated displacements for a material point.
 
Vector getInterpolatedDisplacements (const Pos3d &) const
 Returns interpolattion factors for a material point.
 
const ShellUniformLoadvector3dUniformLoadLocal (const Vector &)
 Defines a load over the element from a vector in local coordinates.
 
const ShellUniformLoadvector3dUniformLoadGlobal (const Vector &)
 Defines a load over the element from a vector in global coordinates.
 
void strainLoad (const Matrix &)
 
void zeroLoad (void)
 Zeroes the element load vector.
 
int addLoad (ElementalLoad *theLoad, double loadFactor)
 Applies on the element the load being passed as parameter.
 
int addInertiaLoadToUnbalance (const Vector &accel)
 
int commitState (void)
 Consuma la coordinate transformation de acuerdo con el estado actual.
 
int revertToLastCommit (void)
 Returns to the last commited state.
 
int revertToStart (void)
 Returns the initial state.
 
void alive (void)
 Reactivates the element.
 
const VectorgetResistingForce (void) const
 get residual
 
const VectorgetResistingForceIncInertia (void) const
 get residual with inertia terms
 
double getMeanInternalForce (const std::string &) const
 
double getMeanInternalDeformation (const std::string &) const
 
virtual Matrix getLocalAxes (bool initialGeometry=true) const
 Returs a matrix with the axes of the element as matrix rows [[x1,y1,z1],[x2,y2,z2],...·].
 
virtual ShellCrdTransf3dBasegetCoordTransf (void)
 Returns a pointer to the coordinate transformation.
 
virtual const ShellCrdTransf3dBasegetCoordTransf (void) const
 Returns (if possible) a pointer to the coordinate transformation.
 
void computeBasis (void)
 compute local coordinates and basis
 
ParticlePos3d getLocalCoordinatesOfNode (const int &) const
 
ParticlePos3d getNaturalCoordinates (const Pos3d &) const
 
void Print (std::ostream &s, int flag)
 print out element data
 
- Public Member Functions inherited from XC::QuadBase4N< SectionFDPhysicalProperties >
 QuadBase4N (int classTag, const SectionFDPhysicalProperties &pp)
 Constructor.
 
 QuadBase4N (int tag, int classTag, const SectionFDPhysicalProperties &)
 Constructor.
 
 QuadBase4N (int tag, int classTag, int node1, int node2, int node3, int node4, const SectionFDPhysicalProperties &pp)
 Constructor.
 
Element::NodesEdge getNodesEdge (const size_t &i) const
 Returns the nodos de un lado of the element.
 
ID getLocalIndexNodesEdge (const size_t &i) const
 Returns the local indexes of the nodes that lie on the i-th edge.
 
int getEdgeNodes (const Node *, const Node *) const
 Returns the borde of the element que tiene por extremos los nodos being passed as parameters.
 
int getVtkCellType (void) const
 Interfaz con VTK.
 
int getMEDCellType (void) const
 Interfaz con el formato MED de Salome.
 
void zeroLoad (void)
 Zeroes loads on element.
 
int addLoad (ElementalLoad *theLoad, double loadFactor)
 Adds to the element the load being passed as parameter.
 
- Public Member Functions inherited from XC::ElemPlano< 4, SectionFDPhysicalProperties >
 ElemPlano (int tag, int classTag, const SectionFDPhysicalProperties &)
 Constructor.
 
void checkElem (void)
 Sets nodes and checks the element.
 
void setDomain (Domain *theDomain)
 Sets the element domain.
 
virtual Poligono3d getPoligono (bool initialGeometry=true) const
 Returns the element contour as a polygon.
 
virtual Segmento3d getLado (const size_t &i, bool initialGeometry=true) const
 Returns a lado of the element.
 
Pos3d getPosCdg (bool initialGeometry=true) const
 Return the position of the element centroid.
 
double getPerimetro (bool initialGeometry=true) const
 Returns the perimeter of the element.
 
double getArea (bool initialGeometry=true) const
 Returns element area.
 
virtual void calculaAreasTributarias (bool initialGeometry=true) const
 Computes tributary areas that correspond to each node.
 
double getAreaTributaria (const Node *) const
 Returns tributary area for the node being passed as parameter.
 
double getDist2 (const Pos2d &p, bool initialGeometry=true) const
 Returns the squared distance from the element to the point being passed as parameter.
 
double getDist2 (const Pos3d &p, bool initialGeometry=true) const
 Returns the squared distance from the element to the point being passed as parameter.
 
double getDist (const Pos2d &p, bool initialGeometry=true) const
 Return the distance from the element to the point being passed as parameter.
 
double getDist (const Pos3d &p, bool initialGeometry=true) const
 Return the distance from the element to the point being passed as parameter.
 
size_t getDimension (void) const
 Return the element dimension (0, 1, 2 o3 3).
 
- Public Member Functions inherited from XC::ElemWithMaterial< NNODOS, SectionFDPhysicalProperties >
 ElemWithMaterial (int tag, int classTag)
 
 ElemWithMaterial (int tag, int classTag, const SectionFDPhysicalProperties &)
 
int commitState (void)
 Consuma el estado of the element.
 
int revertToLastCommit (void)
 
int revertToStart (void)
 
virtual void zeroInitialGeneralizedStrains (void)
 
SectionFDPhysicalPropertiesgetPhysicalProperties (void)
 
const SectionFDPhysicalPropertiesgetPhysicalProperties (void) const
 
void setPhysicalProperties (const SectionFDPhysicalProperties &)
 
- Public Member Functions inherited from XC::ElementBase< NNODOS >
 ElementBase (int tag, int classTag)
 Default constructor.
 
 ElementBase (const ElementBase &otro)
 Constructor.
 
ElementBaseoperator= (const ElementBase &otro)
 Assignment operator.
 
int getNumExternalNodes (void) const
 Return the number of external nodes.
 
NodePtrsWithIDsgetNodePtrs (void)
 Returns a pointer to the vector de nodos.
 
const NodePtrsWithIDsgetNodePtrs (void) const
 Returns a pointer to the vector de nodos.
 
- Public Member Functions inherited from XC::Element
 Element (int tag, int classTag)
 Constructor that takes the element's unique tag and the number of external nodes for the element.
 
virtual int getNumEdges (void) const
 Returns number of edges (it must be overloaded for elements that have nodes inside edges.
 
std::vector< int > getIdxNodes (void) const
 
virtual void setIdNodos (const std::vector< int > &inodos)
 Asigna los nodos.
 
virtual void setIdNodos (const ID &inodos)
 Asigna los nodos.
 
virtual bool isSubdomain (void)
 
virtual const MatrixgetDamp (void) const
 Returns the matriz de amortiguamiento.
 
virtual int setRayleighDampingFactors (const RayleighDampingFactors &rF) const
 Asigna valores a los coeficientes de amortiguamiento de Rayleigh.
 
const VectorgetNodeResistingComponents (const size_t &, const Vector &) const
 Returns the generalized force of the element over the iNod-th node.
 
const VectorgetNodeResistingForce (const size_t &iNod) const
 Returns the generalized force of the element over the iNod-th node.
 
const VectorgetNodeResistingForceIncInertia (const size_t &iNod) const
 Returns the fuerza generalizada (incluyendo fuerzas de inercia) of the element sobre el nodo which index is being passed as parameter.
 
const VectorgetNodeResistingForce (const Node *) const
 Returns the fuerza generalizada of the element sobre el nodo pointed by the parameter.
 
const VectorgetNodeResistingForceIncInertia (const Node *) const
 Returns the fuerza generalizada (incluyendo fuerzas de inercia) of the element over the node pointed by the parameter.
 
Vector getEquivalentStaticLoad (int mode, const double &) const
 Returns the equivalent static load for the mode being passed as parameter and the acceleration that corresponding that mode.
 
Matrix getEquivalentStaticNodalLoads (int mode, const double &) const
 Returns the equivalent static load on each node for the mode being passed as parameter and the corresponding acceleration to the mode.
 
virtual ResponsesetResponse (const std::vector< std::string > &argv, Information &eleInformation)
 
virtual int getResponse (int responseID, Information &eleInformation)
 
ResponsesetMaterialResponse (Material *, const std::vector< std::string > &, const size_t &, Information &)
 
virtual int addInertiaLoadSensitivityToUnbalance (const Vector &accel, bool tag)
 
virtual int setParameter (const std::vector< std::string > &argv, Parameter &param)
 
int setMaterialParameter (Material *, const std::vector< std::string > &, const size_t &, Parameter &)
 
virtual int updateParameter (int parameterID, Information &info)
 
virtual int activateParameter (int parameterID)
 
virtual const VectorgetResistingForceSensitivity (int gradNumber)
 
virtual const MatrixgetInitialStiffSensitivity (int gradNumber)
 
virtual const MatrixgetDampSensitivity (int gradNumber)
 
virtual const MatrixgetMassSensitivity (int gradNumber)
 
virtual int commitSensitivity (int gradNumber, int numGrads)
 
virtual int addResistingForceToNodalReaction (bool inclInertia)
 Adds nodal reactions.
 
double MaxCooNod (int i) const
 Returns the valor máximo de la coordenada i of the nodes of the element.
 
double MinCooNod (int i) const
 Returns the minimum value de la coordenada i of the nodes of the element.
 
const MatrixgetCooNodos (void) const
 Returns the coordinates of the nodes.
 
Pos3d getPosNodo (const size_t &i, bool initialGeometry=true) const
 Returns the position of the i-th node. More...
 
std::list< Pos3d > getPosNodos (bool initialGeometry=true) const
 Returns the coordinates of the nodes.
 
Vector getCooCdg (bool initialGeometry=true) const
 Returns the coordinates del centro de gravedad of the element.
 
TritrizPos3d getPuntos (const size_t &ni, const size_t &nj, const size_t &nk, bool initialGeometry=true)
 Returns a grid of points distributed along the line.
 
void resetTributarias (void) const
 Resets tributary areas of connected nodes.
 
void vuelcaTributarias (const std::vector< double > &) const
 Adds to the tributary magnitude of each node the vector being passed as parameter.
 
virtual void calculaLongsTributarias (bool initialGeometry=true) const
 Computes the tributary lengths that corresponds to each node of the element.
 
virtual double getLongTributaria (const Node *) const
 Returns the tributary length corresponding to the node being passed as parameter.
 
virtual double getLongTributariaByTag (const int &) const
 Returns the tributary length corresponding to the node cuyo tag se pasa as parameter.
 
virtual double getAreaTributariaByTag (const int &) const
 Returns the área tributaria corresponding to the node cuyo tag se pasa as parameter.
 
virtual void calculaVolsTributarios (bool initialGeometry=true) const
 Calcula los volúmenes tributarios that corresponds to cada nodo of the element.
 
virtual double getVolTributario (const Node *) const
 Returns the tributary volume corresponding to the node being passed as parameter.
 
virtual double getVolTributarioByTag (const int &) const
 Returns the tributary volume corresponding to the node cuyo tag se pasa as parameter.
 
MEDGaussModel getMEDGaussModel (void) const
 Returns the Gauss integration model of the element for MED library.
 
int getEdgeNodes (const int &, const int &) const
 Returns the borde of the element que tiene por extremos los nodos being passed as parameters.
 
virtual ID getEdgesNode (const Node *) const
 Returns the bordes of the element que tienen por extremo el nodo being passed as parameter.
 
std::set< int > getEdgesNodes (const NodePtrSet &) const
 Returns the bordes of the element que tienen ambos extremos en el node set being passed as parameter.
 
ID getEdgesNodeByTag (const int &) const
 Returns the bordes of the element que tienen por extremo el nodo cuyo tag is being passed as parameter.
 
std::set< SetBase * > get_sets (void) const
 Returns the sets to which the element belongs.
 
void add_to_sets (std::set< SetBase * > &)
 Adds the element to the sets being passed as parameters.
 
- Public Member Functions inherited from XC::MeshComponent
 MeshComponent (int classTag)
 Constructor.
 
 MeshComponent (int tag, int classTag)
 Constructor.
 
- Public Member Functions inherited from XC::ContinuaReprComponent
 ContinuaReprComponent (int classTag)
 
 ContinuaReprComponent (int tag, int classTag)
 
virtual const bool isDead (void) const
 
virtual const bool isAlive (void) const
 
virtual void kill (void)
 
- Public Member Functions inherited from XC::DomainComponent
 ~DomainComponent (void)
 Destructor.
 
size_t getIdx (void) const
 Returns the index of the object (to be used in VTK arrays).
 
virtual DomaingetDomain (void) const
 Returns a pointer to the domain.
 
const PreprocessorGetPreprocessor (void) const
 Returns (if possible) a pointer to the preprocessor.
 
PreprocessorGetPreprocessor (void)
 Returns (if possible) a pointer to the preprocessor.
 
void set_indice (const size_t &i)
 Set the index for the object (see numera in Set). This index is used on VTK arrays.
 
- Public Member Functions inherited from XC::TaggedObject
 TaggedObject (int tag, EntCmd *owr=nullptr)
 Constructor.
 
void assignTag (int newTag)
 Establece el valor del tag.
 
int getTag (void) const
 
- Public Member Functions inherited from XC::MovableObject
 MovableObject (int classTag, int dbTag)
 Constructor.
 
 MovableObject (int classTag)
 Constructor.
 
 MovableObject (const MovableObject &otro)
 Copy constructor.
 
MovableObjectoperator= (const MovableObject &otro)
 Operacdor asignación.
 
int getClassTag (void) const
 Returns the tag de la clase.
 
int getDbTag (void) const
 Returns the tag para la database.
 
int getDbTag (CommParameters &)
 Returns the tag para la database.
 
void setDbTag (int dbTag)
 Asigna el tag para la database.
 
void setDbTag (CommParameters &)
 Asigna, sólo si es preciso, el tag para la database.
 
virtual int setVariable (const std::string &variable, Information &)
 Returns the identificador de la variable cuyo nombre being passed as parameter.
 
virtual int getVariable (const std::string &variable, Information &)
 
- Public Member Functions inherited from XC::DistributedBase
 DistributedBase (void)
 Constructor.
 
const int & getDbTagDataPos (const int &i) const
 Returns the data at the i-th position.
 
void setDbTagDataPos (const int &i, const int &v)
 Sets the data at the i-th position.
 
void inicComm (const int &dataSize) const
 Initializes communication.
 

Protected Member Functions

DbTagDatagetDbTagData (void) const
 Returns a vector para almacenar los dbTags de los miembros de la clase.
 
- Protected Member Functions inherited from XC::ShellMITC4Base
void libera (void)
 
void alloc (const ShellCrdTransf3dBase *)
 
void setupInicDisp (void)
 
void capturaInicDisp (void)
 
void zeroInicDisp (void)
 
void formInertiaTerms (int tangFlag) const
 form inertia terms
 
void formResidAndTangent (int tang_flag) const
 form residual and tangent
 
const Matrix calculateG (void) const
 Calcula la matriz G.
 
double * computeBdrill (int node, const double shp[3][4]) const
 compute Bdrill
 
const MatrixassembleB (const Matrix &Bmembrane, const Matrix &Bbend, const Matrix &Bshear) const
 assemble a B matrix More...
 
const MatrixcomputeBmembrane (int node, const double shp[3][4]) const
 compute Bmembrane matrix
 
const MatrixcomputeBbend (int node, const double shp[3][4]) const
 compute Bbend matrix
 
int sendCoordTransf (int posFlag, const int &, const int &, CommParameters &)
 Envía la coordinate transformation through the channel being passed as parameter.
 
int recvCoordTransf (int posFlag, const int &posClassTag, const int &posDbTag, const CommParameters &)
 Recibe la coordinate transformation through the channel being passed as parameter.
 
int sendData (CommParameters &)
 Send members through the channel being passed as parameter.
 
int recvData (const CommParameters &)
 Receives members through the channel being passed as parameter.
 
- Protected Member Functions inherited from XC::QuadBase4N< SectionFDPhysicalProperties >
TritrizPtrElem put_on_mesh (const TritrizPtrNod &, meshing_dir dm) const
 Put the element on the mesh being passed as parameter.
 
- Protected Member Functions inherited from XC::ElemWithMaterial< NNODOS, SectionFDPhysicalProperties >
int sendData (CommParameters &)
 Send members through the channel being passed as parameter.
 
int recvData (const CommParameters &)
 Receives members through the channel being passed as parameter.
 
- Protected Member Functions inherited from XC::ElementBase< NNODOS >
template<class TIPOMAT >
TIPOMAT * cast_material (const Material *ptr_mat)
 Casts the material pointer to a suitable type.
 
int sendData (CommParameters &cp)
 Send members through the channel being passed as parameter.
 
int recvData (const CommParameters &cp)
 Receives members through the channel being passed as parameter.
 
- Protected Member Functions inherited from XC::Element
virtual TritrizPtrElem cose (const SetEstruct &f1, const SetEstruct &f2) const
 
const VectorgetRayleighDampingForces (void) const
 Returns element Rayleigh damping forces.
 
int sendData (CommParameters &cp)
 Sends object members through the channel being passed as parameter.
 
int recvData (const CommParameters &cp)
 Receives object members through the channel being passed as parameter.
 
- Protected Member Functions inherited from XC::MeshComponent
void setup_matrices (std::deque< Matrix > &, const int &) const
 Initializes the matrix container.
 
int sendIdsEtiquetas (int posDbTag, CommParameters &)
 Send labelsthrough the channel being passed as parameter.
 
int recvIdsEtiquetas (int posDbTag, const CommParameters &)
 Receive labels through the channel being passed as parameter.
 
int sendData (CommParameters &)
 Send members through the channel being passed as parameter.
 
int recvData (const CommParameters &)
 Receives members through the channel being passed as parameter.
 
- Protected Member Functions inherited from XC::ContinuaReprComponent
int sendData (CommParameters &)
 Send members through the channel being passed as parameter.
 
int recvData (const CommParameters &)
 Receives members through the channel being passed as parameter.
 
- Protected Member Functions inherited from XC::DomainComponent
 DomainComponent (int tag, int classTag)
 Constructor.
 
int sendData (CommParameters &)
 Send object members through the channel being passed as parameter.
 
int recvData (const CommParameters &)
 Receives object members through the channel being passed as parameter.
 
- Protected Member Functions inherited from XC::TaggedObject
void setTag (int newTag)
 Establece el valor del tag.
 

Additional Inherited Members

- Public Types inherited from XC::Element
typedef std::vector< const Node * > NodesEdge
 
- Static Public Member Functions inherited from XC::ElementBase< NNODOS >
static const int numNodos (void)
 Returns the element number of nodes.
 
- Static Public Member Functions inherited from XC::Element
static void setDeadSRF (const double &d)
 Assigns Stress Reduction Factor for element deactivation.
 
static DefaultTaggetDefaultTag (void)
 Returns next element's tag value by default.
 
- Static Public Attributes inherited from XC::Element
static double dead_srf = 1e-6
 Stress reduction factor for foozen elements.
 
- Static Protected Member Functions inherited from XC::ShellMITC4Base
static void shape2d (const double &, const double &, const double x[2][4], double shp[3][4], double &xsj)
 shape function routine for MITC4 elements. More...
 
- Protected Attributes inherited from XC::ShellMITC4Base
double Ktt
 drilling stiffness
 
double xl [2][4]
 local nodal coordinates, two coordinates for each of four nodes
 
ShellCrdTransf3dBasetheCoordTransf
 Coordinate transformation.
 
FVectorShell p0
 Reactions in the basic system due to element loads.
 
Matrix Ki
 
std::vector< VectorinicDisp
 Initial displacements.
 
- Protected Attributes inherited from XC::ElemPlano< 4, SectionFDPhysicalProperties >
std::vector< double > areasTributarias
 
- Protected Attributes inherited from XC::ElemWithMaterial< NNODOS, SectionFDPhysicalProperties >
SectionFDPhysicalProperties physicalProperties
 pointers to the material objects and physical properties.
 
- Protected Attributes inherited from XC::ElementBase< NNODOS >
NodePtrsWithIDs theNodes
 pointers to node.
 
- Protected Attributes inherited from XC::Element
Vector load
 vector for applying loads
 
RayleighDampingFactors rayFactors
 Rayleigh damping factors.
 
Matrix Kc
 pointer to hold last committed matrix if needed for rayleigh damping
 
- Protected Attributes inherited from XC::MeshComponent
int index
 Index for VTK arrays.
 
LabelContainer labels
 Label container.
 
- Static Protected Attributes inherited from XC::ShellMITC4Base
static Matrix stiff
 
static Vector resid
 
static Matrix mass
 
static Matrix damping
 
static ShellBData BData
 B-bar data.
 

Detailed Description

MIT C4 shell element.


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