59 #ifndef EIGHTNODEBRICK_H 60 #define EIGHTNODEBRICK_H 66 #include <domain/mesh/element/ElementBase.h> 67 #include <utility/matrix/Matrix.h> 68 #include <utility/matrix/Vector.h> 69 #include "domain/mesh/element/utils/body_forces/BodyForces3D.h" 125 double determinant_of_Jacobian;
130 int r_integration_order;
131 int s_integration_order;
132 int t_integration_order;
137 std::vector<MatPoint3D> matpoint;
149 int node_numb_1,
int node_numb_2,
int node_numb_3,
int node_numb_4,
150 int node_numb_5,
int node_numb_6,
int node_numb_7,
int node_numb_8,
184 const Matrix &getInitialStiff(
void)
const;
187 const Matrix &getConsMass(
void);
191 int addInertiaLoadToUnbalance(
const Vector &accel);
193 const Vector FormEquiBodyForce(
void);
200 void Print(std::ostream &s,
int flag =0)
const;
210 BJtensor H_3D(
double r1,
double r2,
double r3)
const;
211 BJtensor interp_poli_at(
double r,
double s,
double t);
221 BJtensor getStiffnessTensor(
void)
const;
224 void set_strain_stress_tensor(FILE *fp,
double * u);
230 BJtensor Nodal_Coordinates(
void)
const;
235 BJtensor total_disp(FILE *fp,
double * u);
241 int get_global_number_of_node(
int local_node_number);
242 int get_Brick_Number(
void);
248 double get_Gauss_p_c(
short order,
short point_numb)
const;
249 double get_Gauss_p_w(
short order,
short point_numb)
const;
254 BJtensor iterative_nodal_forces(
void)
const;
259 BJtensor linearized_nodal_forces(
void)
const;
265 void reportshort(
char *);
266 void reportPAK(
char *);
267 void reportpqtheta(
int);
269 void computeGaussPoint(
void);
270 void reportCIPIC(
char *);
271 void reportTensorF(FILE *);
Float vector abstraction.
Definition: Vector.h:94
Stress tensor.
Definition: stresst.h:70
Communication parameters between processes.
Definition: Communicator.h:66
Base class response objects.
Definition: Response.h:81
int sendSelf(Communicator &)
Send the object.
Definition: EightNodeBrick.cpp:3063
void incremental_Update(void)
Definition: EightNodeBrick.cpp:422
int recvSelf(const Communicator &)
Receive the object.
Definition: EightNodeBrick.cpp:3070
int revertToStart()
Reverts the element to its initial state.
Definition: EightNodeBrick.cpp:2592
Boris Jeremic tensor class.
Definition: BJtensor.h:112
Eight node hexahedral element for three-dimensional problems.
Definition: EightNodeBrick.h:83
void alive(void)
Reactivates the element.
Definition: EightNodeBrick.cpp:2752
const Vector & getResistingForceIncInertia(void) const
Returns the resisting force vector including inertia forces.
Definition: EightNodeBrick.cpp:2992
int commitState()
Commit the current element state.
Definition: EightNodeBrick.cpp:2413
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: EightNodeBrick.cpp:3133
Base class for the finite elements.
Definition: Element.h:112
int update(void)
Updates the element state.
Definition: EightNodeBrick.cpp:4045
const Matrix & getMass(void) const
Returns the mass matrix.
Definition: EightNodeBrick.cpp:2715
Body forces over an element.
Definition: BodyForces3D.h:40
const Matrix & getTangentStiff(void) const
Return the tangent stiffness matrix.
Definition: EightNodeBrick.cpp:2616
BJtensor getMassTensor(void) const
Returns the tensor de masas.
Definition: EightNodeBrick.cpp:1075
void setDomain(Domain *theDomain)
Sets the domain for the element.
Definition: EightNodeBrick.cpp:2406
BJtensor dh_drst_at(double r, double s, double t) const
Definition: EightNodeBrick.cpp:690
Base class for 2D and 3D materials.
Definition: NDMaterial.h:101
int getNumDOF(void) const
return the number of DOF associated with the element.
Definition: EightNodeBrick.cpp:2400
void Print(std::ostream &s, int flag=0) const
Print stuff.
Definition: EightNodeBrick.cpp:3078
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
const Vector & getResistingForce(void) const
Returns the resisting force vector for the element.
Definition: EightNodeBrick.cpp:2963
Matrix of floats.
Definition: Matrix.h:111
Element * getCopy(void) const
Virtual constructor.
Definition: EightNodeBrick.cpp:408
Base class for loads over elements.
Definition: ElementalLoad.h:79
Domain (mesh and boundary conditions) of the finite element model.
Definition: Domain.h:117
int revertToLastCommit()
Revert to the last committed state.
Definition: EightNodeBrick.cpp:2566
int getResponse(int responseID, Information &eleInformation)
Obtain information from an analysis.
Definition: EightNodeBrick.cpp:3212