XC Open source finite element analysis program
Public Member Functions | Static Public Member Functions | Protected Member Functions | Friends | List of all members
XC::Domain Class Reference

Domain (mesh and boundary conditions) of the finite element model. More...

#include <Domain.h>

Inheritance diagram for XC::Domain:
XC::ObjWithRecorders XC::DistributedBase XC::PartitionedDomain XC::Subdomain XC::ActorSubdomain XC::ShadowSubdomain

Public Member Functions

 Domain (EntCmd *owr, DataOutputHandler::map_output_handlers *oh)
 Constructor.
 
 Domain (EntCmd *owr, int numNods, int numElements, int numSPs, int numMPs, int numLPatterns, int numNLockers, DataOutputHandler::map_output_handlers *oh)
 Constructor.
 
virtual ~Domain (void)
 Destructor. More...
 
virtual bool addElement (Element *)
 Adds to the domain the element being passed as parameter.
 
virtual bool addNode (Node *)
 Adds to the domain el nodo being passed as parameter.
 
virtual bool addSFreedom_Constraint (SFreedom_Constraint *)
 Adds to the domain una constraint monopunto.
 
virtual bool addMFreedom_Constraint (MFreedom_Constraint *)
 Adds to the domain una constraint multipunto.
 
virtual bool addMRMFreedom_Constraint (MRMFreedom_Constraint *)
 Adds to the domain una constraint multi retained node.
 
virtual bool addLoadPattern (LoadPattern *)
 Adds al modelo la hipótesis simple being passed as parameter.
 
virtual bool addNodeLocker (NodeLocker *)
 Adds al modelo.
 
virtual bool addLoadCombination (LoadCombination *)
 Adds to the domain the load combination being passed as parameter.
 
void setNodeReactionException (const int &)
 Asigna la excepción para comprobación de reacciones (ver Domain::checkNodalReactions).
 
void checkNodalReactions (const double &)
 
virtual bool addSFreedom_Constraint (SFreedom_Constraint *, int loadPatternTag)
 Adds to the domain una constraint monopunto.
 
virtual bool addNodalLoad (NodalLoad *, int loadPatternTag)
 Appends a nodal load to the pattern being passed as parameter.
 
virtual bool addElementalLoad (ElementalLoad *, int loadPatternTag)
 Adds to the caso being passed as parameter una load over elements.
 
virtual void clearAll (void)
 Removes all components from domain (nodes, elements, loads & constraints). GENERAL NOTE ON REMOVAL OF COMPONENTS: downward casts (while bad) are o.k. as only the type of components can be added to the storage objects, e.g. only elements can be added to theElements therefore casting a XC::DomainComponent from theElements to an XC::Element is o.k.
 
virtual bool removeElement (int tag)
 Clears the element identified by the tag being passed as parameter.
 
virtual bool removeNode (int tag)
 Elimina the node identified by the tag being passed as parameter.
 
virtual bool removeSFreedom_Constraint (int theNode, int theDOF, int loadPatternTag)
 
virtual bool removeSFreedom_Constraint (int tag)
 Elimina del domain la constraint monopunto cuyo tag being passed as parameter.
 
virtual bool removeMFreedom_Constraint (int tag)
 Elimina del domain la constraint multipunto cuyo tag being passed as parameter.
 
virtual bool removeMRMFreedom_Constraint (int tag)
 Elimina del domain la constraint multi retained node cuyo tag being passed as parameter.
 
virtual bool removeLoadPattern (int loadTag)
 Elimina del domain el load pattern cuyo tag being passed as parameter.
 
virtual bool removeNodeLocker (int nlTag)
 Elimina del domain el.
 
bool removeLoadPattern (LoadPattern *lp)
 Elimina del domain el load pattern being passed as parameter.
 
bool removeNodeLocker (NodeLocker *lp)
 Elimina del domain el load pattern being passed as parameter.
 
void removeLoadCombination (LoadCombination *comb)
 Removes from the domain the load combination being passed as parameter.
 
void removeLPs (void)
 Elimina del domain todos los load patterns.
 
void removeNLs (void)
 Elimina del domain todos los bloqueos de nodos.
 
virtual bool removeNodalLoad (int tag, int loadPattern)
 Removes from domain the nodal load being passed as parameter. More...
 
virtual bool removeElementalLoad (int tag, int loadPattern)
 Removes from domain the elemental load being passed as parameter. More...
 
virtual bool removeSFreedom_Constraint (int tag, int loadPattern)
 Removes from domain the single freedom constraint being passed as parameter. More...
 
virtual void clearDOF_GroupPtr (void)
 Clears the pointers to DOF groups.
 
virtual ElementItergetElements (void)
 Returns an iterator to the element container.
 
virtual NodeItergetNodes (void)
 Returns an iterator a los nodos del domain.
 
virtual MeshgetMesh (void)
 Returns a reference to the domain mesh.
 
