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

A TransformationDOF_Group object is instantiated by the TransformationConstraintHandler for every node in the domain which is constrained by an MFreedom_Constraint or an SFreedom_Constrant. More...

#include <TransformationDOF_Group.h>

Inheritance diagram for XC::TransformationDOF_Group:
XC::DOF_Group XC::TaggedObject

Public Member Functions

 ~TransformationDOF_Group ()
 Destructor.
 
int doneID (void)
 
const IDgetID (void) const
 Method to return the current ID. More...
 
virtual void setID (int dof, int value)
 to set the corresponding index of the ID to value. More...
 
MatrixgetT (void)
 
virtual int getNumDOF (void) const
 Returns the total number of DOFs in the DOF_Group.
 
virtual int getNumFreeDOF (void) const
 Returns the total number of free DOFs. More...
 
virtual int getNumConstrainedDOF (void) const
 Returns the total number of constrained DOFs. More...
 
const MatrixgetTangent (Integrator *theIntegrator)
 Returns the current tangent matrix for the DOF_Group. More...
 
const VectorgetUnbalance (Integrator *theIntegrator)
 Returns the vector holding the unbalance.
 
void addM_Force (const Vector &Udotdot, double fact=1.0)
 
const VectorgetTangForce (const Vector &x, double fact=1.0)
 
const VectorgetC_Force (const Vector &x, double fact=1.0)
 
const VectorgetM_Force (const Vector &x, double fact=1.0)
 
const VectorgetCommittedDisp (void)
 Returns the commited value for the displacement.
 
const VectorgetCommittedVel (void)
 Returns the commited value for the velocity.
 
const VectorgetCommittedAccel (void)
 Returns the commited value for the acceleration.
 
void setNodeDisp (const Vector &u)
 Method to set the corresponding nodes displacements to the values in u, components identified by myID.
 
void setNodeVel (const Vector &udot)
 Method to set the corresponding nodes velocities to the values in u, components identified by myID.
 
void setNodeAccel (const Vector &udotdot)
 Method to set the corresponding nodes accelerations to the values in u, components identified by myID.
 
void incrNodeDisp (const Vector &u)
 Method to set the corresponding nodes displacements increments to the values in u, components identified by myID. More...
 
void incrNodeVel (const Vector &udot)
 Method to set the corresponding nodes velocities increments to the values in u, components identified by myID. More...
 
void incrNodeAccel (const Vector &udotdot)
 Method to set the corresponding nodes accelerations increments to the values in u, components identified by myID. More...
 
virtual void setEigenvector (int mode, const Vector &eigenvalue)
 
int addSFreedom_Constraint (SFreedom_Constraint &theSP)
 
int enforceSPs (void)
 
void addM_ForceSensitivity (const Vector &Udotdot, double fact=1.0)
 
void addD_ForceSensitivity (const Vector &vel, double fact=1.0)
 
void addD_Force (const Vector &vel, double fact=1.0)
 
const VectorgetDispSensitivity (int gradNumber)
 
const VectorgetVelSensitivity (int gradNumber)
 
const VectorgetAccSensitivity (int gradNumber)
 
int saveSensitivity (Vector *v, Vector *vdot, Vector *vdotdot, int gradNum, int numGrads)
 
- Public Member Functions inherited from XC::DOF_Group
virtual ~DOF_Group ()
 Destructor.
 
virtual void setID (const ID &values)
 Method to set the ID to be same as that given. More...
 
int inicID (const int &value)
 
virtual int getNodeTag (void) const
 Returns the tag of the associated node (-1 if there is no associated node). More...
 
virtual void zeroTangent (void)
 To zero the tangent matrix. More...
 
virtual void addMtoTang (double fact=1.0)
 To add fact times the nodal mass matrix to the tangent matrix. More...
 
virtual void addCtoTang (double fact=1.0)
 
virtual void zeroUnbalance (void)
 To zero the unbalance vector. More...
 
virtual void addPtoUnbalance (double fact=1.0)
 Adds the product of the unbalanced load at the node and fact to the unbalance vector. More...
 
virtual void addPIncInertiaToUnbalance (double fact=1.0)
 
virtual void Print (std::ostream &, int=0)
 Print stuff.
 
virtual void resetNodePtr (void)
 
- Public Member Functions inherited from XC::TaggedObject
 TaggedObject (int tag, CommandEntity *owr=nullptr)
 Constructor. More...
 
virtual TaggedObjectgetCopy (void) const
 Virtual constructor.
 
void assignTag (int newTag)
 Set tag (to be called from Python interface).
 
int getTag (void) const
 Returns the tag associated with the object.
 

Protected Member Functions

 TransformationDOF_Group (int tag, Node *myNode, MFreedom_ConstraintBase *, TransformationConstraintHandler *)
 
 TransformationDOF_Group (int tag, Node *myNode, TransformationConstraintHandler *)
 
