65 #include "utility/recorder/ObjWithRecorders.h" 66 #include "PseudoTimeTracker.h" 67 #include "../mesh/Mesh.h" 68 #include "../constraints/ConstrContainer.h" 69 #include "utility/matrix/Vector.h" 79 class SingleDomEleIter;
80 class SingleDomNodIter;
82 class LoadCombination;
90 class FEM_ObjectBroker;
91 class RayleighDampingFactors;
102 std::string CallbackCommit;
106 bool hasDomainChangedFlag;
111 Vector modalParticipationFactors;
113 std::string nmbCombActual;
121 inline virtual Domain *get_domain_ptr(
void)
129 Domain(EntCmd *owr,DataOutputHandler::map_output_handlers *oh);
130 Domain(EntCmd *owr,
int numNods,
int numElements,
int numSPs,
int numMPs,
int numLPatterns,
int numNLockers,DataOutputHandler::map_output_handlers *oh);
145 void checkNodalReactions(
const double &);
156 virtual bool removeSFreedom_Constraint(
int theNode,
int theDOF,
int loadPatternTag);
157 virtual bool removeSFreedom_Constraint(
int tag);
170 virtual bool removeSFreedom_Constraint(
int tag,
int loadPattern);
194 {
return timeTracker; }
195 inline int getCurrentGeoTag(
void)
const 196 {
return currentGeoTag; }
197 virtual int getCommitTag(
void)
const;
208 virtual void setCommitTag(
int newTag);
209 virtual void setCurrentTime(
double newTime);
210 virtual void setCommittedTime(
double newTime);
211 virtual void setTime(
double newTime);
212 virtual void applyLoad(
double pseudoTime);
221 virtual int update(
double newTime,
double dT);
222 virtual int newStep(
double dT);
247 virtual void setDomainChangeStamp(
int newStamp);
252 virtual void Print(std::ostream &s,
int flag =0);
253 friend std::ostream &operator<<(std::ostream &s,
Domain &M);
264 virtual double getNodeDisp(
int nodeTag,
int dof,
int &errorFlag);
A LoadPattern object is used to to store reference loads and single point constraints and a TimeSerie...
Definition: LoadPattern.h:87
virtual int setModalParticipationFactors(const Vector &)
Sets the values of the modal participation factors.
Definition: Domain.cpp:758
virtual bool addSFreedom_Constraint(SFreedom_Constraint *)
Adds to the domain una constraint monopunto.
Definition: Domain.cpp:192
double getAngularFrequency(int) const
Return the angular frequency of the i-th mode.
Definition: Domain.cpp:708
virtual void domainChange(void)
Establece que the model ha cambiado.
Definition: Domain.cpp:799
Single freedom constraints that make part of a load pattern.
Definition: NodeLocker.h:44
virtual const double & getEigenvalue(int) const
Returns the eigenvalue of the i-th mode.
Definition: Domain.cpp:704
virtual bool addMRMFreedom_Constraint(MRMFreedom_Constraint *)
Adds to the domain una constraint multi retained node.
Definition: Domain.cpp:216
void setNodeReactionException(const int &)
Asigna la excepción para comprobación de reacciones (ver Domain::checkNodalReactions).
Definition: Domain.cpp:993
int sendData(CommParameters &cp)
Send data through the channel being passed as parameter.
Definition: Domain.cpp:885
virtual const Vector & getModalParticipationFactors(void) const
Returns the modal participation factors.
Definition: Domain.cpp:769
virtual Graph & getNodeGraph(void)
Builds (if necessary) the domain nodes graph and returns a reference to it.
Definition: Domain.cpp:568
virtual int update(void)
Updates the state of the mesh.
Definition: Domain.cpp:673
virtual Mesh & getMesh(void)
Returns a reference to the domain mesh.
Definition: Domain.cpp:499
static void setDeadSRF(const double &)
Assigns Stress Reduction Factor for element deactivation.
Definition: Domain.cpp:179
virtual ConstrContainer & getConstraints(void)
Returns domain constraints.
Definition: Domain.cpp:507
virtual int sendSelf(CommParameters &)
Sends object through the channel being passed as parameter.
Definition: Domain.cpp:943
int getNumModes(void) const
Returns the number of computed eigenvalues.
Definition: Domain.cpp:754
virtual int revertToLastCommit(void)
Returns the domain to its last commited state.
Definition: Domain.cpp:632
virtual bool removeNodeLocker(int nlTag)
Elimina del domain el.
Definition: Domain.cpp:383
Finite element mesh.
Definition: Mesh.h:64
void resetLoadCase(void)
Prepares the domain to solve for a new load pattern.
Definition: Domain.cpp:170
Definition: MeshRegion.h:74
Domain (mesh and boundary conditions) of the finite element model.
Definition: Domain.h:98
Vector getPeriodos(void) const
Returns a vector with the computed periods (for each mode).
Definition: Domain.cpp:734
double getFrecuencia(int) const
Return the frequency of the i-th mode.
Definition: Domain.cpp:716
double getPeriodo(int) const
Returns the period of the i-th mode.
Definition: Domain.cpp:712
virtual int setRayleighDampingFactors(const RayleighDampingFactors &rF)
Asigna valores a los coeficientes de amortiguamiento de Rayleigh.
Definition: Domain.cpp:606
virtual void clearDOF_GroupPtr(void)
Clears the pointers to DOF groups.
Definition: Domain.cpp:483
virtual bool addNodalLoad(NodalLoad *, int loadPatternTag)
Appends a nodal load to the pattern being passed as parameter.
Definition: Domain.cpp:244
virtual MeshRegion * getRegion(int region)
Returns a pointer to the la región cuyo tag being passed as parameter.
Definition: Domain.cpp:860
Vector que almacena los dbTags de los miembros de la clase.
Definition: DbTagData.h:43
void removeNLs(void)
Elimina del domain todos los bloqueos de nodos.
Definition: Domain.cpp:449
Iterator over an element container.
Definition: ElementIter.h:73
virtual bool removeNode(int tag)
Elimina the node identified by the tag being passed as parameter.
Definition: Domain.cpp:276
int recvData(const CommParameters &cp)
Receive data through the channel being passed as parameter.
Definition: Domain.cpp:908
virtual bool addLoadPattern(LoadPattern *)
Adds al modelo la hipótesis simple being passed as parameter.
Definition: Domain.cpp:316
Vector getFrecuencias(void) const
Returns a vector with the computed frequencies (for each mode).
Definition: Domain.cpp:744
const Preprocessor * GetPreprocessor(void) const
Returns (if possible) a pointer to the preprocessor.
Definition: Domain.cpp:1008
virtual bool removeElementalLoad(int tag, int loadPattern)
Removes from domain the elemental load being passed as parameter.
Definition: Domain.cpp:468
virtual const Vector & getPhysicalBounds(void)
Returns the BND of the model.
Definition: Domain.cpp:558
virtual bool addMFreedom_Constraint(MFreedom_Constraint *)
Adds to the domain una constraint multipunto.
Definition: Domain.cpp:204
Mesh node.
Definition: Node.h:99
virtual int recvSelf(const CommParameters &)
Receives object through the channel being passed as parameter.
Definition: Domain.cpp:962
virtual int addRecorder(Recorder &theRecorder)
Adds a recorder to the model.
Definition: Domain.cpp:838
virtual void setLoadConstant(void)
Set all the loads as constant.
Definition: Domain.cpp:598
virtual bool addNodeLocker(NodeLocker *)
Adds al modelo.
Definition: Domain.cpp:335
Objeto capaz de gestionar Recorders.
Definition: ObjWithRecorders.h:44
Load pattern combination (1.5*PP+1.0*CP+1.6*SC ...).
Definition: LoadCombination.h:43
virtual int commit(void)
Commits domain state and triggers "record" method for all defined recorders.
Definition: Domain.cpp:611
virtual int setMass(const Matrix &mass, int nodeTag)
Asigna la matriz de masas al nudo cuyo tag being passed as parameter.
Definition: Domain.cpp:989
Base calass for the finite elements.
Definition: Element.h:104
Base class for loads over elements.
Definition: ElementalLoad.h:73
virtual ~Domain(void)
Destructor.
Definition: Domain.cpp:166
virtual bool removeElement(int tag)
Clears the element identified by the tag being passed as parameter.
Definition: Domain.cpp:272
Finite element model generation tools.
Definition: Preprocessor.h:58
Iterador sobre el conteedor de nodos.
Definition: NodeIter.h:73
virtual int getNumElements(void) const
Returns the number of elements.
Definition: Domain.cpp:550
virtual int calculateNodalReactions(bool inclInertia, const double &)
Calculate nodal reaction forces and moments.
Definition: Domain.cpp:1000
virtual int addRegion(MeshRegion &theRegion)
Adds a region.
Definition: Domain.cpp:851
virtual void clearAll(void)
Removes all components from domain (nodes, elements, loads & constraints). GENERAL NOTE ON REMOVAL OF...
Definition: Domain.cpp:133
virtual Node * getNode(int tag)
Returns a pointer to the nodo cuyo tag being passed as parameter.
Definition: Domain.cpp:539
virtual const double & getModalParticipationFactor(int mode) const
Returns the modal participation factor of the i-th mode.
Definition: Domain.cpp:765
Vector getAngularFrequencies(void) const
Returns a vector with the computed angular frequencies (for each mode).
Definition: Domain.cpp:724
DbTagData & getDbTagData(void) const
Returns a vector para almacenar los dbTags de los miembros de la clase.
Definition: Domain.cpp:878
An Recorder object is used in the program to store/restore information at each commit().
Definition: Recorder.h:79
virtual int buildNodeGraph(Graph &theNodeGraph)
Builds the node graph.
Definition: Domain.cpp:873
Vector de celdas.
Definition: DqMeshRegion.h:40
Base class for distributed processing.
Definition: DistributedBase.h:40
virtual bool addLoadCombination(LoadCombination *)
Adds to the domain the load combination being passed as parameter.
Definition: Domain.cpp:347
virtual int initialize(void)
Inicializa.
Definition: Domain.cpp:602
virtual bool removeNodalLoad(int tag, int loadPattern)
Removes from domain the nodal load being passed as parameter.
Definition: Domain.cpp:461
Multiple retained nodes constraint.
Definition: MRMFreedom_Constraint.h:58
bool existNode(int tag)
Returns true if the mesh has a node with the tag being passed as parameter.
Definition: Domain.cpp:534
const double getEffectiveModalMass(int mode) const
Return the effective modal mass of the i-th mode.
Definition: Domain.cpp:773
bool existElement(int tag)
Returns true if the element identified by the tag being passed as parameter already exists en el doma...
Definition: Domain.cpp:519
virtual bool addElement(Element *)
Adds to the domain the element being passed as parameter.
Definition: Domain.cpp:184
virtual bool removeMFreedom_Constraint(int tag)
Elimina del domain la constraint multipunto cuyo tag being passed as parameter.
Definition: Domain.cpp:297
virtual ElementIter & getElements(void)
Returns an iterator to the element container.
Definition: Domain.cpp:487
Rayleigh damping factors.
Definition: RayleighDampingFactors.h:45
virtual double getNodeDisp(int nodeTag, int dof, int &errorFlag)
Returns the value of dof component of displacement for the node with the tag being passed as paramete...
Definition: Domain.cpp:985
virtual int buildEleGraph(Graph &theEleGraph)
Builds the element graph.
Definition: Domain.cpp:869
The Graph class provides the abstraction of a graph, a collection of vertices and edges...
Definition: Graph.h:84
void removeLoadCombination(LoadCombination *comb)
Removes from the domain the load combination being passed as parameter.
Definition: Domain.cpp:422
virtual bool addNode(Node *)
Adds to the domain el nodo being passed as parameter.
Definition: Domain.cpp:188
virtual int revertToStart(void)
Returns the domain to its initial state and triggers the "restart" method for all the recorders...
Definition: Domain.cpp:650
virtual int setEigenvalues(const Vector &)
Sets eigenvalues.
Definition: Domain.cpp:693
Multi-freedom constraint. Objectt of this class store the information for a multifreedom constraint...
Definition: MFreedom_Constraint.h:84
void removeLPs(void)
Elimina del domain todos los load patterns.
Definition: Domain.cpp:439
virtual NodeIter & getNodes(void)
Returns an iterator a los nodos del domain.
Definition: Domain.cpp:491
virtual int hasDomainChanged(void)
Returns true if the modelo ha cambiado.
Definition: Domain.cpp:803
Single freedom constraint.
Definition: SFreedom_Constraint.h:79
Vector getEffectiveModalMasses(void) const
Returns the effective modal masses for each mode.
Definition: Domain.cpp:777
Communication parameters between processes.
Definition: CommParameters.h:65
Load over a node.
Definition: NodalLoad.h:76
virtual bool removeMRMFreedom_Constraint(int tag)
Elimina del domain la constraint multi retained node cuyo tag being passed as parameter.
Definition: Domain.cpp:307
virtual int getNumNodes(void) const
Returns the número de nodos.
Definition: Domain.cpp:554
virtual const Vector & getEigenvalues(void) const
Returns the eigenvalues vector.
Definition: Domain.cpp:720
virtual bool addElementalLoad(ElementalLoad *, int loadPatternTag)
Adds to the caso being passed as parameter una load over elements.
Definition: Domain.cpp:256
================================================================================
Definition: ContinuaReprComponent.h:34
virtual Graph & getElementGraph(void)
Builds (if necessary) the domain elements graph and returns a reference to it.
Definition: Domain.cpp:563
Constraint (essential and natural boundary conditions) container.
Definition: ConstrContainer.h:61
virtual bool removeLoadPattern(int loadTag)
Elimina del domain el load pattern cuyo tag being passed as parameter.
Definition: Domain.cpp:367
Registro del tiempo.
Definition: PseudoTimeTracker.h:40
virtual void Print(std::ostream &s, int flag=0)
Imprime el domain.
Definition: Domain.cpp:821
virtual Element * getElement(int tag)
Returns a pointer to the element identified by the tag being passed as parameter. ...
Definition: Domain.cpp:524
double getTotalMass(void) const
Return the total effective modal mass.
Definition: Domain.cpp:784
Domain(EntCmd *owr, DataOutputHandler::map_output_handlers *oh)
Constructor.
Definition: Domain.cpp:115
const std::string & getNombreCombActual(void) const
Returns the name of the current load combination.
Definition: Domain.cpp:417