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

Constraint (essential and natural boundary conditions) container. More...

#include <ConstrContainer.h>

Inheritance diagram for XC::ConstrContainer:
XC::MeshComponentContainer XC::MovableObject XC::DistributedBase

Public Member Functions

 ConstrContainer (Domain *owr)
 Constructor. More...
 
virtual ~ConstrContainer (void)
 Destructor.
 
virtual SFreedom_ConstraintItergetSPs ()
 Domain single freedom constraints iterator.
 
virtual MFreedom_ConstraintItergetMPs ()
 Domain multi-freedom constraints iterator.
 
virtual MRMFreedom_ConstraintItergetMRMPs ()
 Domain multi-row multi-freedom constraints iterator.
 
const std::map< int, LoadPattern * > & getLoadPatterns (void) const
 Returns the active load patterns container.
 
const std::map< int, NodeLocker * > & getNodeLockers (void) const
 Returns the active node lockers container.
 
std::map< int, LoadPattern * > & getLoadPatterns (void)
 Returns the active load patterns container.
 
std::map< int, NodeLocker * > & getNodeLockers (void)
 Returns the active node lockers container.
 
virtual SFreedom_ConstraintItergetDomainAndLoadPatternSPs ()
 All (domain and load cases) single freedom constraints iterator.
 
virtual SFreedom_ConstraintgetSFreedom_Constraint (int tag)
 Returns a pointer to the single freedom constraint whose identifier is being passed as parameter.
 
virtual MFreedom_ConstraintgetMFreedom_Constraint (int tag)
 Returns a pointer to the multi-freedom constraint whose identifier is being passed as parameter.
 
virtual MRMFreedom_ConstraintgetMRMFreedom_Constraint (int tag)
 Returns a pointer to the multi-row multi-freedom constraint whose identifier is being passed as parameter.
 
LoadPatterngetLoadPattern (const int &)
 Returns a pointer to the load pattern whose identifier is being passed as parameter.
 
const LoadPatterngetLoadPattern (const int &) const
 Returns a pointer to the load pattern whose identifier is being passed as parameter.
 
NodeLockergetNodeLocker (const int &)
 Returns a pointer to the node locker whose identifier is being passed as parameter.
 
const NodeLockergetNodeLocker (const int &) const
 Returns a pointer to the node locker whose identifier is being passed as parameter.
 
virtual void applyLoad (double pseudoTime)
 Apply loads from active node lockers.
 
virtual void setLoadConstant (void)
 Set as constant all the active load patterns (used in pushover analysis).
 
virtual int getNumSPs (void) const
 Returns the number of single freedom constraints.
 
virtual int getNumMPs (void) const
 Returns the number of multi-freedom constraints.
 
virtual int getNumMRMPs (void) const
 Returns the number of multi-row multi-freedom constraints.
 
virtual int getNumLoadPatterns (void) const
 Returns the number of load patterns.
 
virtual int getNumNodeLockers (void) const
 Returns the number of node lockers.
 
std::deque< int > getTagsSPsNode (int, int) const
 Search on the container all the single freedom constraints with the node and degree of freedom being passed as parameter.
 
std::deque< int > getTagsSPsNode (int) const
 Search on the container all the single freedom constraints that affect the node whose tag is being passed as parameter.
 
std::deque< int > getTagsMPsNode (int, int) const
 Search on the container all the multi-freedom constraints with the node and degree of freedom being passed as parameter.
 
std::deque< int > getTagsMPsNode (int) const
 Search on the container all the multi-freedom constraints that affect the node whose tag is being passed as parameter.
 
std::deque< int > getTagsLPs (void) const
 Loop over all the load patterns that are currently added to the domain getting their tag.
 
std::deque< int > getTagsNLs (void) const
 Loop over all the load patterns that are currently added to the domain getting their tag.
 
bool nodeAffectedBySPs (int) const
 Returns true if the node is affected by one or more single freedom constraints.
 