std::vector< SFreedom_Constraint * > getSFreedomConstraintArray (int) const
 Create SFreedom_Constraint pointer array.
 
MFreedom_ConstraintBasegetMFreedomConstraint (void)
 Returns a pointer to the multi-freedom constraint.
 
const MFreedom_ConstraintBasegetMFreedomConstraint (void) const
 Returns a pointer to the multi-freedom constraint.
 
size_t getNumRetainedNodes (void) const
 Returns the number of retained nodes.
 
size_t getNumRetainedNodeDOFs (void) const
 Returns the number of retained degrees of freedom (retained nodes x retained DOFs on each node).
 
std::vector< Node * > getPointersToRetainedNodes (void)
 Returns a vector with the pointers to the retained nodes.
 
const VectorsetupResidual (int numCNodeDOF, const ID &, const ID &, const Vector &, const std::vector< Node *> &, const Vector &(Node::*response)(void) const)
 Computes the residual vector and returns it.
 
const VectorgetCommittedResponse (const Vector &(Node::*response)(void) const)
 Returns the commited value for the response.
 
void setupResidual (const Vector &, int(Node::*setTrial)(const Vector &))
 
- Protected Member Functions inherited from XC::DOF_Group
void addLocalM_Force (const Vector &Udotdot, double fact=1.0)
 
 DOF_Group (int tag, Node *myNode)
 Constructor that take the corresponding model node. More...
 
 DOF_Group (int tag, int ndof)
 Constructor. More...
 
- Protected Member Functions inherited from XC::TaggedObject
void setTag (int newTag)
 Set tag. More...
 

Friends

class AnalysisModel
 

Additional Inherited Members

- Protected Attributes inherited from XC::DOF_Group
UnbalAndTangent unbalAndTangent
 
NodemyNode
 

Detailed Description

A TransformationDOF_Group object is instantiated by the TransformationConstraintHandler for every node in the domain which is constrained by an MFreedom_Constraint or an SFreedom_Constrant.

This object stores the transformation matrix \(T\) used by the TransformationFE objects

Member Function Documentation

§ getID()

const XC::ID & XC::TransformationDOF_Group::getID ( void  ) const
virtual

Method to return the current ID.

A const member function which returns in an ID object the equation numbers associated with the degrees-of-freedom in the DOF_Group. The size of the ID object is equal to the number of degrees-of-freedom represented by the DOF_Group. This base class returns the ID created for the mapping.

Reimplemented from XC::DOF_Group.

§ getNumConstrainedDOF()

int XC::TransformationDOF_Group::getNumConstrainedDOF ( void  ) const
virtual

Returns the total number of constrained DOFs.

Returns the total number of constrained DOFs in the DOF_Group, i.e. number of dof in the group who have been assigned a negative equation number. Determines this by looping through the ID containing the mapping information.

Reimplemented from XC::DOF_Group.

§ getNumFreeDOF()

int XC::TransformationDOF_Group::getNumFreeDOF ( void  ) const
virtual

Returns the total number of free DOFs.

Returns the total number of free DOFs in the DOF_Group, i.e. number of dof in the group who have not been assigned a negative equation number. Determines this by looping through the ID containing the mapping information.

Reimplemented from XC::DOF_Group.

§ getTangent()

const XC::Matrix & XC::TransformationDOF_Group::getTangent ( Integrator theIntegrator)
virtual

Returns the current tangent matrix for the DOF_Group.

Returns the current tangent matrix for the DOF_Group. If no tangent matrix has been created, one of size(numDOF,numDOF) is constructed. If not enough space is available for a new tangent matrix, an error message is printed and an error Matrix is returned..

Reimplemented from XC::DOF_Group.

§ incrNodeAccel()

void XC::TransformationDOF_Group::incrNodeAccel ( const Vector udotdot)
virtual

Method to set the corresponding nodes accelerations increments to the values in u, components identified by myID.

Reimplemented from XC::DOF_Group.

§ incrNodeDisp()

void XC::TransformationDOF_Group::incrNodeDisp ( const Vector u)
virtual

Method to set the corresponding nodes displacements increments to the values in u, components identified by myID.

Reimplemented from XC::DOF_Group.

§ incrNodeVel()

void XC::TransformationDOF_Group::incrNodeVel ( const Vector u)
virtual

Method to set the corresponding nodes velocities increments to the values in u, components identified by myID.

Reimplemented from XC::DOF_Group.

§ setID()

void XC::TransformationDOF_Group::setID ( int  index,
int  value 
)
virtual

to set the corresponding index of the ID to value.

Operation to set the equation number of the {dof'th} DOF in the DOF_Group to value. In this base class, if index is a valid location, \(0 < index < numDOF-1\) the operator {(index) = value} is invoked on the ID object created for the mapping, otherwise an error message is printed.

Reimplemented from XC::DOF_Group.


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