MaMiCo 1.2
Loading...
Searching...
No Matches
MDSimulation.h
1#pragma once
2
3#include "coupling/services/CouplingCellService.h"
4
5namespace coupling {
6namespace interface {
12public:
14 virtual ~MDSimulation() {}
15
17 virtual void switchOffCoupling() = 0;
18
20 virtual void switchOnCoupling() = 0;
21
27 virtual void simulateTimesteps(const unsigned int& numberTimesteps, const unsigned int& firstTimestep) = 0;
28
29 // simulates a single time step
30 // virtual void simulateTimestep(const unsigned int &thisTimestep ){const
31 // unsigned int steps=1; simulateTimesteps(thisTimestep,steps);} TODO BUG
32
34 virtual void sortMoleculesIntoCells() = 0;
35
40
45 virtual void init() = 0;
46
55 virtual void init(const tarch::utils::MultiMDService<MDSIMULATIONFACTORY_DIMENSION>& multiMDService, unsigned int localMDSimulation) = 0;
56
58 virtual void shutdown() = 0;
59
64 virtual void writeCheckpoint(const std::string& filestem, const unsigned int& t) = 0;
65};
66} // namespace interface
67} // namespace coupling
generic interface class for different microscopic (MD) solvers.
Definition MDSimulation.h:11
virtual void init(const tarch::utils::MultiMDService< MDSIMULATIONFACTORY_DIMENSION > &multiMDService, unsigned int localMDSimulation)=0
virtual void simulateTimesteps(const unsigned int &numberTimesteps, const unsigned int &firstTimestep)=0
virtual ~MDSimulation()
Definition MDSimulation.h:14
virtual void writeCheckpoint(const std::string &filestem, const unsigned int &t)=0
virtual void setCouplingCellService(coupling::services::CouplingCellService< MDSIMULATIONFACTORY_DIMENSION > *couplingCellService)=0
virtual void sortMoleculesIntoCells()=0
Definition CouplingCellService.h:49
Definition MultiMDService.h:30
everything necessary for coupling operations, is defined in here
Definition AdditiveMomentumInsertion.h:15