bool nodeAffectedByMPs (int) const
 Returns true if the node is affected by one or more multi-freedom constraints.
 
bool nodeAffectedByMRMPs (int) const
 Returns true if the node is affected by one or more multi-row multi-freedom constraints.
 
bool nodeAffectedBySPsOMPs (int) const
 Returns true if the node is affected by any constraint.
 
std::string getLoadPatternsNames (void) const
 Loop over all the load patterns that are currently added to the domain getting their names.
 
virtual int calculateNodalReactions (bool inclInertia, const double &)
 Reactions due to constraints.
 
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.
 
virtual void Print (std::ostream &s, int flag=0)
 Prints object information.
 
- Public Member Functions inherited from XC::MeshComponentContainer
 MeshComponentContainer (EntCmd *owr, int classTag, int dbTag=0)
 Constructor.
 
const DomaingetDomain (void) const
 Returns a pointer to the mesh domain.
 
DomaingetDomain (void)
 Returns a pointer to the mesh domain.
 
- 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 setParameter (const std::vector< std::string > &argv, Parameter &param)
 
virtual int updateParameter (int parameterID, Information &info)
 
virtual int activateParameter (int parameterID)
 
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

virtual bool addSFreedom_Constraint (SFreedom_Constraint *)
 Appends a single freedom constraint. More...
 
virtual bool addMFreedom_Constraint (MFreedom_Constraint *)
 Appends a multiple freedom constraint. More...
 
virtual bool addMRMFreedom_Constraint (MRMFreedom_Constraint *)
 Appends a multi-retained nodes constraint. More...
 
virtual bool addLoadPattern (LoadPattern *)
 Appends a load pattern. More...
 
virtual bool addNodeLocker (NodeLocker *)
 Appends a node locker. More...
 
virtual bool addSFreedom_Constraint (SFreedom_Constraint *, int loadPatternTag)
 Appends a single freedom constraint to a load pattern. More...
 
virtual bool addNodalLoad (NodalLoad *, int loadPatternTag)
 Appends a nodal load to a load pattern. More...
 
virtual bool addElementalLoad (ElementalLoad *, int loadPatternTag)
 Appends an elemental load to a load pattern. More...
 
virtual void clearAll (void)
 Deletes all the members of the container.
 
virtual bool removeSFreedom_Constraint (int theNode, int theDOF, int loadPatternTag)
 Removes a single freedom constraint from this container or from a load pattern. More...
 
virtual bool removeSFreedom_Constraint (int tag)
 Removes the single freedom constraint whose identifier is being passed as parameter.
 
virtual bool removeMFreedom_Constraint (int tag)
 Removes the multi-freedom constraint whose identifier is being passed as parameter.
 
virtual bool removeMRMFreedom_Constraint (int tag)
 Removes the multi-row multi-freedom constraint whose identifier is being passed as parameter.
 
virtual bool removeLoadPattern (int loadTag, int &numSPs)
 Removes the load pattern whose identifier is being passed as parameter.
 
virtual bool removeNodeLocker (int spcpTag, int &numSPs)
 Removes the node locker whose identifier is being passed as parameter.
 
int removeLPs (void)
 Removes all load patterns.
 
int removeNLs (void)
 Removes all nodel lockers.
 
virtual bool removeNodalLoad (int tag, int loadPattern)
 Removes a nodal load from a load pattern. More...
 
virtual bool removeElementalLoad (int tag, int loadPattern)
 Removes a load over elements from a load pattern. More...
 
virtual bool removeSFreedom_Constraint (int tag, int loadPattern)
 Removes a single freedom constraint from al load pattern. More...
 
void libera (void)
 
DbTagDatagetDbTagData (void) const
 Returns a vector to store the dbTags of class members.
 
int sendLPatternsTags (const int &, const int &, CommParameters &)
 Send the active load patterns tags through the channel being passed as parameter.
 
int recvLPatternsTags (const int &, const int &, const CommParameters &)
 Receives the active load patterns tags through the channel being passed as parameter.
 
