66 #include "utility/actor/actor/MovableObject.h" 67 #include <utility/tagged/TaggedObject.h> 68 #include <utility/matrix/Vector.h> 75 class TransfCooHandler;
96 bool initialDispChecked;
102 virtual void set_rigid_joint_offsetI(
const Vector &rigJntOffsetI)= 0;
103 virtual void set_rigid_joint_offsetJ(
const Vector &rigJntOffsetJ)= 0;
105 CrdTransf(
int tag,
int classTag,
int dim_joint_offset);
111 std::string
getName(
void)
const;
112 virtual int getDimension(
void)
const= 0;
114 virtual int initialize(
Node *node1Pointer,
Node *node2Pointer) = 0;
115 virtual int update(
void) = 0;
116 virtual double getInitialLength(
void)
const= 0;
117 virtual double getDeformedLength(
void)
const= 0;
118 double getLength(
bool initialGeometry=
true)
const;
120 virtual int commitState(
void) = 0;
121 virtual int revertToLastCommit(
void) = 0;
122 virtual int revertToStart(
void) = 0;
124 virtual const Vector &getBasicTrialDisp(
void)
const= 0;
125 virtual const Vector &getBasicIncrDisp(
void)
const= 0;
126 virtual const Vector &getBasicIncrDeltaDisp(
void)
const= 0;
127 virtual const Vector &getBasicTrialVel(
void)
const= 0;
128 virtual const Vector &getBasicTrialAccel(
void)
const= 0;
131 virtual const Vector &getBasicDisplSensitivity(
int gradNumber);
132 virtual const Vector &getGlobalResistingForceShapeSensitivity(
const Vector &,
const Vector &);
133 virtual const Vector &getGlobalResistingForceShapeSensitivity(
const Vector &pb,
const Vector &p0,
int gradNumber);
134 virtual const Vector &getBasicTrialDispShapeSensitivity(
void);
135 virtual bool isShapeSensitivity(
void) {
return false;}
136 virtual double getdLdh(
void) {
return 0.0;}
137 virtual double getd1overLdh(
void) {
return 0.0;}
140 virtual const Vector &getGlobalResistingForce(
const Vector &basicForce,
const Vector &uniformLoad)
const= 0;
141 virtual const Matrix &getGlobalStiffMatrix(
const Matrix &basicStiff,
const Vector &basicForce)
const= 0;
142 virtual const Matrix &getInitialGlobalStiffMatrix(
const Matrix &basicStiff)
const= 0;
144 virtual const Vector &getI(
void)
const= 0;
145 virtual const Vector &getJ(
void)
const= 0;
146 virtual Matrix getLocalAxes(
bool)
const= 0;
148 virtual const Vector &getPointGlobalCoordFromLocal(
const Vector &localCoords)
const= 0;
149 virtual const Vector &getPointGlobalCoordFromBasic(
const double &xi)
const= 0;
150 virtual Vector getPointLocalCoordFromGlobal(
const Vector &globalCoords)
const= 0;
151 double getPointBasicCoordFromGlobal(
const Vector &globalCoords)
const;
152 const Matrix &getPointsGlobalCoordFromLocal(
const Matrix &localCoords)
const;
153 virtual const Matrix &getPointsGlobalCoordFromBasic(
const Vector &)
const= 0;
154 virtual const Vector &getPointGlobalDisplFromBasic(
double xi,
const Vector &basicDisps)
const= 0;
156 virtual const Vector &getVectorGlobalCoordFromLocal(
const Vector &localCoords)
const= 0;
157 virtual const Matrix &getVectorGlobalCoordFromLocal(
const Matrix &localCoords)
const= 0;
158 virtual const Vector &getVectorLocalCoordFromGlobal(
const Vector &globalCoords)
const= 0;
160 virtual const Matrix &getCooNodes(
void)
const= 0;
161 virtual const Matrix &getCooPoints(
const size_t &ndiv)
const= 0;
162 virtual const Vector &getCooPoint(
const double &xrel)
const= 0;
Float vector abstraction.
Definition: Vector.h:94
Communication parameters between processes.
Definition: Communicator.h:66
Object that can move between processes.
Definition: MovableObject.h:100
CrdTransf provides the abstraction of a frame coordinate transformation.
Definition: CrdTransf.h:88
Node * nodeJPtr
pointers to the end nodes of the element.
Definition: CrdTransf.h:91
std::vector< double > nodeIInitialDisp
Initial displacement for I node.
Definition: CrdTransf.h:94
const TransfCooHandler * GetTransfCooHandler(void) const
Returns (if possible) a pointer to the coordinate transformation handler (owner). ...
Definition: CrdTransf.cpp:87
std::string getName(void) const
Return the name of the coordinate transformation.
Definition: CrdTransf.cpp:109
double L
element length
Definition: CrdTransf.h:92
Manager for the creation/deletion of coordinate transformations.
Definition: TransfCooHandler.h:50
Position array in a three-dimensional space.
Definition: Pos3dArray3d.h:37
std::vector< double > nodeJInitialDisp
Initial displacement for J node.
Definition: CrdTransf.h:95
Object idenfied by an integer (tag).
Definition: TaggedObject.h:92
int sendData(Communicator &comm)
Sends object members through the communicator argument.
Definition: CrdTransf.cpp:209
Open source finite element program for structural analysis.
Definition: ContinuaReprComponent.h:35
Matrix of floats.
Definition: Matrix.h:111
Mesh node.
Definition: Node.h:111
int recvData(const Communicator &comm)
Receives object members through the communicator argument.
Definition: CrdTransf.cpp:225
virtual ~CrdTransf(void)
Destructor virtual.
Definition: CrdTransf.cpp:83
int set_node_ptrs(Node *nodeIPointer, Node *nodeJPointer)
Asigna los pointers to node dorsal y frontal.
Definition: CrdTransf.cpp:117
Vector nodeJOffset
rigid joint offsets
Definition: CrdTransf.h:93