MolSim
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
SimulationLC Class Reference

Class defining a time-integration simulation using the linked cells method. More...

#include <SimulationLC.h>

Inheritance diagram for SimulationLC:
Simulation

Public Member Functions

 SimulationLC (ParticleContainer &pc, Arguments &args, Thermostat &t, FlowSimulationAnalyzer &analyzer)
 Constructs a new linked-cell simulation.
 
 ~SimulationLC ()
 Destroys the current SimulationLC object.
 
void runSimulation () override
 Main function for running the simulation.
 
- Public Member Functions inherited from Simulation
 Simulation (ParticleContainer &pc, Arguments &args, Thermostat &t, FlowSimulationAnalyzer &analyzer)
 Constructs a new Simulation.
 
virtual ~Simulation ()
 Destroys the current Simulation object.
 
ParticleContainergetParticles ()
 Gets a reference to the ParticleContainer storing the simulation's particles.
 

Private Attributes

CellContainer m_cellContainer
 The CellContainer used to store and manage cells.
 

Additional Inherited Members

- Protected Member Functions inherited from Simulation
void initializeBase ()
 Base function for initializing Simulation parameters.
 
void runSimulationLoop (CellContainer *lc=nullptr)
 Runs a basic simulation loop.
 
- Protected Attributes inherited from Simulation
ParticleContainerm_particles
 Reference to the ParticleContainer containing the particles used in the simulation.
 
Argumentsm_args
 Reference to the Arguments struct containing simulation parameters.
 
Thermostatm_thermostat
 Reference to the Thermostat, for temperature regulation.
 
FlowSimulationAnalyzerm_analyzer
 Reference to the FlowSimulationAnalyzer, for statistics computation.
 
int m_totalIt
 The total number of iterations for which the simulation will run.
 
std::unique_ptr< FileWriterm_writer
 A pointer to the FileWriter object used for writing file output.
 
TimeIntegrationFuncs::VFunc m_calculateV
 Function for calculating the Particle velocities.
 
TimeIntegrationFuncs::XFunc m_calculateX
 Function for calculating the Particle positions.
 
StrategyFactory::FFunc m_calculateF
 Function for calculating the force effective on each Particle.
 
Timer m_timer
 Timer used to measure simulation runtime and log molecule updates per second (MUPS).
 

Detailed Description

Class defining a time-integration simulation using the linked cells method.

Constructor & Destructor Documentation

◆ SimulationLC()

SimulationLC::SimulationLC ( ParticleContainer pc,
Arguments args,
Thermostat t,
FlowSimulationAnalyzer analyzer 
)

Constructs a new linked-cell simulation.

Parameters
pcThe ParticleContainer containing the simulation molecules.
argsThe Arguments struct containing the simulation metadata.
tThe Thermostat used for temperature regulation.
analyzerThe Anlayzer used for statistics computation.

◆ ~SimulationLC()

SimulationLC::~SimulationLC ( )

Destroys the current SimulationLC object.

Member Function Documentation

◆ runSimulation()

void SimulationLC::runSimulation ( )
overridevirtual

Main function for running the simulation.

Reimplemented from Simulation.

Member Data Documentation

◆ m_cellContainer

CellContainer SimulationLC::m_cellContainer
private

The CellContainer used to store and manage cells.


The documentation for this class was generated from the following file: