Class representing a rectangular grid mesh.
Definition Mesh.h:29
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:27
Vector3d load
load to be distributed in particles inside the box
Definition Loads.h:30
Vector3d pointP2
right upper point of the box
Definition Loads.h:29
Vector3d pointP1
left lower point of the box
Definition Loads.h:28
std::vector< int > nodal_ids
nodal id
Definition Loads.h:39
std::vector< Vector3d > loads
Load [lx, ly, lz].
Definition Loads.h:38
std::vector< Vector3d > points
Coordinates [px, py, pz].
Definition Loads.h:37
Structure to represent a particle with a pressure. Pressure is applied to particles with the specifie...
Definition Loads.h:73
int bodyIndex
body index in body vector
Definition Loads.h:75
int particleIndex
particle index in particle vector
Definition Loads.h:76
double pressure
pressure to be applied to the particle
Definition Loads.h:77
PrescribedPorePressure(int body_index, int particle_index, double pressure_value)
Structure constructor.
Definition Loads.h:84
Structure to represent a boundary force in fluid due the action of the pressure.
Definition Loads.h:55
Vector3d pressureForce
force due the pressure applied at the boundary
Definition Loads.h:58
Vector3d pointP1
left lower point of the box
Definition Loads.h:56
Vector3d pointP2
right upper point of the box
Definition Loads.h:57
Structure to represent a box with a pressure. Pressure in applied to particles inside the cuboid defi...
Definition Loads.h:46
Vector3d pointP2
right upper point of the box
Definition Loads.h:48
double pressure
pressure in particles inside the box
Definition Loads.h:49
Vector3d pointP1
left lower point of the box
Definition Loads.h:47
Structure to represent a material with a pressure. Pressure is applied to particles with the specifie...
Definition Loads.h:65
int materialId
material id
Definition Loads.h:66
double pressure
pressure in particles inside the box
Definition Loads.h:67
Seismic data structure to manage acceleration and velocity of an earthquake record.
Definition Loads.h:97
std::vector< Eigen::Vector3d > acceleration
Definition Loads.h:99
std::vector< double > time
Definition Loads.h:98
std::vector< Eigen::Vector3d > velocity
Definition Loads.h:100