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;
106 void vector2dUniformLoadGlobal(
const Vector &);
107 void vector2dUniformLoadLocal(
const Vector &);
108 void vector2dPartialUniformLoadGlobal(
const double &,
const double &,
const Vector &);
109 void vector2dPartialUniformLoadLocal(
const double &,
const double &,
const Vector &);
110 void vector2dPointByRelDistLoadGlobal(
const double &,
const Vector &);
111 void vector2dPointByRelDistLoadLocal(
const double &,
const Vector &);
113 void vector2dPointLoadLocal(
const Vector &,
const Vector &);
115 void vector3dUniformLoadLocal(
const Vector &);
116 void vector3dPointByRelDistLoadGlobal(
const double &,
const Vector &);
117 void vector3dPointByRelDistLoadLocal(
const double &,
const Vector &);
118 void vector3dPointLoadGlobal(
const Vector &,
const Vector &);
119 void vector3dPointLoadLocal(
const Vector &,
const Vector &);
void vector3dUniformLoadGlobal(const Vector &)
Defines a uniform load on the vector from a vector in global coordinates.
Definition: Element1D.cc:269
double getLength(bool initialGeometry=true) const
Return the length of the segment defined by the element.
Definition: Element1D.cc:811
Segment3d getLineSegment(bool initialGeometry=true) const
Return the segment defined by the element.
Definition: Element1D.cc:784
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:41
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:536
Communication parameters between processes.
Definition: Communicator.h:66
void setDomain(Domain *theDomain)
Sets the domain for the element.
Definition: Element1D.cc:642
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:826
int initializeCoordTransf(void)
Reinitialize coordinate transformation (for example after a "manual" change in the nodal coordinates...
Definition: Element1D.cc:657
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:648
CrdTransf2d * recvCoordTransf2d(int posFlag, const int &, const int &, const Communicator &)
Receive a 2D coordinate transformation through the communicator argument.
Definition: Element1D.cc:890
virtual CrdTransf * checkCoordTransf(void)
Returns (and checks that it exists) a const pointer to the coordinate transformation.
Definition: Element1D.cc:688
double getLocalCoordinates(const Pos3d &, bool initialGeometry=true) const
Return the local coordinates of the point.
Definition: Element1D.cc:933
double getTributaryArea(const Node *) const
Return the tributary LENGTH corresponding to the node being passed as parameter (assume unit width fo...
Definition: Element1D.cc:1003
double getTributaryLength(const Node *) const
Return the tributary length corresponding to the node being passed as parameter.
Definition: Element1D.cc:986
int sendCoordTransf(int posFlag, const int &, const int &, Communicator &)
Send the coordinate transformation through the communicator argument.
Definition: Element1D.cc:846
ParticlePos3d getNaturalCoordinates(const Pos3d &, bool initialGeometry=true) const
Return the local coordinates of the point.
Definition: Element1D.cc:945
CrdTransf * recvCoordTransf(int posFlag, const int &, const int &, const Communicator &)
Receives the coordinate transformation through the communicator argument.
Definition: Element1D.cc:863
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:442
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:712
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:763
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:543
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:821
Element1D(int tag, int classTag)
Constructor.
Definition: Element1D.cc:57
Vector getInterpolationFactors(const ParticlePos3d &) const
Returns interpolation factors for a material point.
Definition: Element1D.cc:955
void computeTributaryLengths(bool initialGeometry=true) const
Compute the tributary lengths that corresponds to each node of the element.
Definition: Element1D.cc:976
BoolArray3d getNodePattern(void) const
Return a grid of booleans, one for each of the element nodes.
Definition: Element1D.cc:527
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:738
structured set, i.
Definition: SetEstruct.h:47
CrdTransf3d * recvCoordTransf3d(int posFlag, const int &, const int &, const Communicator &)
Receive a 3D coordinate transformation through the communicator argument.
Definition: Element1D.cc:909
void vector2dPointLoadGlobal(const Vector &, const Vector &)
Define an elemental concentrated load at position p with value v expressed in global coordinates...
Definition: Element1D.cc:225
Pos2d getProjection(const Pos2d &p, bool initialGeometry=true) const
Return the projection of the argument on the element.
Definition: Element1D.cc:795
Posición en tres dimensiones.
Definition: Pos3d.h:44
Three-dimensional array of pointers to nodes.
Definition: NodePtrArray3d.h:51
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:47
Matrix of floats.
Definition: Matrix.h:111
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:997
Domain (mesh and boundary conditions) of the finite element model.
Definition: Domain.h:117
int getVtkCellType(void) const
VTK interface.
Definition: Element1D.cc:929
Mesh node.
Definition: Node.h:111
Base class for 3D coordinate transformation.
Definition: CrdTransf3d.h:81