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:
Inheritance graph
[legend]
Collaboration diagram for XC::SFreedom_Constraint:
Collaboration graph
[legend]

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 constraint 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 double getInitialValue (void)
 Returns the initial value of the constraint.
 
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 setDomain (Domain *)
 Sets the domain for the constraint. More...
 
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 (Communicator &)
 Sends object through the communicator argument.
 
int recvSelf (const Communicator &)
 Receives object through the communicator argument.
 
virtual void Print (std::ostream &s, int flag=0) const
 Prints constraint information.
 
boost::python::dict getPyDict (void) const
 Return a Python dictionary with the object members values.
 
void setPyDict (const boost::python::dict &)
 Set the values of the object members from a Python dictionary.
 
- 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.
 
- Public Member Functions inherited from XC::ContinuaReprComponent
 ContinuaReprComponent (int classTag)
 
 ContinuaReprComponent (int tag, int classTag)
 
virtual const bool isDead (void) const
 Return true if the component is not active.
 
virtual const bool isAlive (void) const
 Return true if the component is active.
 
virtual void kill (void)
 Deactivates the component.
 
virtual void alive (void)
 Activates the component.
 
- 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.
 
const LoadPatterngetCurrentLoadPattern (void) const
 Return the current load pattern.
 
LoadPatterngetCurrentLoadPattern (void)
 Return the current load pattern.
 
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.
 
boost::python::dict getPyDict (void) const
 Return a Python dictionary with the object members values.
 
void setPyDict (const boost::python::dict &)
 Set the values of the object members from a Python dictionary.
 
- Public Member Functions inherited from CommandEntity
 CommandEntity (CommandEntity *owr=nullptr)
 Default constructor.
 
CommandEntityOwner (void)
 Return a pointer to the object owner.
 
const CommandEntityOwner (void) const
 Return un puntero al objeto propietario de ESTE.
 
const StandardOutputWrappergetStandardOutputWrapper (void) const
 Return the regular output stream wrapper.
 
StandardOutputWrappergetStandardOutputWrapper (void)
 Return the regular output stream wrapper.
 
const std::string & getLogFileName (void) const
 Returns log file name.
 
void setLogFileName (const std::string &)
 Sets log file name.
 
const std::string & getErrFileName (void) const
 Returns err file name.
 
void setErrFileName (const std::string &)
 Sets error file name.
 
const std::string & getOutputFileName (void) const
 Returns regular output file name.
 
void setOutputFileName (const std::string &)
 Sets regular output file name.
 
boost::python::object evalPy (boost::python::object dict, const std::string &)
 Return the Python object that results from evaluating the argument.
 
boost::python::object execPy (boost::python::object dict, const std::string &)
 Return the Python objects that results from executing the code in the string argument.
 
boost::python::object execFilePy (boost::python::object dict, const std::string &)
 Return the Python object that results from executing the code in the file.
 
- Public Member Functions inherited from EntityWithProperties
 EntityWithProperties (EntityWithProperties *owr=nullptr)
 Default constructor.
 
void clearPyProps (void)
 Clear python properties map.
 
bool hasPyProp (const std::string &)
 Returns true if property exists.
 
boost::python::object getPyProp (const std::string &str)
 Return the Python object with the name being passed as parameter.
 
void setPyProp (std::string str, boost::python::object val)
 Sets/appends a value tho the Python object's dictionary.
 
void copyPropsFrom (const EntityWithProperties &)
 Copy the properties from the argument.
 
boost::python::list getPropNames (void) const
 Return the names of the object properties weightings.
 
const PythonDict & getPropertiesDict (void) const
 Return a std::map container with the properties of the object.
 
- Public Member Functions inherited from EntityWithOwner
 EntityWithOwner (EntityWithOwner *owr=nullptr)
 Default constructor.
 
 EntityWithOwner (const EntityWithOwner &)
 Copy constructor.
 
EntityWithOwneroperator= (const EntityWithOwner &)
 Assignment operator.
 
virtual bool operator== (const EntityWithOwner &) const
 Comparison operator.
 
virtual ~EntityWithOwner (void)
 Virtual destructor.
 
virtual std::string getClassName (void) const
 Returns demangled class name.
 
void set_owner (EntityWithOwner *owr)
 Assigns the owner of the object.
 
EntityWithOwnerOwner (void)
 
const EntityWithOwnerOwner (void) const
 
- 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 (Communicator &)
 Return the object identifier in the database.
 
void setDbTag (int dbTag)
 Sets the object identifier in the database.
 
void setDbTag (Communicator &)
 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.
 
virtual ~DistributedBase (void)
 Destructor.
 
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 (Communicator &comm)
 Sends data through the communicator argument.
 
int recvData (const Communicator &comm)
 Receives data through the communicator argument.
 
- Protected Member Functions inherited from XC::Constraint
int sendData (Communicator &)
 Send members through the communicator argument. More...
 
int recvData (const Communicator &)
 Receives members through the communicator argument. More...
 
- Protected Member Functions inherited from XC::ContinuaReprComponent
int sendData (Communicator &)
 Send members through the communicator argument.
 
int recvData (const Communicator &)
 Receives members through the communicator argument.
 
- Protected Member Functions inherited from XC::DomainComponent
 DomainComponent (int tag, int classTag)
 Constructor. More...
 
int sendData (Communicator &)
 Send object members through the communicator argument.
 
int recvData (const Communicator &)
 Receive object members through the communicator argument.
 
- Protected Member Functions inherited from XC::TaggedObject
void setTag (int newTag)
 Set tag. More...
 
bool isEqual (const TaggedObject &) const
 Return true if both objects are equal.
 
- Protected Member Functions inherited from CommandEntity
template<class T >
void string_to (T &, const std::string &) const
 
- Protected Member Functions inherited from EntityWithProperties
bool isEqual (const EntityWithProperties &) const
 Return true if both objects are equal.
 
- Protected Member Functions inherited from EntityWithOwner
virtual bool isEqual (const EntityWithOwner &) const
 Return true if both objects are equal.
 

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
 
double initialValue
 
bool isConstant
 flag indicating if constant
 
int loadPatternTag
 
- Protected Attributes inherited from XC::Constraint
int constrNodeTag
 constrained node tag
 
bool initialized
 a flag to avoid recomputing the intial value in setDomain if already initialized
 

Additional Inherited Members

- Public Types inherited from EntityWithProperties
typedef std::map< std::string, boost::python::object > PythonDict
 
- Static Public Member Functions inherited from CommandEntity
static void resetStandardOutput (void)
 Reset the standard output streams to its defaults buffers.
 
- Static Public Member Functions inherited from EntityWithOwner
static int getVerbosityLevel (void)
 Get the value of the verbosity level.
 
static void setVerbosityLevel (const int &)
 Set the value of the verbosity level.
 
- Static Protected Member Functions inherited from CommandEntity
static CommandEntityentcmd_cast (boost::any &data)
 
- Static Protected Attributes inherited from EntityWithOwner
static int verbosity = 1
 Object that owns THIS ONE. More...
 

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 constraint 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.

◆ setDomain()

void XC::SFreedom_Constraint::setDomain ( Domain model)
virtual

Sets the domain for the constraint.

Parameters
modeldomain in which the constraint is created.

Reimplemented from XC::Constraint.

◆ 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: