33 #include "domain/mesh/element/plane/QuadBase4N.h"    34 #include "domain/mesh/element/utils/physical_properties/SectionFDPhysicalProperties.h"    35 #include "ShellBData.h"    36 #include <utility/matrix/Vector.h>    37 #include <utility/matrix/Matrix.h>    38 #include "domain/mesh/element/utils/fvectors/FVectorShell.h"    45 class ShellUniformLoad;
    46 class ShellCrdTransf3dBase;
    57     mutable double xl[2][4]; 
    74     virtual void formResidAndTangent(
int tang_flag) 
const= 0;
    75     static void shape2d(
const double &,
const double &, 
const double x[2][4], 
double shp[3][4], 
double &xsj, 
double sx[2][2]);
    84     typedef double (*pointer_to_xl)[4]; 
    85     inline const pointer_to_xl get_xl(
void)
 const    87     inline pointer_to_xl get_xl(
void)
   132     double getMeanInternalForce(
const std::string &) 
const;
   133     double getMeanInternalDeformation(
const std::string &) 
const;
   151     void Print(std::ostream &s, 
int flag ) 
const;
 
void formInertiaTerms(int tangFlag) const
Form inertia terms. 
Definition: Shell4NBase.cc:679
const ShellUniformLoad * vector3dUniformLoadGlobal(const Vector &)
Defines a load over the element from a vector in global coordinates. 
Definition: Shell4NBase.cc:287
void Print(std::ostream &s, int flag) const
print out element data 
Definition: Shell4NBase.cc:960
Shell4NBase & operator=(const Shell4NBase &)
Assignment operator. 
Definition: Shell4NBase.cc:158
Float vector abstraction. 
Definition: Vector.h:94
Natural coordinates of an element's particle. 
Definition: ParticlePos3d.h:41
Plane polygon in a 3D space. 
Definition: Polygon3d.h:35
Shell 3D coordinate transformations that updates vector directions (needs debugging). 
Definition: ShellUpBasisCrdTransf3d.h:43
const ShellUniformLoad * vector3dUniformLoadLocal(const Vector &)
Defines a load over the element from a vector in local coordinates. 
Definition: Shell4NBase.cc:248
int recvCoordTransf(int posFlag, const int &posClassTag, const int &posDbTag, const Communicator &)
Receives the coordinate transformation through the communicator argument. 
Definition: Shell4NBase.cc:840
Communication parameters between processes. 
Definition: Communicator.h:66
Base class response objects. 
Definition: Response.h:81
Vector getInterpolationFactors(const ParticlePos3d &) const
Returns interpolation factors for a material point. 
Definition: Shell4NBase.cc:558
int recvData(const Communicator &)
Receives members through the communicator argument. 
Definition: Shell4NBase.cc:880
int revertToStart(void)
Return the initial state. 
Definition: Shell4NBase.cc:549
Vector getInterpolatedDisplacements(const ParticlePos3d &) const
Returns interpolated displacements for a material point. 
Definition: Shell4NBase.cc:638
Uniform load over shell elements. 
Definition: ShellRawLoad.h:40
int sendCoordTransf(int posFlag, const int &, const int &, Communicator &)
Send the coordinate transformation through the communicator argument. 
Definition: Shell4NBase.cc:824
double xl[2][4]
local nodal coordinates, two coordinates for each of four nodes 
Definition: Shell4NBase.h:57
Shell4NBase(int classTag, const ShellCrdTransf3dBase *)
Constructor. 
Definition: Shell4NBase.cc:108
ParticlePos3d getLocalCoordinatesOfNode(const int &) const
Return the local coordinates that correspond to the i-th node. 
Definition: Shell4NBase.cc:630
Base class for 4 node quads. 
Definition: QuadBase4N.h:45
Base class for four node shell elements. 
Definition: Shell4NBase.h:52
int addLoad(ElementalLoad *, double)
Applies on the element the load being passed as parameter. 
Definition: Shell4NBase.cc:391
Base class for 3D coordinate transformations. 
Definition: ShellCrdTransf3dBase.h:49
int update(void)
Update state variables. 
Definition: Shell4NBase.cc:346
Ingernal forces for a shell element. 
Definition: FVectorShell.h:41
static void shape2d(const double &, const double &, const double x[2][4], double shp[3][4], double &xsj, double sx[2][2])
shape function routine for MITC4 elements. 
Definition: Shell4NBase.cc:774
const ShellRawLoad * vector3dRawLoadGlobal(const std::vector< Vector > &)
Defines a load over the element from a vector of nodal loads in global coordinates. 
Definition: Shell4NBase.cc:220
double appliedB[3]
Body forces applied with load. 
Definition: Shell4NBase.h:61
Natural coordinates of an element's particle. 
Definition: ParticlePos2d.h:40
const Vector & getResistingForce(void) const
get residual 
Definition: Shell4NBase.cc:465
virtual void createInertiaLoad(const Vector &)
Creates the inertia load that corresponds to the acceleration argument. 
Definition: Shell4NBase.cc:424
Base class for Gauss integration models. 
Definition: GaussModel.h:41
int sendData(Communicator &)
Send members through the communicator argument. 
Definition: Shell4NBase.cc:867
void zeroLoad(void)
Sets loads to zero. 
Definition: Shell4NBase.cc:380
virtual ShellCrdTransf3dBase * getCoordTransf(void)
Returns a pointer to the coordinate transformation. 
Definition: Shell4NBase.cc:898
ParticlePos3d getNaturalCoordinates(const Pos3d &, bool initialGeometry=true) const
Return the natural coordinates that correspond to the argument. 
Definition: Shell4NBase.cc:634
Base class for small displacement 3D coordinate transformations. 
Definition: ShellLinearCrdTransf3d.h:42
const ShellRawLoad * vector3dRawLoadLocal(const std::vector< Vector > &)
Defines a load over the element from a vector of nodal loads in local coordinates. 
Definition: Shell4NBase.cc:178
Response * setResponse(const std::vector< std::string > &argv, Information &eleInformation)
Element response. 
Definition: Shell4NBase.cc:906
Posición en tres dimensiones. 
Definition: Pos3d.h:44
~Shell4NBase(void)
Destructor. 
Definition: Shell4NBase.cc:171
const Matrix & getMass(void) const
return mass matrix 
Definition: Shell4NBase.cc:365
int addInertiaLoadToUnbalance(const Vector &accel)
Add to the unbalance vector the inertial load corresponding to the acceleration argument. 
Definition: Shell4NBase.cc:500
Open source finite element program for structural analysis. 
Definition: ContinuaReprComponent.h:35
void strainLoad(const Matrix &)
Defines a strain load on this element. 
Definition: Shell4NBase.cc:305
virtual Matrix getLocalAxes(bool initialGeometry=true) const
Returns a matrix with the axes of the element as matrix rows [[x1,y1,z1],[x2,y2,z2],...·]. 
Definition: Shell4NBase.cc:894
ShellCrdTransf3dBase * theCoordTransf
Coordinate transformation. 
Definition: Shell4NBase.h:59
Physical properties for shells. 
Definition: SectionFDPhysicalProperties.h:41
Matrix of floats. 
Definition: Matrix.h:111
const Matrix & getTangentStiff(void) const
return stiffness matrix 
Definition: Shell4NBase.cc:353
int commitState(void)
Consuma la coordinate transformation de acuerdo con el estado actual. 
Definition: Shell4NBase.cc:533
Base class for loads over elements. 
Definition: ElementalLoad.h:79
FVectorShell p0
Reactions in the basic system due to element loads. 
Definition: Shell4NBase.h:64
int revertToLastCommit(void)
Returns to the last committed state. 
Definition: Shell4NBase.cc:541
const Vector & getResistingForceIncInertia(void) const
get residual with inertia terms 
Definition: Shell4NBase.cc:482
int getNumDOF(void) const
return number of dofs 
Definition: Shell4NBase.cc:340
const GaussModel & getGaussModel(void) const
Return the element Gauss points. 
Definition: Shell4NBase.cc:375
int getResponse(int responseID, Information &eleInformation)
Obtain information from an analysis. 
Definition: Shell4NBase.cc:941
void computeBasis(void)
compute local coordinates and basis 
Definition: Shell4NBase.cc:761
Pos3d getCartesianCoordinates(const ParticlePos2d &, bool initialGeometry=true) const
Return the cartesian coordinates of the argument. 
Definition: Shell4NBase.cc:587