virtual const MeshgetMesh (void) const
 Returns a reference to the domain mesh.
 
virtual ConstrContainergetConstraints (void)
 Returns domain constraints.
 
virtual const ConstrContainergetConstraints (void) const
 Returns domain constraints.
 
const std::string & getNombreCombActual (void) const
 Returns the name of the current load combination.
 
bool existElement (int tag)
 Returns true if the element identified by the tag being passed as parameter already exists en el domain.
 
virtual ElementgetElement (int tag)
 Returns a pointer to the element identified by the tag being passed as parameter.
 
virtual const ElementgetElement (int tag) const
 Returns a const pointer to the element identified by the tag being passed as parameter.
 
bool existNode (int tag)
 Returns true if the mesh has a node with the tag being passed as parameter.
 
virtual NodegetNode (int tag)
 Returns a pointer to the nodo cuyo tag being passed as parameter.
 
virtual const NodegetNode (int tag) const
 Returns a pointer to the nodo cuyo tag being passed as parameter.
 
const PseudoTimeTrackergetTimeTracker (void) const
 
int getCurrentGeoTag (void) const
 
virtual int getCommitTag (void) const
 
virtual int getNumElements (void) const
 Returns the number of elements.
 
virtual int getNumNodes (void) const
 Returns the número de nodos.
 
virtual const VectorgetPhysicalBounds (void)
 Returns the BND of the model.
 
virtual GraphgetElementGraph (void)
 Builds (if necessary) the domain elements graph and returns a reference to it.
 
virtual GraphgetNodeGraph (void)
 Builds (if necessary) the domain nodes graph and returns a reference to it.
 
virtual void setCommitTag (int newTag)
 
virtual void setCurrentTime (double newTime)
 
virtual void setCommittedTime (double newTime)
 
virtual void setTime (double newTime)
 
virtual void applyLoad (double pseudoTime)
 
virtual void setLoadConstant (void)
 Set all the loads as constant.
 
virtual int initialize (void)
 Inicializa.
 
virtual int setRayleighDampingFactors (const RayleighDampingFactors &rF)
 Asigna valores a los coeficientes de amortiguamiento de Rayleigh.
 
virtual int commit (void)
 Commits domain state and triggers "record" method for all defined recorders.
 
virtual int revertToLastCommit (void)
 Returns the domain to its last commited state.
 
virtual int revertToStart (void)
 Returns the domain to its initial state and triggers the "restart" method for all the recorders.
 
virtual int update (void)
 Updates the state of the mesh.
 
virtual int update (double newTime, double dT)
 Actualiza el estado del domain.
 
virtual int newStep (double dT)
 
void resetLoadCase (void)
 Prepares the domain to solve for a new load pattern.
 
int getNumModes (void) const
 Returns the number of computed eigenvalues.
 
virtual int setEigenvalues (const Vector &)
 Sets eigenvalues.
 
virtual const double & getEigenvalue (int) const
 Returns the eigenvalue of the i-th mode.
 
double getAngularFrequency (int) const
 Return the angular frequency of the i-th mode.
 
double getPeriodo (int) const
 Returns the period of the i-th mode.
 
double getFrecuencia (int) const
 Return the frequency of the i-th mode.
 
virtual const VectorgetEigenvalues (void) const
 Returns the eigenvalues vector.
 
Vector getAngularFrequencies (void) const
 Returns a vector with the computed angular frequencies (for each mode).
 
Vector getPeriodos (void) const
 Returns a vector with the computed periods (for each mode).
 
Vector getFrecuencias (void) const
 Returns a vector with the computed frequencies (for each mode).
 
virtual int setModalParticipationFactors (const Vector &)
 Sets the values of the modal participation factors.
 
virtual const double & getModalParticipationFactor (int mode) const
 Returns the modal participation factor of the i-th mode.
 
virtual const VectorgetModalParticipationFactors (void) const
 Returns the modal participation factors.
 
const double getEffectiveModalMass (int mode) const
 Return the effective modal mass of the i-th mode.
 
Vector getEffectiveModalMasses (void) const
 Returns the effective modal masses for each mode.
 
double getTotalMass (void) const
 Return the total effective modal mass.
 
virtual void domainChange (void)
 Establece que the model ha cambiado.
 
virtual int hasDomainChanged (void)
 Returns true if the modelo ha cambiado.
 
virtual void setDomainChangeStamp (int newStamp)
 
virtual int addRegion (MeshRegion &theRegion)
 Adds a region.
 
virtual MeshRegiongetRegion (int region)
 Returns a pointer to the la región cuyo tag being passed as parameter.
 
virtual void Print (std::ostream &s, int flag=0)
 Imprime el domain.
 
virtual int sendSelf (CommParameters &)
 Sends object through the channel being passed as parameter.
 
virtual int recvSelf (const CommParameters &)
 Receives object through the channel being passed as parameter.
 
