xc
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members

Single freedom constraint. More...

#include <SFreedom_Constraint.h>

Inheritance diagram for XC::SFreedom_Constraint:
XC::Constraint XC::ContinuaReprComponent XC::DomainComponent XC::TaggedObject XC::MovableObject XC::DistributedBase XC::ImposedMotionBase XC::ImposedMotionSP XC::ImposedMotionSP1

Public Member Functions

 SFreedom_Constraint (int classTag)
 Default constructor. More...
 
 SFreedom_Constraint (int spTag, int nodeTag)
 Constructor. More...
 
 SFreedom_Constraint (int spTag, int nodeTag, int ndof, int classTag)
 Constructor for a subclass to use. More...
 
 SFreedom_Constraint (int spTag, int nodeTag, int ndof, double value, bool isConstant=true)
 Constructor. More...
 
virtual SFreedom_ConstraintgetCopy (void) const
 Virtual constructor.
 
SFreedom_ConstraintgetCopy (const int &) const
 Returns a copy of the contraint with a different tag, it's used in BoundaryCondHandler::addSFreedom_Constraint(nodeTag,seed). More...
 
virtual int getDOF_Number (void) const
 Returns the constrained DOF number.
 
virtual bool affectsNodeAndDOF (int, int) const
 Returns true if the constraint affects the node and DOF arguments.
 
virtual int applyConstraint (double loadFactor)
 Applies the constraint with the load factor being passed as parameter. More...
 
virtual double getValue (void) const
 Returns the value of the prescribed displacement. More...
 
virtual bool isHomogeneous (void) const
 Returns true if it's an homogeneous constraint (prescribed value for the DOF is zero). More...
 
virtual void setLoadPatternTag (int loadPaternTag)
 Sets the load pattern tag for the constraint. More...
 
virtual int getLoadPatternTag (void) const
 Return the load pattern tag of the constraint.
 
void setIsConstant (const bool &b)
 
bool getIsConstant (void) const
 
int getVtkCellType (void) const
 Returns the cell type to be used to represent the object in VTK graphics. More...
 
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.
 
virtual void Print (std::ostream &s, int flag=0)
 Prints constraint information.
 
- Public Member Functions inherited from XC::Constraint
 Constraint (int classTag)
 Default constructor; receives the tag of the class as a paramenter. More...
 
 Constraint (int spTag, int nodeTag, int classTag)
 Constructor. More...
 
 ~Constraint (void)
 Destructor.
 
void setNodeTag (const int &nt)
 Sets the identifier of the node that will be constrained. More...
 
virtual int getNodeTag (void) const
 Returns the identifier of the constrained node.
 
virtual const NodegetNode (void) const
 Returns a pointer to the constrained node.
 
virtual int getNodeIdx (void) const
 Returns an index for the node (used for VTK arrays).
 
virtual bool affectsNode (int) const
 Returns true ifafecta to the node cuyo tag being passed as parameter.
 
void setDomain (Domain *)
 Sets the domain for the constraint. More...
 
- 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)
 
