xc
|
#include <NewElement.h>
Public Member Functions | |
NewElement (int tag) | |
NodePtrsWithIDs & | getNodePtrs (void) |
const NodePtrsWithIDs & | getNodePtrs (void) const |
int | getNumDOF (void) const |
return the number of DOF associated with the element. More... | |
void | setDomain (Domain *theDomain) |
Sets the domain for the element. | |
int | commitState (void) |
Commit the current element state. More... | |
int | revertToLastCommit (void) |
Revert to the last commited state. More... | |
int | revertToStart (void) |
Reverts the element to its initial state. More... | |
int | update (void) |
Updates the element state. More... | |
const Matrix & | getTangentStiff (void) const |
Return the tangent stiffness matrix. More... | |
const Matrix & | getInitialStiff (void) const |
void | zeroLoad (void) |
Zeroes the loads over the element. More... | |
int | addLoad (const Vector &addP) |
int | addInertiaLoadToUnbalance (const Vector &accel) |
const Vector & | getResistingForce (void) const |
Returns the resisting force vector for the element. More... | |
const Vector & | getResistingForceIncInertia (void) const |
Returns the resisting force vector including inertia forces. More... | |
int | sendSelf (CommParameters &) |
Send the object. More... | |
int | recvSelf (const CommParameters &) |
Receive the object. More... | |
void | Print (std::ostream &s, int flag=0) |
Print stuff. | |
Response * | setResponse (const std::vector< std::string > &argv, Information &eleInfo) |
setResponse() is a method invoked to determine if the element will respond to a request for a certain of information. More... | |
int | getResponse (int responseID, Information &eleInformation) |
Obtain information from an analysis. More... | |
int | setParameter (const std::vector< std::string > &argv, Parameter ¶m) |
Sets the value param to the parameter argv . | |
int | updateParameter (int parameterID, Information &info) |
Updates the parameter identified by parameterID with info . | |
![]() | |
Element (int tag, int classTag) | |
Constructor that takes the element's unique tag and the number of external nodes for the element. More... | |
virtual Element * | getCopy (void) const =0 |
Virtual constructor. | |
virtual int | getNumExternalNodes (void) const =0 |
return the number of external nodes associated with the element. | |
virtual int | getNumEdges (void) const |
Returns number of edges (it must be overloaded for elements that have nodes inside edges. More... | |
std::vector< int > | getIdxNodes (void) const |
virtual size_t | getDimension (void) const |
Returns the element dimension (0, 1, 3 or 3). | |
virtual void | setIdNodes (const std::vector< int > &inodes) |
Set the nodes. | |
virtual void | setIdNodes (const ID &inodes) |
Set the nodes. | |
virtual bool | isSubdomain (void) |
Returns true if the element is a subdomain. | |
virtual const Matrix & | getDamp (void) const |
Returns the damping matrix. More... | |
virtual const Matrix & | getMass (void) const |
Returns the mass matrix. More... | |
virtual int | addLoad (ElementalLoad *theLoad, double loadFactor)=0 |
virtual int | setRayleighDampingFactors (const RayleighDampingFactors &rF) const |
Set Rayleigh damping factors. | |
const Vector & | getNodeResistingComponents (const size_t &, const Vector &) const |
Returns the generalized force of the element over the iNod-th node. More... | |
const Vector & | getNodeResistingForce (const size_t &iNod) const |
Returns the generalized force of the element over the iNod-th node. More... | |
const Vector & | getNodeResistingForceIncInertia (const size_t &iNod) const |
Returns the generalized force (including inertia forces) of the element over the node identified by the argument. More... | |
const Vector & | getNodeResistingForce (const Node *) const |
Returns the generalized force (including inertia forces) of the element over the node identified by the argument. More... | |
const Vector & | getNodeResistingForceIncInertia (const Node *) const |
Returns the generalized force (including inertia forces) of the element over the node identified by the argument. More... | |
Vector | getEquivalentStaticLoad (int mode, const double &) const |
Returns the equivalent static load for the mode being passed as parameter and the acceleration that corresponding that mode. More... | |
Matrix | getEquivalentStaticNodalLoads (int mode, const double &) const |
Returns the equivalent static load on each node for the mode being passed as parameter and the corresponding acceleration to the mode. More... | |
Response * | setMaterialResponse (Material *, const std::vector< std::string > &, const size_t &, Information &) |
virtual int | addInertiaLoadSensitivityToUnbalance (const Vector &accel, bool tag) |
int | setMaterialParameter (Material *, const std::vector< std::string > &, const size_t &, Parameter &) |
virtual int | activateParameter (int parameterID) |
Activates the parameter identified by parameterID . | |
virtual const Vector & | getResistingForceSensitivity (int gradNumber) |
virtual const Matrix & | getInitialStiffSensitivity (int gradNumber) |
virtual const Matrix & | getDampSensitivity (int gradNumber) |
virtual const Matrix & | getMassSensitivity (int gradNumber) |
virtual int | commitSensitivity (int gradNumber, int numGrads) |
virtual int | addResistingForceToNodalReaction (bool inclInertia) |
Adds nodal reactions. | |
double | MaxCooNod (int i) const |
Returns the maximum value of the i coordinate of the element nodes. | |
double | MinCooNod (int i) const |
Returns the minimum value of the i coordinate of the element nodes. | |
const Matrix & | getCooNodes (void) const |
Returns the coordinates of the nodes. | |
virtual Matrix | getLocalAxes (bool initialGeometry=true) const |
Returs a matrix with the axes of the element as matrix rows [[x1,y1,z1],[x2,y2,z2],...ยท]. | |
virtual Vector | getBaseVector (size_t i, bool initialGeometry=true) const |
Returns a base vector in the direction of the local i-th axis from the i-th row of the matrix returned by getLocalAxes. More... | |
virtual Vector3d | getBaseVector3d (size_t i, bool initialGeometry=true) const |
Returns a base vector in the direction of the local i-th axis from the i-th row of the matrix returned by getLocalAxes. More... | |
virtual Vector3d | getIVector3d (bool initialGeometry=true) const |
Returns a vector in the direction of the local x axis from the first row of the matrix returned by getLocalAxes. More... | |
virtual Vector3d | getJVector3d (bool initialGeometry=true) const |
Returns a vector in the direction of the local y axis from the second row of the matrix returned by getLocalAxes. More... | |
virtual Vector3d | getKVector3d (bool initialGeometry=true) const |
Returns a vector in the direction of the local z axis from the third row of the matrix returned by getLocalAxes. More... | |
virtual Rect3d3dCooSys | getCooSys (bool) const |
Returns the element coordinate system from the matrix returned by getLocalAxes. More... | |
Pos3d | getPosNode (const size_t &i, bool initialGeometry=true) const |
Returns the position of the i-th node. More... | |
std::list< Pos3d > | getPosNodes (bool initialGeometry=true) const |
Returns the coordinates of the nodes. | |
virtual Pos3d | getCenterOfMassPosition (bool initialGeometry=true) const |
Returns the coordinates del centro de gravedad of the element. | |
Vector | getCenterOfMassCoordinates (bool initialGeometry=true) const |
Returns the coordinates del centro de gravedad of the element. | |
Pos3dArray3d | getPoints (const size_t &ni, const size_t &nj, const size_t &nk, bool initialGeometry=true) |
Returns a grid of points distributed along the line. | |
bool | In (const GeomObj3d &, const double &factor=1.0, const double &tol=0.0) const |
bool | Out (const GeomObj3d &, const double &factor=1.0, const double &tol=0.0) const |
bool | In (const GeomObj2d &, const double &factor=1.0, const double &tol=0.0) const |
bool | Out (const GeomObj2d &, const double &factor=1.0, const double &tol=0.0) const |
virtual double | getDist2 (const Pos2d &p, bool initialGeometry=true) const |
Returns the squared distance from the element to the point being passed as parameter. More... | |
virtual double | getDist (const Pos2d &p, bool initialGeometry=true) const |
Returns the the distance from the element to the point being passed as parameter. More... | |
virtual double | getDist2 (const Pos3d &p, bool initialGeometry=true) const |
Returns the squared distance from the element to the point being passed as parameter. More... | |
virtual double | getDist (const Pos3d &p, bool initialGeometry=true) const |
Returns the the distance from the element to the point being passed as parameter. More... | |
void | resetTributaries (void) const |
Resets tributary areas of connected nodes. | |
void | dumpTributaries (const std::vector< double > &) const |
Adds to the tributary magnitude of each node the vector being passed as parameter. More... | |
virtual void | computeTributaryLengths (bool initialGeometry=true) const |
Computes the tributary lengths that corresponds to each node of the element. | |
virtual double | getTributaryLength (const Node *) const |
Returns the tributary length corresponding to the node being passed as parameter. More... | |
virtual double | getTributaryLengthByTag (const int &) const |
Returns the tributary length corresponding to the node which tag se pasa as parameter. More... | |
virtual void | computeTributaryAreas (bool initialGeometry=true) const |
Compute tributary areas for each element node. | |
virtual double | getTributaryArea (const Node *) const |
Returns the tributary area corresponding to the node. | |
virtual double | getTributaryAreaByTag (const int &) const |
Returns the tributary area corresponding to the node. | |
virtual void | computeTributaryVolumes (bool initialGeometry=true) const |
Computes the tributary volumes that corresponds to each node of the element. | |
virtual double | getTributaryVolume (const Node *) const |
Returns the tributary volume corresponding to the node being passed as parameter. More... | |
virtual double | getTributaryVolumeByTag (const int &) const |
Returns the tributary volume corresponding to the node which tag se pasa as parameter. More... | |
virtual Vector | getInterpolationFactors (const ParticlePos3d &) const |
Returns interpolattion factors for a material point. | |
virtual Vector | getInterpolationFactors (const Pos3d &) const |
Returns interpolattion factors for a material point. | |
virtual int | getVtkCellType (void) const |
Interfaz con VTK. | |
virtual const GaussModel & | getGaussModel (void) const |
Returns the Gauss integration model of the element. | |
virtual NodesEdge | getNodesEdge (const size_t &) const |
Returns the nodes of the element edge. | |
virtual int | getEdgeNodes (const Node *, const Node *) const |
Returns the edge of the element that ends in the nodes being passed as parameters. More... | |
int | getEdgeNodes (const int &, const int &) const |
Returns the edge of the element that ends in the nodes with the tags being passed as parameters. More... | |
virtual ID | getEdgesNode (const Node *) const |
Returns the edges of the element that ends in the node being passed as parameter. More... | |
std::set< int > | getEdgesNodes (const NodePtrSet &) const |
Returns the element edges that have both ends in the node set being passed as parameter. More... | |
ID | getEdgesNodeByTag (const int &) const |
Returns the edges of the element that have an en in the node with the tag being passed as parameter. More... | |
virtual ID | getLocalIndexNodesEdge (const size_t &i) const |
Returns the local indexes of the element nodes that lie over the i-th edge. More... | |
virtual std::set< std::string > | getMaterialNames (void) const |
Return the names of the material(s) of the element. | |
boost::python::list | getMaterialNamesPy (void) const |
Return the names of the material(s) of the element in a Python list. | |
std::set< SetBase * > | get_sets (void) const |
Returns the sets to which the element belongs. | |
void | add_to_sets (std::set< SetBase *> &) |
Adds the element to the sets being passed as parameters. | |
![]() | |
MeshComponent (int classTag) | |
Constructor. | |
MeshComponent (int tag, int classTag) | |
Constructor. | |
![]() | |
ContinuaReprComponent (int classTag) | |
ContinuaReprComponent (int tag, int classTag) | |
virtual const bool | isDead (void) const |
virtual const bool | isAlive (void) const |
virtual void | kill (void) |
virtual void | alive (void) |
![]() | |
~DomainComponent (void) | |
Destructor. | |
size_t | getIdx (void) const |
Returns the index of the object (to be used in VTK arrays). | |
virtual Domain * | getDomain (void) const |
Returns a pointer to the enclosing domain. More... | |
const Preprocessor * | getPreprocessor (void) const |
Returns (if possible) a pointer to the preprocessor. | |
Preprocessor * | getPreprocessor (void) |
Return (if possible) a pointer to the preprocessor. | |
void | set_index (const size_t &i) |
Set the index for the object (see numera in Set). More... | |
![]() | |
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. | |
![]() | |
MovableObject (int classTag, int dbTag) | |
Constructor. More... | |
MovableObject (int classTag) | |
Constructor. More... | |
MovableObject (const MovableObject &) | |
Copy constructor. Doesn't copy the dbTag. | |
MovableObject & | operator= (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 (CommParameters &) |
Return the object identifier in the database. | |
void | setDbTag (int dbTag) |
Sets the object identifier in the database. | |
void | setDbTag (CommParameters &) |
Sets the object identifier in the database if not already set. More... | |
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 . | |
![]() | |
DistributedBase (void) | |
Constructor. | |
virtual DbTagData & | getDbTagData (void) const |
Returns a vector to store class dbTags. | |
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. | |
Additional Inherited Members | |
![]() | |
typedef std::vector< const Node * > | NodesEdge |
Nodes on an element edge. More... | |
![]() | |
static void | setDeadSRF (const double &d) |
Assigns Stress Reduction Factor for element deactivation. | |
static DefaultTag & | getDefaultTag (void) |
Returns next element's tag value by default. | |
![]() | |
static double | dead_srf = 1e-6 |
Stress reduction factor for foozen elements. | |
![]() | |
virtual ElemPtrArray3d | put_on_mesh (const NodePtrArray3d &, meshing_dir) const |
Places the element on the mesh. | |
virtual ElemPtrArray3d | cose (const SetEstruct &f1, const SetEstruct &f2) const |
const Vector & | getRayleighDampingForces (void) const |
Returns element Rayleigh damping forces. | |
int | sendData (CommParameters &cp) |
Sends object members through the channel being passed as parameter. | |
int | recvData (const CommParameters &cp) |
Receives object members through the channel being passed as parameter. | |
![]() | |
void | setup_matrices (std::deque< Matrix > &, const int &) const |
Initializes the matrix container. | |
int | sendIdsEtiquetas (int posDbTag, CommParameters &) |
Send labelsthrough the channel being passed as parameter. | |
int | recvIdsEtiquetas (int posDbTag, const CommParameters &) |
Receive labels through the channel being passed as parameter. | |
int | sendData (CommParameters &) |
Send members through the channel being passed as parameter. | |
int | recvData (const CommParameters &) |
Receives members through the channel being passed as parameter. | |
![]() | |
int | sendData (CommParameters &) |
Send members through the channel being passed as parameter. | |
int | recvData (const CommParameters &) |
Receives members through the channel being passed as parameter. | |
![]() | |
DomainComponent (int tag, int classTag) | |
Constructor. More... | |
int | sendData (CommParameters &) |
Send object members through the channel being passed as parameter. | |
int | recvData (const CommParameters &) |
Receive object members through the channel being passed as parameter. | |
![]() | |
void | setTag (int newTag) |
Set tag. More... | |
![]() | |
Vector | load |
vector for applying loads | |
RayleighDampingFactors | rayFactors |
Rayleigh damping factors. | |
Matrix | Kc |
pointer to hold last committed matrix if needed for rayleigh damping | |
![]() | |
int | index |
Index for VTK arrays. | |
LabelContainer | labels |
Label container. | |
Element prototype.
|
virtual |
Commit the current element state.
The element is to commit its current state. To return 0 if sucessfull, a negative number if not.
Reimplemented from XC::Element.
|
virtual |
return the number of DOF associated with the element.
To return the number of dof associated with the element. This should equal the sum of the dofs at each of the external nodes. To ensure this, each subclass can overwrite the DomainComponent classes {setDomain()} method.
Implements XC::Element.
|
virtual |
Returns the resisting force vector for the element.
This is equal to the applied load due to element loads minus the loads at the nodes due to internal stresses in the element due to the current trial displacement, i.e.
\[ R_e= P_{e} - {R_e}(U_{trial}) \]
Implements XC::Element.
|
virtual |
Returns the resisting force vector including inertia forces.
Returns the action of the element over its attached nodes.
Returns the resisting force vector for the element with inertia forces included. This is equal to the applied load due to element loads (loads set using addLoad(), minus the loads at the nodes due to internal stresses in the element due to the current trial response quantities, i.e.
\[ R_e = P_e - I_e (\ddot U_{trial}) - R_e(\dot U_{trial}, U_{trial}) \]
Computes damping matrix.
Reimplemented from XC::Element.
|
virtual |
Obtain information from an analysis.
getResponse is a method invoked to obtain information from an analysis. The method is invoked with the integer argument returned and the Information object that was prepared in a successfull {setResponse()} method invocation. To return \(0\) if successfull, a negative number if not. The base class implementation will always return \(-1\).
Reimplemented from XC::Element.
|
virtual |
Return the tangent stiffness matrix.
To return the tangent stiffness matrix. The element is to compute its stiffness matrix based on the original location of the nodes and the current trial displacement at the nodes.
\[ K_e = {\frac{\partial f_{R_i}}{\partial U} \vert}_{U_{trial}} \]
Implements XC::Element.
|
virtual |
Receive the object.
Each object has to receive the data needed to be able to recreate itself in the new process after it has been sent through cp
. If the object is an aggregation containing other objects, new objects of the correct type can be constructed using #theBroker. To return 0 if successful or a -1 if not.
Implements XC::MovableObject.
|
virtual |
Revert to the last commited state.
The element is to set it's current state to the last committed state. To return 0 if sucessfull, a negative number if not.
Implements XC::Element.
|
virtual |
Reverts the element to its initial state.
The element is to set it's current state to the state it was at before the analysis started. To return 0 if sucessfull, a negative number if not.
Reimplemented from XC::Element.
|
virtual |
Send the object.
Each object has to send the data needed to be able to reproduce that object in a remote process. The object uses the methods provided by cp
object to send the data to another channel at the remote actor, the address of the channel is set before this method is called. An object of similar type at the remote actor is invoked with a receiveSelf() to receive the data. Returns 0 if successful (successful in that the data got to the channel), or a - if no data was sent.
Implements XC::MovableObject.
|
virtual |
setResponse() is a method invoked to determine if the element will respond to a request for a certain of information.
The information requested of the element is passed in the array of char pointers argv
of length {em argc}. If the element does not respond to the request a \(-1\) is returned. If it does respond, an integer value greater than or equal to \(0\) is returned. This is the responseID
passed in the getResponse() method. In addition the Element object is responsible for setting the Information object eleInformation
with the type of the return, i.e. {IntType, DoubleType, MatrixType, VectorType, IDType}, and for creating a Matrix, Vector or ID object for the Information object, if the information to be returned is of any of these types. The information object is responsible for invoking the destructor on these objects. The base class responds to no requests and will always return \(-1\).
Reimplemented from XC::Element.
|
virtual |
Updates the element state.
This method is invoked after the response quantities have been updated in the Domain, but not necessarily committed, e.g. during a non-linear Newton-Raphson solution algorithm. To return \(0\) if successful, a negative number if not. This base class implementation returns 0.
Reimplemented from XC::Element.
|
virtual |
Zeroes the loads over the element.
This is a method invoked to zero the element load contributions to the residual, i.e. \( P_e = 0 \)
Reimplemented from XC::Element.