const PreprocessorGetPreprocessor (void) const
 Returns (if possible) a pointer to the preprocessor.
 
PreprocessorGetPreprocessor (void)
 Returns (if possible) a pointer to the preprocessor.
 
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 parameter. More...
 
virtual int setMass (const Matrix &mass, int nodeTag)
 Asigna la matriz de masas al nudo cuyo tag being passed as parameter.
 
virtual int calculateNodalReactions (bool inclInertia, const double &)
 Calculate nodal reaction forces and moments.
 
virtual int addRecorder (Recorder &theRecorder)
 Adds a recorder to the model.
 
- Public Member Functions inherited from XC::ObjWithRecorders
 ObjWithRecorders (EntCmd *owr, DataOutputHandler::map_output_handlers *oh=nullptr)
 
virtual ~ObjWithRecorders (void)
 Destructor.
 
RecordernewRecorder (const std::string &, DataOutputHandler *oh=nullptr)
 Lee un objeto Recorder desde archivo.
 
recorder_iterator recorder_begin (void)
 
const_recorder_iterator recorder_begin (void) const
 
recorder_iterator recorder_end (void)
 
const_recorder_iterator recorder_end (void) const
 
virtual int record (int track, double timeStamp=0.0)
 Ejecuta los recorders sobre el tag being passed as parameter.
 
void restart (void)
 Rearranca los recorders.
 
virtual int removeRecorders (void)
 Elimina los recorders.
 
void setLinks (Domain *dom)
 Asigna el domain a los recorders.
 
void SetOutputHandlers (DataOutputHandler::map_output_handlers *oh)
 Asigna el almacén de gestores de salida.
 
- 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.
 

Static Public Member Functions

static void setDeadSRF (const double &)
 Assigns Stress Reduction Factor for element deactivation.
 

Protected Member Functions

virtual int buildEleGraph (Graph &theEleGraph)
 Builds the element graph.
 
virtual int buildNodeGraph (Graph &theNodeGraph)
 Builds the node graph.
 
virtual Domainget_domain_ptr (void)
 
void libera (void)
 
DbTagDatagetDbTagData (void) const
 Returns a vector para almacenar los dbTags de los miembros de la clase.
 
int sendData (CommParameters &cp)
 Send data through the channel being passed as parameter.
 
int recvData (const CommParameters &cp)
 Receive data through the channel being passed as parameter.
 
- Protected Member Functions inherited from XC::ObjWithRecorders
int sendData (CommParameters &cp)
 
int recvData (const CommParameters &cp)
 
size_t getNumRecorders (void) const
 Returns the number of recorders already defined.
 

Friends

std::ostream & operator<< (std::ostream &s, Domain &M)
 
int sendDomain (Domain &, int posDbTag, DbTagData &, CommParameters &cp)
 
int receiveDomain (Domain &, int posDbTag, DbTagData &, const CommParameters &cp)
 

Additional Inherited Members

- Public Types inherited from XC::ObjWithRecorders
typedef std::list< Recorder * > lista_recorders
 
typedef lista_recorders::iterator recorder_iterator
 
typedef lista_recorders::const_iterator const_recorder_iterator
 

Detailed Description

Domain (mesh and boundary conditions) of the finite element model.

Constructor & Destructor Documentation

XC::Domain::~Domain ( void  )
virtual

Destructor.

destructor, this calls delete on all components of the model, i.e. calls delete on all that is added to the model. WARNING: if 3rd constructor, TaggedObjectStorage objects passed must have been created with new and nowhere else must the destructor be called.

Member Function Documentation

double XC::Domain::getNodeDisp ( int  nodeTag,
int  dof,
int &  errorFlag 
)
virtual

Returns the value of dof component of displacement for the node with the tag being passed as parameter.

Parameters
nodeTagnode identifier.
dofcomponent of the displacement.
errorFlagerror indicator.

Reimplemented in XC::ShadowSubdomain, and XC::PartitionedDomain.

bool XC::Domain::removeElementalLoad ( int  elemLoadTag,
int  loadPattern 
)
virtual

Removes from domain the elemental load being passed as parameter.

Parameters
elemLoadTagIdentificador de the load over elements a eliminar.
loadPatternLoad pattern identifier.

Reimplemented in XC::ShadowSubdomain.

bool XC::Domain::removeNodalLoad ( int  nodalLoadTag,
int  loadPattern 
)
virtual

Removes from domain the nodal load being passed as parameter.

Parameters
nodalLoadTagNodal load identifier.
loadPatternLoad pattern identifier.

Reimplemented in XC::ShadowSubdomain.

bool XC::Domain::removeSFreedom_Constraint ( int  singleFreedomTag,
int  loadPattern 
)
virtual

Removes from domain the single freedom constraint being passed as parameter.

Parameters
singleFreedomTagSingle freedom identifier.
loadPatternLoad pattern identifier.

Reimplemented in XC::ShadowSubdomain.


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