NetDEM v1.0
|
A modifier class for performing breakage analysis on particles. More...
#include <breakage_analysis.hpp>
Public Member Functions | |
BreakageAnalysis () | |
Default constructor. | |
Modifier * | Clone () const override |
Clones the current Modifier instance. | |
void | Init (Simulation *sim) override |
Initializes the Modifier instance. | |
bool | CheckBreakage (Particle *p_ptr) |
VecXT< DEMFragment > | ExecuteBreakage (Particle *p_ptr) |
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 | |
double | strength {1.0e3} |
double | min_breakable_size {1.0} |
double | min_ignore_size {0.1} |
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 BreakageAnalysis class is a modifier class that performs breakage analysis on the specified particles.
netdem::BreakageAnalysis::BreakageAnalysis | ( | ) |
Default constructor.
bool netdem::BreakageAnalysis::CheckBreakage | ( | Particle * | p_ptr | ) |
|
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.
VecXT< DEMFragment > netdem::BreakageAnalysis::ExecuteBreakage | ( | Particle * | p_ptr | ) |
|
overridevirtual |
Initializes the Modifier instance.
sim | Pointer to the current simulation object. |
Reimplemented from netdem::Modifier.
|
overridevirtual |
Updates the Modifier instance.
This function is called at each time step of the simulation.
Reimplemented from netdem::Modifier.
double netdem::BreakageAnalysis::min_breakable_size {1.0} |
double netdem::BreakageAnalysis::min_ignore_size {0.1} |
double netdem::BreakageAnalysis::strength {1.0e3} |