int sendNLockersTags (const int &, const int &, CommParameters &cp)
 Send the node lockers tags through the channel being passed as parameter.
 
int recvNLockersTags (const int &, const int &, const CommParameters &cp)
 Receives the node lockers tags through the channel being passed as parameter.
 
int sendData (CommParameters &cp)
 Send object members through the channel being passed as parameter.
 
int recvData (const CommParameters &cp)
 Receives object members through the channel being passed as parameter.
 

Friends

class Domain
 
std::ostream & operator<< (std::ostream &s, ConstrContainer &cc)
 

Detailed Description

Constraint (essential and natural boundary conditions) container.

Constructor & Destructor Documentation

XC::ConstrContainer::ConstrContainer ( Domain owr)

Constructor.

Parameters
owrdomain that owns the container.

Member Function Documentation

bool XC::ConstrContainer::addElementalLoad ( ElementalLoad load,
int  loadPatternTag 
)
protectedvirtual

Appends an elemental load to a load pattern.

Parameters
loadpointer to the elemental load to append.
loadPatternTagload pattern identifier.
bool XC::ConstrContainer::addLoadPattern ( LoadPattern load)
protectedvirtual

Appends a load pattern.

Parameters
loadpointer to the load pattern to append.
bool XC::ConstrContainer::addMFreedom_Constraint ( MFreedom_Constraint mfConstraint)
protectedvirtual

Appends a multiple freedom constraint.

Parameters
mfConstraintpointer to the multi-freedom constraint to append.
bool XC::ConstrContainer::addMRMFreedom_Constraint ( MRMFreedom_Constraint mrmfConstraint)
protectedvirtual

Appends a multi-retained nodes constraint.

Parameters
mrmfConstraintpointer to the multi-retained nodes constraint to append.
bool XC::ConstrContainer::addNodalLoad ( NodalLoad load,
int  loadPatternTag 
)
protectedvirtual

Appends a nodal load to a load pattern.

Parameters
loadpointer to the nodal load to append.
loadPatternTagload pattern identifier.
bool XC::ConstrContainer::addNodeLocker ( NodeLocker nl)
protectedvirtual

Appends a node locker.

Parameters
nlpointer to the node locker to append.
bool XC::ConstrContainer::addSFreedom_Constraint ( SFreedom_Constraint spConstraint)
protectedvirtual

Appends a single freedom constraint.

Parameters
spConstraintpointer to the single freedom constraint to append.
bool XC::ConstrContainer::addSFreedom_Constraint ( SFreedom_Constraint spConstraint,
int  loadPatternTag 
)
protectedvirtual

Appends a single freedom constraint to a load pattern.

Parameters
spConstraintpointer to the single freedom constraint to append.
loadPatternTagload pattern identifier.
bool XC::ConstrContainer::removeElementalLoad ( int  tag,
int  loadPatternTag 
)
protectedvirtual

Removes a load over elements from a load pattern.

Parameters
tagidentifier of the load.
loadPatternTagload pattern identifier.
bool XC::ConstrContainer::removeNodalLoad ( int  tag,
int  loadPatternTag 
)
protectedvirtual

Removes a nodal load from a load pattern.

Parameters
tagidentifier of the load.
loadPatternTagload pattern identifier.
bool XC::ConstrContainer::removeSFreedom_Constraint ( int  theNode,
int  theDOF,
int  loadPatternTag 
)
protectedvirtual

Removes a single freedom constraint from this container or from a load pattern.

Parameters
theNodenode tag.
theDOFdegree of freedom identifier.
loadPatternTagload pattern identifier (if -1 then remove from domain).
bool XC::ConstrContainer::removeSFreedom_Constraint ( int  tag,
int  loadPattern 
)
protectedvirtual

Removes a single freedom constraint from al load pattern.

Parameters
tagidentifier of the single freedom constraint.
loadPatternTagload pattern identifier.

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