|
NetDEM v1.0
|
A class used to integrate the motion of walls in a DEM simulation. More...
#include <wall_motion_integrator.hpp>
Public Member Functions | |
| WallMotionIntegrator () | |
| Default constructor for WallMotionIntegrator class. | |
| Modifier * | Clone () const override |
| Clones the current WallMotionIntegrator instance. | |
| void | Execute () override |
| Executes the WallMotionIntegrator instance. | |
Public Member Functions inherited from netdem::WallGroup | |
| WallGroup () | |
| Default constructor for WallGroup class. | |
| VecXT< Wall * > const & | GetWalls () |
| Get the walls. | |
| void | AddWall (int id) |
| Adds a wall to the group. | |
| void | RemoveWall (int id) |
| Removes a wall from the group. | |
| void | AddWall (const VecXT< int > &ids) |
| Adds multiple walls to the group. | |
| void | RemoveWall (const VecXT< int > &ids) |
| Removes multiple walls from the group. | |
| void | AddWall (const std::initializer_list< int > &ids) |
| Adds multiple walls to the group. | |
| void | RemoveWall (const std::initializer_list< int > &ids) |
| Removes multiple walls from the group. | |
| void | SetWall (int id) |
| Sets the walls based on a wall ID. | |
| void | SetWall (const VecXT< int > &id_list) |
| Sets the walls based on a variable number of wall IDs. | |
| void | SetWall (const std::initializer_list< int > &id_list) |
| Sets the walls based on a variable number of wall IDs. | |
| void | Clear () |
| Clears all walls from the group. | |
| void | Update () override |
| Updates the WallGroup instance. | |
Public Member Functions inherited from netdem::Modifier | |
| Modifier () | |
| Default constructor for Modifier class. | |
| virtual void | Init (Simulation *sim) |
| Initializes the Modifier instance. | |
| virtual void | Enable () |
| Enables the Modifier instance. | |
| virtual void | Disable () |
| Disables the Modifier instance. | |
| virtual | ~Modifier () |
| Destructor for Modifier class. | |
Public Attributes | |
| double | mass {1.0} |
| Virtual mass of the wall. | |
| Vec3d | moi_principal {0, 0, 0} |
| Virtual moment of inertia of the all. | |
| VecNT< bool, 3 > | enable_translation {false, false, false} |
| A flag indicating whether to enable translation in each dimension. | |
| bool | enable_rotation {false} |
| A flag indicating whether to enable rotation. | |
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::WallGroup | |
| std::unordered_set< int > | wall_id_list |
| The list of wall ids. | |
| VecXT< Wall * > | wall_list |
| The list of wall. | |
A class used to integrate the motion of walls in a DEM simulation.
The WallMotionIntegrator class is used to integrate the motion of walls in a DEM simulation by updating their positions and orientations based on their velocities and spins.
| netdem::WallMotionIntegrator::WallMotionIntegrator | ( | ) |
Default constructor for WallMotionIntegrator class.
|
overridevirtual |
Clones the current WallMotionIntegrator instance.
Reimplemented from netdem::WallGroup.
|
overridevirtual |
Executes the WallMotionIntegrator instance.
Reimplemented from netdem::WallGroup.
| bool netdem::WallMotionIntegrator::enable_rotation {false} |
A flag indicating whether to enable rotation.
| VecNT<bool, 3> netdem::WallMotionIntegrator::enable_translation {false, false, false} |
A flag indicating whether to enable translation in each dimension.
| double netdem::WallMotionIntegrator::mass {1.0} |
Virtual mass of the wall.
| Vec3d netdem::WallMotionIntegrator::moi_principal {0, 0, 0} |
Virtual moment of inertia of the all.