MaMiCo 1.2
Loading...
Searching...
No Matches
coupling::interface::SimulationAndInterfaceFactory Class Reference

factory to produced md simulation, md solver interface (for mamico) and the coupling cell service More...

#include <MDSimulationFactory.h>

Public Member Functions

coupling::interface::MDSimulationgetMDSimulation (const simplemd::configurations::MolecularDynamicsConfiguration &configuration, const coupling::configurations::MaMiCoConfiguration< MDSIMULATIONFACTORY_DIMENSION > &mamicoConfiguration, MPI_Comm localComm)
 
coupling::interface::MDSolverInterface< MY_LINKEDCELL, MDSIMULATIONFACTORY_DIMENSION > * getMDSolverInterface (const simplemd::configurations::MolecularDynamicsConfiguration &configuration, const coupling::configurations::MaMiCoConfiguration< MDSIMULATIONFACTORY_DIMENSION > &mamicoConfiguration, coupling::interface::MDSimulation *mdSimulation)
 
void shutdownMDSolverInterface ()
 

Static Public Member Functions

static SimulationAndInterfaceFactorygetInstance ()
 

Private Member Functions

 SimulationAndInterfaceFactory ()
 
 ~SimulationAndInterfaceFactory ()
 

Detailed Description

factory to produced md simulation, md solver interface (for mamico) and the coupling cell service

factory to produced md simulation, md solver interface (for mamico) and the coupling cell service using singleton pattern.

Author
Philipp Neumann

Constructor & Destructor Documentation

◆ SimulationAndInterfaceFactory()

coupling::interface::SimulationAndInterfaceFactory::SimulationAndInterfaceFactory ( )
inlineprivate

Private constructor

Note
singelton pattern

◆ ~SimulationAndInterfaceFactory()

coupling::interface::SimulationAndInterfaceFactory::~SimulationAndInterfaceFactory ( )
inlineprivate

Private destructor

Note
singelton pattern

Member Function Documentation

◆ getInstance()

static SimulationAndInterfaceFactory & coupling::interface::SimulationAndInterfaceFactory::getInstance ( )
inlinestatic
Returns
the SimulationAndInterfaceFactory object
Note
singleton pattern

◆ getMDSimulation()

coupling::interface::MDSimulation * coupling::interface::SimulationAndInterfaceFactory::getMDSimulation ( const simplemd::configurations::MolecularDynamicsConfiguration & configuration,
const coupling::configurations::MaMiCoConfiguration< MDSIMULATIONFACTORY_DIMENSION > & mamicoConfiguration,
MPI_Comm localComm )
inline

returns a pointer to the md simulation.

Parameters
configuration
mamicoConfiguration
localComm
Remarks
This will create a new simulation which needs to be deleted at the end

◆ getMDSolverInterface()

coupling::interface::MDSolverInterface< MY_LINKEDCELL, MDSIMULATIONFACTORY_DIMENSION > * coupling::interface::SimulationAndInterfaceFactory::getMDSolverInterface ( const simplemd::configurations::MolecularDynamicsConfiguration & configuration,
const coupling::configurations::MaMiCoConfiguration< MDSIMULATIONFACTORY_DIMENSION > & mamicoConfiguration,
coupling::interface::MDSimulation * mdSimulation )
inline

returns the MD solver interface. This method should be called AFTER initialising the MD simulation AND AFTER the equilibration of MD. We thus expect that getMDSimulationInterface() and switchOnCoupling() of the MDSimulationInterface() have been called before.

Parameters
configuration
mamicoConfiguration
mdSimulation

◆ shutdownMDSolverInterface()

void coupling::interface::SimulationAndInterfaceFactory::shutdownMDSolverInterface ( )
inline

shuts down the MD solver interfaces and deletes the interface if required (depending on the respective MD simulation)


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