52 #ifndef TWENTYNODEBRICK_H 53 #define TWENTYNODEBRICK_H 55 #include <domain/mesh/element/ElementBase.h> 56 #include "domain/mesh/element/utils/body_forces/BodyForces3D.h" 96 double determinant_of_Jacobian;
100 int r_integration_order;
101 int s_integration_order;
102 int t_integration_order;
113 void incremental_Update(
void);
116 static BJtensor H_3D(
double r1,
double r2,
double r3);
117 BJtensor interp_poli_at(
double r,
double s,
double t);
123 BJtensor getStiffnessTensor(
void)
const;
125 void set_strain_stress_tensor(FILE *fp,
double * u);
130 BJtensor Nodal_Coordinates(
void)
const;
135 BJtensor total_disp(FILE *fp,
double * u);
141 int get_global_number_of_node(
int local_node_number);
142 int get_Brick_Number(
void);
149 static double get_Gauss_p_c(
short order,
short point_numb);
150 static double get_Gauss_p_w(
short order,
short point_numb);
155 BJtensor iterative_nodal_forces(
void)
const;
160 BJtensor linearized_nodal_forces(
void)
const;
165 void report(
const std::string &);
166 void reportshort(
const std::string &);
167 void reportPAK(
const std::string &);
168 void reportpqtheta(
int);
170 void computeGaussPoint(
void);
171 void reportCIPIC(
const std::string &);
172 void reportTensorF(FILE *);
173 Vector getWeightofGP(
void);
181 int node_numb_1,
int node_numb_2,
int node_numb_3,
int node_numb_4,
182 int node_numb_5,
int node_numb_6,
int node_numb_7,
int node_numb_8,
183 int node_numb_9,
int node_numb_10,
int node_numb_11,
int node_numb_12,
184 int node_numb_13,
int node_numb_14,
int node_numb_15,
int node_numb_16,
185 int node_numb_17,
int node_numb_18,
int node_numb_19,
int node_numb_20,
207 const Matrix &getInitialStiff(
void)
const;
210 const Matrix &getConsMass(
void)
const;
211 const Matrix &getLumpedMass(
void)
const;
215 int addInertiaLoadToUnbalance(
const Vector &accel);
216 const Vector FormEquiBodyForce(
void);
223 void Print(std::ostream &s,
int flag =0);
virtual int sendSelf(CommParameters &)
Send the object.
Definition: TwentyNodeBrick.cpp:3315
void setDomain(Domain *theDomain)
Sets the domain for the element.
Definition: TwentyNodeBrick.cpp:2502
Float vector abstraction.
Definition: Vector.h:93
Definition: Response.h:71
Definition: BJtensor.h:110
int getNumDOF(void) const
return the number of DOF associated with the element.
Definition: TwentyNodeBrick.cpp:2496
int revertToLastCommit()
Revert to the last commited state.
Definition: TwentyNodeBrick.cpp:2639
Base class for the finite elements.
Definition: Element.h:109
int revertToStart()
Reverts the element to its initial state.
Definition: TwentyNodeBrick.cpp:2662
Element * getCopy(void) const
Virtual constructor.
Definition: TwentyNodeBrick.cpp:208
Body forces over an element.
Definition: BodyForces3D.h:39
const Matrix & getMass(void) const
Returns the mass matrix.
Definition: TwentyNodeBrick.cpp:2764
Response * setResponse(const std::vector< std::string > &argv, Information &eleInformation)
setResponse() is a method invoked to determine if the element will respond to a request for a certain...
Definition: TwentyNodeBrick.cpp:3390
int getResponse(int responseID, Information &eleInformation)
Obtain information from an analysis.
Definition: TwentyNodeBrick.cpp:3457
void Print(std::ostream &s, int flag=0)
Print stuff.
Definition: TwentyNodeBrick.cpp:3330
const Matrix & getTangentStiff(void) const
Return the tangent stiffness matrix.
Definition: TwentyNodeBrick.cpp:2687
Twenty node exahedron.
Definition: TwentyNodeBrick.h:69
Base class for 2D and 3D materials.
Definition: NDMaterial.h:97
int update(void)
Updates the element state.
Definition: TwentyNodeBrick.cpp:4441
Integration point on three-dimensional space.
Definition: MatPoint3D.h:66
int commitState()
Commit the current element state.
Definition: TwentyNodeBrick.cpp:2509
const Vector & getResistingForceIncInertia(void) const
Returns the resisting force vector including inertia forces.
Definition: TwentyNodeBrick.cpp:3198
Open source finite element program for structural analysis.
Definition: ContinuaReprComponent.h:34
Base class for finite element with pointer to nodes container.
Definition: ElementBase.h:46
static BJtensor dh_drst_at(double r, double s, double t)
Definition: TwentyNodeBrick.cpp:510
Communication parameters between processes.
Definition: CommParameters.h:65
Matrix of floats.
Definition: Matrix.h:108
Base class for loads over elements.
Definition: ElementalLoad.h:77
Domain (mesh and boundary conditions) of the finite element model.
Definition: Domain.h:116
const Vector & getResistingForce(void) const
Returns the resisting force vector for the element.
Definition: TwentyNodeBrick.cpp:3174
virtual int recvSelf(const CommParameters &)
Receive the object.
Definition: TwentyNodeBrick.cpp:3322