Class representing a rectangular grid mesh.
Definition Mesh.h:26
Operations to manage loads in the MPM model.
void configureNodalPointLoads(Mesh *mesh)
configure nodeid-point-load data for nodal force application
void setGravity(vector< Body * > &bodies)
Configures the gravity load in particles.
void setLoadDistributedBox(vector< Body * > &bodies, vector< Loads::LoadDistributedBox > loads)
Configure distributed load in particles inside of a box.
NodalPointLoadData & getNodalPointList()
Get (node-id load) vector for set nodal point load.
void updatePrescribedPorePressure(vector< Body * > *bodies)
Set prescribed pore pressure in particles.
void setInitialVelocity(vector< Body * > &bodies)
Set initial velocity in bodies.
void setPrescribedPorePressureBoundaryForceBox(vector< Body * > &bodies, vector< Loads::PressureBoundaryForceBox > loads)
Set external boundary force in fluid phase due the prescribed pore pressure in particles.
void setInitialPorePressureMaterial(vector< Body * > &bodies, vector< Loads::PressureMaterial > pressures)
Configure initial pore pressure in particles by material id.
void setInitialPorePressureBox(vector< Body * > &bodies, vector< Loads::PressureBox > pressures)
Configure initial pore pressure in particles inside of a box.
void setSeismicData()
Set the Seismic Data object.
SeismicData & getSeismicData()
Get the Seismic Data object.
void setPrescribedPorePressureBox(vector< Body * > &bodies, vector< Loads::PressureBox > pressures)
Configure prescribed pore pressure in particles inside of a box.
Structure to define a distributed load in particles inside the cuboid defined by point p1 and p2.
Definition Loads.h:23
Vector3d load
load to be distributed in particles inside the box
Definition Loads.h:26
Vector3d pointP2
right upper point of the box
Definition Loads.h:25
Vector3d pointP1
left lower point of the box
Definition Loads.h:24
std::vector< int > nodal_ids
nodal id
Definition Loads.h:35
std::vector< Vector3d > loads
Load [lx, ly, lz].
Definition Loads.h:34
std::vector< Vector3d > points
Coordinates [px, py, pz].
Definition Loads.h:33
Structure to represent a particle with a pressure. Pressure is applied to particles with the specifie...
Definition Loads.h:69
int bodyIndex
body index in body vector
Definition Loads.h:71
int particleIndex
particle index in particle vector
Definition Loads.h:72
double pressure
pressure to be applied to the particle
Definition Loads.h:73
PrescribedPorePressure(int body_index, int particle_index, double pressure_value)
Structure constructor.
Definition Loads.h:80
Structure to represent a boundary force in fluid due the action of the pressure.
Definition Loads.h:51
Vector3d pressureForce
force due the pressure applied at the boundary
Definition Loads.h:54
Vector3d pointP1
left lower point of the box
Definition Loads.h:52
Vector3d pointP2
right upper point of the box
Definition Loads.h:53
Structure to represent a box with a pressure. Pressure in applied to particles inside the cuboid defi...
Definition Loads.h:42
Vector3d pointP2
right upper point of the box
Definition Loads.h:44
double pressure
pressure in particles inside the box
Definition Loads.h:45
Vector3d pointP1
left lower point of the box
Definition Loads.h:43
Structure to represent a material with a pressure. Pressure is applied to particles with the specifie...
Definition Loads.h:61
int materialId
material id
Definition Loads.h:62
double pressure
pressure in particles inside the box
Definition Loads.h:63
Seismic data structure to manage acceleration and velocity of an earthquake record.
Definition Loads.h:93
std::vector< Eigen::Vector3d > acceleration
Definition Loads.h:95
std::vector< double > time
Definition Loads.h:94
std::vector< Eigen::Vector3d > velocity
Definition Loads.h:96