32 #include "domain/mesh/MeshComponentContainer.h" 33 #include "utility/matrix/Vector.h" 34 #include "NodeLockers.h" 35 #include "solution/graph/graph/Graph.h" 36 #include "node/KDTreeNodes.h" 37 #include "element/utils/KDTreeElements.h" 47 class SingleDomEleIter;
48 class SingleDomNodIter;
53 class FEM_ObjectBroker;
54 class TaggedObjectStorage;
55 class RayleighDampingFactors;
67 bool eleGraphBuiltFlag;
68 bool nodeGraphBuiltFlag;
71 Graph theElementGraph;
76 std::vector<std::string> nombresCoordenadas;
77 std::string nombreUnidades;
84 int tagNodeCheckReactionException;
88 void alloc_contenedores(
void);
89 void alloc_iters(
void);
90 bool check_contenedores(
void)
const;
91 void init_bounds(
void);
92 void update_bounds(
const Vector &);
93 void add_node_to_domain(
Node *);
94 void add_element_to_domain(
Element *);
95 void add_nodes_to_domain(
void);
96 void add_elements_to_domain(
void);
136 {
return theElements; }
138 {
return theElements; }
141 inline const NodeLockers &getNodeLockers(
void)
const 168 inline const std::vector<std::string> &getNombresCoordenadas(
void)
const 169 {
return nombresCoordenadas; }
170 inline std::string getNombreUnidades(
void)
const 171 {
return nombreUnidades; }
193 virtual void Print(std::ostream &s,
int flag =0);
194 friend std::ostream &operator<<(std::ostream &s,
Mesh &M);
200 virtual double getNodeDisp(
int nodeTag,
int dof,
int &errorFlag);
Base class for the element and constraint containers.
Definition: MeshComponentContainer.h:40
void melt_alive_nodes(const std::string &nmbLocker)
Clears the constraints over activated nodes previously created by the freeze method.
Definition: Mesh.cc:484
bool existElement(int tag)
Returns true if the mesh has an element with the tag being passed as parameter.
Definition: Mesh.cc:380
virtual int getNumNodes(void) const
Returns the número de nodos.
Definition: Mesh.cc:506
virtual void clearAll(void)
Deletes from domain all its components (nodes, elements, loads and constraints). GENERAL NOTE ON REMO...
Definition: Mesh.cc:167
virtual bool removeElement(int tag)
Deletes the element identified by the tag being passed as parameter.
Definition: Mesh.cc:318
virtual int revertToStart(void)
Return the mesh into its initial state.
Definition: Mesh.cc:740
virtual bool addElement(Element *)
Appends to the domain the element being passed as parameter.
Definition: Mesh.cc:220
virtual double getNodeDisp(int nodeTag, int dof, int &errorFlag)
Returns the component of the displacement of the node wich the tag is being passed as parameter...
Definition: Mesh.cc:1033
void zeroLoads(void)
Loop over nodes and elements getting them to first zero their loads.
Definition: Mesh.cc:663
virtual NodeIter & getNodes()
Returns an iterator a los nodos del domain.
Definition: Mesh.cc:373
Finite element mesh.
Definition: Mesh.h:64
virtual bool addNode(Node *)
Adds to the domain the node being passed as parameter.
Definition: Mesh.cc:298
virtual int recvSelf(const CommParameters &)
Receives object through the channel being passed as parameter.
Definition: Mesh.cc:1017
Vector que almacena los dbTags de los miembros de la clase.
Definition: DbTagData.h:43
virtual int sendSelf(CommParameters &)
Sends object through the channel being passed as parameter.
Definition: Mesh.cc:1004
bool existNode(int tag)
Returns true if the mesh has a node with the tag being passed as parameter.
Definition: Mesh.cc:423
size_t getNumFrozenNodes(void) const
Returns the number of frozen nodes on the mesh.
Definition: Mesh.cc:570
Iterator over an element container.
Definition: ElementIter.h:73
virtual int calculateNodalReactions(bool inclInertia, const double &)
Calculate nodal reaction forces and moments.
Definition: Mesh.cc:1085
virtual const Vector & getPhysicalBounds(void)
Returns the BND del modelo.
Definition: Mesh.cc:600
static void setDeadSRF(const double &)
Assigns Stress Reduction Factor for element deactivation.
Definition: Mesh.cc:189
void freeze_dead_nodes(const std::string &nmbLocker)
Freezes inactive nodes (prescribes zero displacement for all DOFs on inactive nodes).
Definition: Mesh.cc:464
virtual void Print(std::ostream &s, int flag=0)
Imprime el domain.
Definition: Mesh.cc:786
Mesh node.
Definition: Node.h:99
Definition: KDTreeNodes.h:58
virtual int revertToLastCommit(void)
Returns the mesh to its last commited state.
Definition: Mesh.cc:720
Node * getNearestNode(const Pos3d &p)
Returns the nodo closest to the point being passed as parameter.
Definition: Mesh.cc:449
virtual int commit(void)
Commits mesh state.
Definition: Mesh.cc:703
Element * getNearestElement(const Pos3d &p)
Returns a pointer to the nearest element to the point being passed as parameter.
Definition: Mesh.cc:409
Vector getEffectiveModalMasses(const int &numModes) const
Returns the masas modales efectivas.
Definition: Mesh.cc:654
const double getEffectiveModalMass(int mode) const
Return the masa modal efectiva correspondiente al modo i.
Definition: Mesh.cc:642
virtual int buildEleGraph(Graph &theEleGraph)
Builds the element's graph.
Definition: Mesh.cc:805
Base calass for the finite elements.
Definition: Element.h:104
Definition: KDTreeElements.h:59
void libera(void)
Frees memory occupied by mesh components. this calls delete on all components of the model...
Definition: Mesh.cc:62
virtual Node * getNode(int tag)
Returns a pointer to the nodo cuyo tag being passed as parameter.
Definition: Mesh.cc:427
size_t getNumDeadNodes(void) const
Returns the number of inactive nodes on the mesh.
Definition: Mesh.cc:555
Iterador sobre el conteedor de nodos.
Definition: NodeIter.h:73
virtual ElementIter & getElements()
Returns an iterator to the mesh elements.
Definition: Mesh.cc:366
void setNodeReactionException(const int &)
Asigna la excepción para comprobación de reacciones (ver Mesh::checkNodalReactions).
Definition: Mesh.cc:1061
virtual Element * getElement(int tag)
Returns a pointer to the element identified by the tag being passed as parameter. ...
Definition: Mesh.cc:385
DbTagData & getDbTagData(void) const
Returns a vector para almacenar los dbTags de los miembros de la clase.
Definition: Mesh.cc:972
size_t getNumLiveNodes(void) const
Returns the number of active nodes on the mesh.
Definition: Mesh.cc:540
int sendData(CommParameters &)
Send object members through the channel being passed as parameter.
Definition: Mesh.cc:979
int update(void)
Update the element's state.
Definition: Mesh.cc:761
int recvData(const CommParameters &)
Receives object members through the channel being passed as parameter.
Definition: Mesh.cc:990
Definition: SingleDomEleIter.h:71
void checkNodalReactions(const double &)
Comprueba que los valores de las reacciones en los nodos sean correctos, esto es, que todos los nodos...
Definition: Mesh.cc:1066
size_t getNumFreeNodes(void) const
Returns the number of free nodes on the mesh.
Definition: Mesh.cc:585
virtual int setRayleighDampingFactors(const RayleighDampingFactors &rF)
Asigna valores a los coeficientes de amortiguamiento de Rayleigh.
Definition: Mesh.cc:687
TaggedObjectStorage. A TaggedObjectStorage object a container object used to hold objects of type Tag...
Definition: TaggedObjectStorage.h:76
Rayleigh damping factors.
Definition: RayleighDampingFactors.h:45
virtual Graph & getNodeGraph(void)
Builds (if needed) the graph of the domain nodes and returns a reference to it.
Definition: Mesh.cc:624
The Graph class provides the abstraction of a graph, a collection of vertices and edges...
Definition: Graph.h:84
virtual int setMass(const Matrix &mass, int nodeTag)
Asigna la matriz de masas al nudo cuyo tag being passed as parameter.
Definition: Mesh.cc:1052
virtual Graph & getElementGraph(void)
Builds the elements graph of the mesh (if not builded yet) and returns a reference to it...
Definition: Mesh.cc:604
size_t getNumLiveElements(void) const
Returns the number of active elements on the mesh.
Definition: Mesh.cc:510
NodeLocker container.
Definition: NodeLockers.h:41
Definition: SingleDomNodIter.h:70
size_t getNumDeadElements(void) const
Returns the number of inactive elements on the mesh.
Definition: Mesh.cc:525
int initialize(void)
Inicializa.
Definition: Mesh.cc:677
virtual bool removeNode(int tag)
Removes from domain the node identified by the tag being passed as parameter.
Definition: Mesh.cc:337
void clearDOF_GroupPtr(void)
Clears the pointers to node DOF groups.
Definition: Mesh.cc:357
Communication parameters between processes.
Definition: CommParameters.h:65
void setGraphBuiltFlags(const bool &f)
Returns true if the modelo ha cambiado.
Definition: Mesh.cc:779
================================================================================
Definition: ContinuaReprComponent.h:34
virtual ~Mesh(void)
Destructor.
Definition: Mesh.cc:184
virtual int getNumElements(void) const
Returns the number of elements.
Definition: Mesh.cc:502
virtual int buildNodeGraph(Graph &theNodeGraph)
Construye el grafo de nodos.
Definition: Mesh.cc:909