virtual void alive (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 enclosing domain. More...
 
const PreprocessorgetPreprocessor (void) const
 Returns (if possible) a pointer to the preprocessor.
 
PreprocessorgetPreprocessor (void)
 Return (if possible) a pointer to the preprocessor.
 
void set_index (const size_t &i)
 Set the index for the object (see numera in Set). More...
 
- Public Member Functions inherited from XC::TaggedObject
 TaggedObject (int tag, CommandEntity *owr=nullptr)
 Constructor. More...
 
void assignTag (int newTag)
 Set tag (to be called from Python interface).
 
int getTag (void) const
 Returns the tag associated with the object.
 
- Public Member Functions inherited from XC::MovableObject
 MovableObject (int classTag, int dbTag)
 Constructor. More...
 
 MovableObject (int classTag)
 Constructor. More...
 
 MovableObject (const MovableObject &)
 Copy constructor. Doesn't copy the dbTag.
 
MovableObjectoperator= (const MovableObject &)
 Assignment operator. Doesn't copy the dbTag.
 
int getClassTag (void) const
 Return the class identifier.
 
int getDbTag (void) const
 Return the object identifier in the database.
 
int getDbTag (CommParameters &)
 Return the object identifier in the database.
 
void setDbTag (int dbTag)
 Sets the object identifier in the database.
 
void setDbTag (CommParameters &)
 Sets the object identifier in the database if not already set. More...
 
virtual int setParameter (const std::vector< std::string > &argv, Parameter &param)
 Sets the value param to the parameter argv.
 
virtual int updateParameter (int parameterID, Information &info)
 Updates the parameter identified by parameterID with info.
 
virtual int activateParameter (int parameterID)
 Activates the parameter identified by parameterID.
 
virtual int setVariable (const std::string &variable, Information &)
 Set the value of the variable idenfified by var.
 
virtual int getVariable (const std::string &variable, Information &)
 Return the value of the variable idenfified by var.
 
- 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 to store the dbTags of the object members.
 
int sendData (CommParameters &cp)
 Sends data through the channel being passed as parameter.
 
int recvData (const CommParameters &cp)
 Receives data through the channel being passed as parameter.
 
- Protected Member Functions inherited from XC::Constraint
int sendData (CommParameters &)
 Send members through the channel being passed as parameter. More...
 
int recvData (const CommParameters &)
 Receives members through the channel being passed as parameter. More...
 
- 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. More...
 
int sendData (CommParameters &)
 Send object members through the channel being passed as parameter.
 
int recvData (const CommParameters &)
 Receive object members through the channel being passed as parameter.
 
- Protected Member Functions inherited from XC::TaggedObject
void setTag (int newTag)
 Set tag. More...
 

Protected Attributes

int dofNumber
 identifies which of the nodes dof is constrained
 
double valueR
 the reference value
 
double valueC
 if constant = the reference value, if not constant = the reference value * load factor
 
bool isConstant
 flag indicating if constant
 
int loadPatternTag
 
- Protected Attributes inherited from XC::Constraint
int constrNodeTag
 constrained node tag
 

Detailed Description

Single freedom constraint.

An SFreedom_Constraint represents a single degree of freedom constraint in the domain. A single point constraint specifies the response of a particular degree-of-freedom at a node. The declaration that all methods are virtual allows for time varying constraints to be introduced.

Constructor & Destructor Documentation

§ SFreedom_Constraint() [1/4]

XC::SFreedom_Constraint::SFreedom_Constraint ( int  classTag)

Default constructor.

Provided for the FEM_ObjectBroker to be able to instantiate an object; the data for this object will be read from a Channel object when recvSelf() is invoked.

Parameters
classTagclass identifier.

§ SFreedom_Constraint() [2/4]

XC::SFreedom_Constraint::SFreedom_Constraint ( int  tag,
int  nodeTag 
)

Constructor.

Parameters
tagConstraint identifier.
nodeTagidentifier of the node to constraint tag.

§ SFreedom_Constraint() [3/4]

XC::SFreedom_Constraint::SFreedom_Constraint ( int  tag,
int  nodeTag,
int  ndof,
int  classTag 
)

Constructor for a subclass to use.

Provided for subclasses to use. The subclasses can vary the value of the imposed displacement when getValue() is invoked. If this constructor is used the isHomogeneous() method will always return false. The integer value tag is used to identify the SFreedom_Constraint among all other SFreedom_Constraints.

Parameters
tagConstraint identifier.
nodeTagidentifier of the node to constraint.
ndofDOF number to constraint.
classTagclass identifier.

§ SFreedom_Constraint() [4/4]

XC::SFreedom_Constraint::SFreedom_Constraint ( int  tag,
int  nodeTag,
int  ndof,
double  value,
bool  ISconstant = true 
)

Constructor.

To construct a single point constraint to constrain the trial displacement of the ndof'th dof at node node to the value given by value. The integer value tag is used to identify the SFreedom_Constraint among all other SFreedom_Constraints. If value is equal to \(0.0\) the method isHomogeneous() will always return true, otherwise false.

Parameters
tagConstraint identifier.
nodeTagidentifier of the node to constraint.
ndofDOF number to constraint.
valueprescribed value for DOF.
ISconstantTrue if the prescribed value is constant in time.

Member Function Documentation

§ applyConstraint()

int XC::SFreedom_Constraint::applyConstraint ( double  loadFactor)
virtual

Applies the constraint with the load factor being passed as parameter.

To set the value of the constraint for the load factor given by {loadFactor}. The constraint is set equal to loadFactor * {value} if the constraint is not constant, or value if the constraint was identified as constant in the constructor.

Implements XC::Constraint.

Reimplemented in XC::ImposedMotionSP, and XC::ImposedMotionSP1.

§ getCopy()

XC::SFreedom_Constraint * XC::SFreedom_Constraint::getCopy ( const int &  spTag) const

Returns a copy of the contraint with a different tag, it's used in BoundaryCondHandler::addSFreedom_Constraint(nodeTag,seed).

§ getValue()

double XC::SFreedom_Constraint::getValue ( void  ) const
virtual

Returns the value of the prescribed displacement.

To return the value of the constraint determined in the last call to applyConstraint(). This base class returns value passed in the constructor.

Reimplemented in XC::ImposedMotionBase.

§ getVtkCellType()

int XC::SFreedom_Constraint::getVtkCellType ( void  ) const
virtual

Returns the cell type to be used to represent the object in VTK graphics.

Reimplemented from XC::Constraint.

§ isHomogeneous()

bool XC::SFreedom_Constraint::isHomogeneous ( void  ) const
virtual

Returns true if it's an homogeneous constraint (prescribed value for the DOF is zero).

To return a boolean indicating whether or not the constraint is a homogeneous constraint. A homogeneous constraint is one where the value of the constraint, value, is always \(0\). This information can be used by the ConstraintHandler to reduce the number of equations in the system.

Reimplemented in XC::ImposedMotionSP1, and XC::ImposedMotionBase.

§ setLoadPatternTag()

void XC::SFreedom_Constraint::setLoadPatternTag ( int  tag)
virtual

Sets the load pattern tag for the constraint.

Parameters
tagload pattern identifier.

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