29 #ifndef MFreedom_ConstraintBase_h 30 #define MFreedom_ConstraintBase_h 44 #include "Constraint.h" 45 #include <utility/matrix/Matrix.h> 88 virtual const ID &getRetainedDOFs(
void)
const= 0;
91 virtual const Vector &getConstrainedDOFsInitialDisplacement(
void)
const;
92 virtual size_t getNumRetainedNodes(
void)
const= 0;
93 virtual std::vector<Node *> getPointersToRetainedNodes(
void)= 0;
94 virtual std::vector<const Node *> getPointersToRetainedNodes(
void)
const= 0;
105 virtual void Print(std::ostream &s,
int flag =0)
const;
106 boost::python::dict
getPyDict(
void)
const;
107 void setPyDict(
const boost::python::dict &);
void setDomain(Domain *)
Sets the domain for the constraint.
Definition: MFreedom_ConstraintBase.cc:134
MFreedom_ConstraintBase(int tag, int classTag)
Constructor.
Definition: MFreedom_ConstraintBase.cc:65
int constrNodeTag
constrained node tag
Definition: Constraint.h:51
Float vector abstraction.
Definition: Vector.h:94
Base class for mult-freedom constraints.
Definition: MFreedom_ConstraintBase.h:58
void set_constrained_dofs(const ID &)
Set the constrained degrees of freedom.
Definition: MFreedom_ConstraintBase.cc:55
Matrix constraintMatrix
Constraint matrix.
Definition: MFreedom_ConstraintBase.h:61
Communication parameters between processes.
Definition: Communicator.h:66
void initializeUc0(const Domain *)
Compute the initial displacement at constrained DOFs.
Definition: MFreedom_ConstraintBase.cc:101
ID constrDOF
ID of constrained DOF at constrained node.
Definition: MFreedom_ConstraintBase.h:62
bool affectsNodeAndDOF(int theNode, int theDOF) const
Returns true if the constraint affects the node and DOF arguments.
Definition: MFreedom_ConstraintBase.cc:157
Vector of integers.
Definition: ID.h:95
bool isTimeVarying(void) const
Returns true if the constraint varies with time.
Definition: MFreedom_ConstraintBase.cc:178
std::vector< int > getIdxNodes(void) const
Return the indices of the nodes (for VTK).
Definition: MFreedom_ConstraintBase.cc:257
Vector Uc0
initial displacement at constrained DOFs (same size as constrDOF)
Definition: MFreedom_ConstraintBase.h:63
void set_constraint(const Matrix &c)
Set the constraint matrix.
Definition: MFreedom_ConstraintBase.cc:50
int addResistingForceToNodalReaction(bool inclInertia)
Add reactions to nodes.
Definition: MFreedom_ConstraintBase.cc:183
boost::python::dict getPyDict(void) const
Return a Python dictionary with the object members values.
Definition: MFreedom_ConstraintBase.cc:225
bool affectsNode(int) const
Returns true if the constraints affects the node identified by the tag being passed as parameter...
Definition: MFreedom_ConstraintBase.cc:151
virtual const ID & getConstrainedDOFs(void) const
Returns the identifiers of the constrained degrees of fredom.
Definition: MFreedom_ConstraintBase.cc:170
void setPyDict(const boost::python::dict &)
Set the values of the object members from a Python dictionary.
Definition: MFreedom_ConstraintBase.cc:234
virtual const int & getNodeConstrained(void) const
Return the identifier of the constrained node.
Definition: MFreedom_ConstraintBase.h:83
Open source finite element program for structural analysis.
Definition: ContinuaReprComponent.h:35
Matrix of floats.
Definition: Matrix.h:111
Base class for model constraints.
Definition: Constraint.h:48
Domain (mesh and boundary conditions) of the finite element model.
Definition: Domain.h:117
virtual const Matrix & getConstraint(void) const
Returns the constraint matrix.
Definition: MFreedom_ConstraintBase.cc:196
int sendData(Communicator &comm)
Send data through the communicator argument.
Definition: MFreedom_ConstraintBase.cc:205
int recvData(const Communicator &comm)
Receive data through the communicator argument.
Definition: MFreedom_ConstraintBase.cc:215
virtual void Print(std::ostream &s, int flag=0) const
Printing.
Definition: MFreedom_ConstraintBase.cc:246
virtual int & getNodeConstrained(void)
Return the identifier of the constrained node.
Definition: MFreedom_ConstraintBase.h:86