70 #include <domain/mesh/element/Element0D.h> 71 #include "material/uniaxial/ZeroLengthMaterials.h" 72 #include <utility/matrix/Matrix.h> 73 #include <material/uniaxial/DqUniaxialMaterial.h> 78 enum Etype { D1N2, D2N4, D2N6, D3N6, D3N12 };
84 class UniaxialMaterial;
110 Vector persistentInitialDeformation;
113 void checkDirection(
ID &dir)
const;
115 void setUp(
int Nd1,
int Nd2,
const Vector &x,
const Vector &y);
116 void setTran1d ( Etype e,
int n );
117 double computeCurrentStrain1d(
int mat,
const Vector& diff )
const;
122 static Matrix ZeroLengthM2;
123 static Matrix ZeroLengthM4;
124 static Matrix ZeroLengthM6;
125 static Matrix ZeroLengthM12;
126 static Vector ZeroLengthV2;
127 static Vector ZeroLengthV4;
128 static Vector ZeroLengthV6;
129 static Vector ZeroLengthV12;
157 inline void clearMaterials(
void)
158 { theMaterial1d.
clear(); }
160 void setMaterials(
const std::deque<int> &,
const std::vector<std::string> &);
162 {
return theMaterial1d; }
173 std::string getElementType(
void)
const;
185 boost::python::list
getValuesAtNodes(
const std::string &,
bool silent=
false)
const;
194 void Print(std::ostream &s,
int flag =0)
const;
195 boost::python::dict
getPyDict(
void)
const;
196 void setPyDict(
const boost::python::dict &);
void setMaterial(const int &, const std::string &)
Set the material for the direction argument.
Definition: ZeroLength.cpp:195
const Matrix & getDamp(void) const
Return the element damping matrix.
Definition: ZeroLength.cpp:614
int commitState(void)
Commit state of element.
Definition: ZeroLength.cpp:439
Matrix getExtrapolatedValues(const Matrix &) const
Extrapolate from Gauss points to nodes.
Definition: ZeroLength.cpp:730
void setPyDict(const boost::python::dict &)
Set the values of the object members from a Python dictionary.
Definition: ZeroLength.cpp:834
void setUpType(void)
Sets the matrix dimensions from element type.
Definition: ZeroLength.cpp:317
Float vector abstraction.
Definition: Vector.h:94
A ZeroLengthElement is defined by two nodes with the same coordinate.
Definition: ZeroLengthMaterials.h:54
Communication parameters between processes.
Definition: Communicator.h:66
void incrementPersistentInitialDeformationWithCurrentDeformation(void)
Increments the persistent (does not get wiped out by zeroLoad) initial deformation of the section...
Definition: ZeroLength.cpp:367
Base class response objects.
Definition: Response.h:81
DbTagData & getDbTagData(void) const
Returns a vector to store the dbTags of the class members.
Definition: ZeroLength.cpp:783
int recvSelf(const Communicator &)
Receives object through the communicator argument.
Definition: ZeroLength.cpp:889
void clear(void)
Free memory.
Definition: ZeroLengthMaterials.cc:72
const Matrix & getInitialStiff(void) const
Return initial stiffness matrix.
Definition: ZeroLength.cpp:576
const Vector & getPersistentInitialSectionDeformation(void) const
Returns the value of the persistent (does not get wiped out by zeroLoad) initial deformation of the s...
Definition: ZeroLength.cpp:360
ZeroLength(int tag=0)
Default constructor:
Definition: ZeroLength.cpp:94
const Vector & getResistingForceIncInertia(void) const
Return resisting force vector with inertia included.
Definition: ZeroLength.cpp:723
boost::python::dict getPyDict(void) const
Return a Python dictionary with the object members values.
Definition: ZeroLength.cpp:818
Base class for uniaxial materials.
Definition: UniaxialMaterial.h:93
int sendSelf(Communicator &)
Sends object through the communicator argument.
Definition: ZeroLength.cpp:874
Base class for materials.
Definition: Material.h:93
Vector that stores the dbTags of the class members.
Definition: DbTagData.h:44
int getResponse(int responseID, Information &eleInformation)
Get response information for responseID.
Definition: ZeroLength.cpp:961
Vector of integers.
Definition: ID.h:95
void alive(void)
Reactivates the element.
Definition: ZeroLength.cpp:657
int recvData(const Communicator &)
Receives members through the communicator argument.
Definition: ZeroLength.cpp:803
int addInertiaLoadToUnbalance(const Vector &accel)
The element has no mass, so this operation has no effect and returns 0.
Definition: ZeroLength.cpp:680
Response * setResponse(const std::vector< std::string > &argv, Information &eleInformation)
Set response quantities as "force", "deformation", "material", or "stiff".
Definition: ZeroLength.cpp:932
Base class for the finite elements.
Definition: Element.h:112
const Vector & getCurrentVelDiff(void) const
Compute the current difference in displacements between the nodes.
Definition: ZeroLength.cpp:490
Pointers to UniaxialMaterial container.
Definition: DqUniaxialMaterial.h:45
const Matrix & getMass(void) const
Return a zero mass matrix.
Definition: ZeroLength.cpp:648
int dimension
= 2 or 3 dimensions
Definition: Element0D.h:61
const Material * get_material_ptr(const std::string &) const
Return a pointer to the material that corresponds to the name.
Definition: ZeroLength.cpp:171
void setDomain(Domain *theDomain)
Set the elemento domain.
Definition: ZeroLength.cpp:382
~ZeroLength(void)
Destructor: delete must be invoked on any objects created by the object and on the matertial object...
Definition: ZeroLength.cpp:259
int revertToStart(void)
Revert state of element to initial.
Definition: ZeroLength.cpp:469
Element * getCopy(void) const
Virtual constructor.
Definition: ZeroLength.cpp:253
const Vector & getCurrentDispDiff(void) const
Compute the current difference in displacements between the nodes.
Definition: ZeroLength.cpp:478
const Matrix & getTangentStiff(void) const
Return tangent stiffness matrix for element.
Definition: ZeroLength.cpp:538
int addLoad(ElementalLoad *theLoad, double loadFactor)
The element has no loads, so this operation has no effect and returns 0.
Definition: ZeroLength.cpp:669
int update(void)
Update element state.
Definition: ZeroLength.cpp:500
Open source finite element program for structural analysis.
Definition: ContinuaReprComponent.h:35
void Print(std::ostream &s, int flag=0) const
Print information about element.
Definition: ZeroLength.cpp:904
Matrix of floats.
Definition: Matrix.h:111
int sendData(Communicator &)
Send members through the communicator argument.
Definition: ZeroLength.cpp:790
const Vector & getResistingForce(void) const
Return resisting force vector.
Definition: ZeroLength.cpp:702
Base class for loads over elements.
Definition: ElementalLoad.h:79
Zero length element.
Definition: ZeroLength.h:100
Domain (mesh and boundary conditions) of the finite element model.
Definition: Domain.h:117
Vector getInternalForces(void) const
Return the element internal forces.
Definition: ZeroLength.cpp:687
int revertToLastCommit(void)
Revert state of element to last commit.
Definition: ZeroLength.cpp:456
Element of dimension 0 (both nodes have the same position).
Definition: Element0D.h:44
boost::python::list getValuesAtNodes(const std::string &, bool silent=false) const
Return a python list with the values of the argument property at element nodes.
Definition: ZeroLength.cpp:751