NetDEM v1.0
|
A modifier class for performing breakage analysis on particles. More...
#include <breakage_analysis_pd.hpp>
Public Member Functions | |
BreakageAnalysisPD () | |
Default constructor. | |
void | SetRootPath (std::string const &root_path) |
Sets the root output path for breakage analysis results. | |
void | SetExecuteByTime (double interval) |
Sets the time interval for executing the modifier. | |
void | SetExecuteByCycles (double interval) |
Sets the cycle interval for executing the modifier. | |
Modifier * | Clone () const override |
Clones the current Modifier instance. | |
void | Init (Simulation *sim) override |
Initializes the Modifier instance. | |
void | Execute () override |
Executes the Modifier instance. | |
void | Update () override |
Updates the Modifier instance. | |
Public Member Functions inherited from netdem::ParticleGroup | |
ParticleGroup () | |
Default constructor for ParticleGroup class. | |
VecXT< Particle * > const & | GetParticles () |
Get the particles. | |
void | AddParticle (int id) |
Adds a particle to the group. | |
void | RemoveParticle (int id) |
Removes a particle from the group. | |
void | AddParticle (const VecXT< int > &ids) |
Adds multiple particles to the group. | |
void | RemoveParticle (const VecXT< int > &ids) |
Removes multiple particles from the group. | |
void | AddParticle (const std::initializer_list< int > &ids) |
Adds multiple particles to the group. | |
void | RemoveParticle (const std::initializer_list< int > &ids) |
Removes multiple particles from the group. | |
void | SetParticle (int id) |
Sets a particle to the group. | |
void | SetParticle (const VecXT< int > &ids) |
Sets multiple particles to the group. | |
void | SetParticle (const std::initializer_list< int > &ids) |
Sets multiple particles to the group. | |
void | SetParticleFromScene () |
Sets the particles to all the particles in the scene scene. | |
void | Clear () |
Clears all particles from the group. | |
Modifier * | Clone () const override |
Clones the current ParticleGroup instance. | |
void | Execute () override |
Executes the ParticleGroup instance. | |
void | Update () override |
Updates the ParticleGroup instance. | |
Public Member Functions inherited from netdem::Modifier | |
Modifier () | |
Default constructor for Modifier class. | |
virtual void | Enable () |
Enables the Modifier instance. | |
virtual void | Disable () |
Disables the Modifier instance. | |
virtual | ~Modifier () |
Destructor for Modifier class. | |
Public Attributes | |
PeriDigmDEMCoupler | pd_dem_coupler |
The PeriDigmDEMCoupler used to interface with a DEM simulation. | |
Public Attributes inherited from netdem::ParticleGroup | |
bool | use_particles_in_scene {false} |
A flag indicating whether to group all particle in the scene. | |
Public Attributes inherited from netdem::Modifier | |
std::string | label {"default"} |
DEMSolver::CyclePoint | cycle_point {DEMSolver::CyclePoint::pre} |
Simulation * | sim {nullptr} |
Scene * | scene {nullptr} |
bool | update_with_scene {false} |
bool | enable_logging {true} |
Additional Inherited Members | |
Protected Attributes inherited from netdem::ParticleGroup | |
std::unordered_set< int > | particle_id_list |
The list of particle IDs. | |
VecXT< Particle * > | particle_list |
The list of particles. | |
A modifier class for performing breakage analysis on particles.
The BreakageAnalysisPD class is a modifier class that performs breakage analysis on the specified particles. It uses the PeriDigmDEMCoupler to interface with a DEM simulation, and has options for selecting particles based on ID or from a scene file.
netdem::BreakageAnalysisPD::BreakageAnalysisPD | ( | ) |
Default constructor.
|
overridevirtual |
Clones the current Modifier instance.
Reimplemented from netdem::Modifier.
|
overridevirtual |
Executes the Modifier instance.
This function is called during the specified cycle point of the DEM solver.
Reimplemented from netdem::Modifier.
|
overridevirtual |
Initializes the Modifier instance.
sim | Pointer to the current simulation object. |
Reimplemented from netdem::Modifier.
void netdem::BreakageAnalysisPD::SetExecuteByCycles | ( | double | interval | ) |
Sets the cycle interval for executing the modifier.
This method sets the cycle interval for executing the modifier. The modifier will be executed every N cycles specified by this value.
interval | The cycle interval to set. |
void netdem::BreakageAnalysisPD::SetExecuteByTime | ( | double | interval | ) |
Sets the time interval for executing the modifier.
This method sets the time interval for executing the modifier. The modifier will be executed at regular intervals specified by this value.
interval | The time interval to set. |
void netdem::BreakageAnalysisPD::SetRootPath | ( | std::string const & | root_path | ) |
Sets the root output path for breakage analysis results.
This method sets the root output path for breakage analysis results. The default path is "tmp/out/".
root_path | The root output path to set. |
|
overridevirtual |
Updates the Modifier instance.
This function is called at each time step of the simulation.
Reimplemented from netdem::Modifier.
PeriDigmDEMCoupler netdem::BreakageAnalysisPD::pd_dem_coupler |
The PeriDigmDEMCoupler used to interface with a DEM simulation.