33 #include <domain/mesh/element/ElementBase.h> 44 class DeformationPlane;
56 mutable std::vector<double> tributaryLengths;
58 static void shape1d(
const double &,
double shp[2]);
72 Element1D(
int tag,
int classTag,
int Nd1,
int Nd2);
85 double getDist2(
const Pos2d &p,
bool initialGeometry=
true)
const;
86 double getDist(
const Pos2d &p,
bool initialGeometry=
true)
const;
87 double getDist2(
const Pos3d &p,
bool initialGeometry=
true)
const;
88 double getDist(
const Pos3d &p,
bool initialGeometry=
true)
const;
93 double getLength(
bool initialGeometry=
true)
const;
108 ElementalLoad *vector2dPartialUniformLoadGlobal(
const double &,
const double &,
const Vector &);
109 ElementalLoad *vector2dPartialUniformLoadLocal(
const double &,
const double &,
const Vector &);
double getLength(bool initialGeometry=true) const
Return the length of the segment defined by the element.
Definition: Element1D.cc:893
Segment3d getLineSegment(bool initialGeometry=true) const
Return the segment defined by the element.
Definition: Element1D.cc:866
Float vector abstraction.
Definition: Vector.h:94
Natural coordinates of an element's particle.
Definition: ParticlePos3d.h:41
Segment en tres dimensiones.
Definition: Segment3d.h:42
Base class for grids of bool in 3D (used to express if something exists or not in a (layer...
Definition: BoolArray3d.h:34
static void shape1d(const double &, double shp[2])
shape function routine for one-dimesional two node elements.
Definition: Element1D.cc:613
Communication parameters between processes.
Definition: Communicator.h:66
void setDomain(Domain *theDomain)
Sets the domain for the element.
Definition: Element1D.cc:722
double getDist(const Pos2d &p, bool initialGeometry=true) const
Return the the distance from the element to the point being passed as parameter.
Definition: Element1D.cc:908
Posición en dos dimensiones.
Definition: Pos2d.h:41
CrdTransf provides the abstraction of a frame coordinate transformation.
Definition: CrdTransf.h:88
virtual CrdTransf * getCoordTransf(void)
Returns (if possible) a pointer to the coordinate transformation.
Definition: Element1D.cc:728
CrdTransf2d * recvCoordTransf2d(int posFlag, const int &, const int &, const Communicator &)
Receive a 2D coordinate transformation through the communicator argument.
Definition: Element1D.cc:974
virtual CrdTransf * checkCoordTransf(void)
Returns (and checks that it exists) a const pointer to the coordinate transformation.
Definition: Element1D.cc:770
double getLocalCoordinates(const Pos3d &, bool initialGeometry=true) const
Return the local coordinates of the point.
Definition: Element1D.cc:1017
double getTributaryArea(const Node *) const
Return the tributary LENGTH corresponding to the node being passed as parameter (assume unit width fo...
Definition: Element1D.cc:1087
double getTributaryLength(const Node *) const
Return the tributary length corresponding to the node being passed as parameter.
Definition: Element1D.cc:1070
int sendCoordTransf(int posFlag, const int &, const int &, Communicator &)
Send the coordinate transformation through the communicator argument.
Definition: Element1D.cc:928
ParticlePos3d getNaturalCoordinates(const Pos3d &, bool initialGeometry=true) const
Return the local coordinates of the point.
Definition: Element1D.cc:1029
CrdTransf * recvCoordTransf(int posFlag, const int &, const int &, const Communicator &)
Receives the coordinate transformation through the communicator argument.
Definition: Element1D.cc:945
Three-dimensional array of pointers to elements.
Definition: ElemPtrArray3d.h:47
size_t getDimension(void) const
Return the element dimension (0, 1, 2 or 3).
Definition: Element1D.cc:519
Matrix getLocalAxes(bool) const
Returns a matrix with the axes of the element as matrix rows [[x1,y1,z1],[x2,y2,z2],...·].
Definition: Element1D.cc:794
ElementalLoad * vector3dUniformLoadGlobal(const Vector &)
Defines a uniform load on the vector from a vector in global coordinates.
Definition: Element1D.cc:315
Base class for one-dimensional elements (beam,truss,...)
Definition: Element1D.h:52
virtual const Vector & getCooPoint(const double &xrel) const
Return the point that correspond to the relative coordinate 0<=xrel<=1.
Definition: Element1D.cc:845
Base class for 2D coordinate transformation.
Definition: CrdTransf2d.h:78
ElemPtrArray3d put_on_mesh(const NodePtrArray3d &, meshing_dir dm) const
Put the elements on the nodes being passed as parameter.
Definition: Element1D.cc:620
double getDist2(const Pos2d &p, bool initialGeometry=true) const
Return the squared distance from the element to the point being passed as parameter.
Definition: Element1D.cc:903
int resetNodalCoordinates(void)
Reinitialize coordinate transformation (for example after a "manual" change in the nodal coordinates...
Definition: Element1D.cc:737
Element1D(int tag, int classTag)
Constructor.
Definition: Element1D.cc:58
Vector getInterpolationFactors(const ParticlePos3d &) const
Returns interpolation factors for a material point.
Definition: Element1D.cc:1039
void computeTributaryLengths(bool initialGeometry=true) const
Compute the tributary lengths that corresponds to each node of the element.
Definition: Element1D.cc:1060
BoolArray3d getNodePattern(void) const
Return a grid of booleans, one for each of the element nodes.
Definition: Element1D.cc:604
virtual const Matrix & getCooPoints(const size_t &ndiv) const
Return points distributed between the nodes as a matrix with the coordinates as rows.
Definition: Element1D.cc:820
structured set, i.
Definition: SetEstruct.h:48
CrdTransf3d * recvCoordTransf3d(int posFlag, const int &, const int &, const Communicator &)
Receive a 3D coordinate transformation through the communicator argument.
Definition: Element1D.cc:993
Pos2d getProjection(const Pos2d &p, bool initialGeometry=true) const
Return the projection of the argument on the element.
Definition: Element1D.cc:877
Posición en tres dimensiones.
Definition: Pos3d.h:44
Three-dimensional array of pointers to nodes.
Definition: NodePtrArray3d.h:53
Open source finite element program for structural analysis.
Definition: ContinuaReprComponent.h:35
Base class for finite element with pointer to nodes container.
Definition: ElementBase.h:48
Matrix of floats.
Definition: Matrix.h:111
Base class for loads over elements.
Definition: ElementalLoad.h:79
void computeTributaryAreas(bool initialGeometry=true) const
Compute the tributary LENGTHS that corresponds to each node of the element (assume unit width for the...
Definition: Element1D.cc:1081
Domain (mesh and boundary conditions) of the finite element model.
Definition: Domain.h:117
int getVtkCellType(void) const
VTK interface.
Definition: Element1D.cc:1013
Mesh node.
Definition: Node.h:112
ElementalLoad * vector2dPointLoadGlobal(const Vector &, const Vector &)
Define an elemental concentrated load at position p with value v expressed in global coordinates...
Definition: Element1D.cc:263
Base class for 3D coordinate transformation.
Definition: CrdTransf3d.h:81