MaMiCo 1.2
|
used to manipulate the momentum/ velocity of the molecules contained in a coupling cell. More...
#include <MomentumInsertion.h>
Public Member Functions | |
MomentumInsertion (coupling::interface::MDSolverInterface< LinkedCell, dim > *const mdSolverInterface) | |
a simple constructor | |
virtual | ~MomentumInsertion () |
a simple destructor | |
virtual unsigned int | getTimeIntervalPerMomentumInsertion () const =0 |
returns the number of MD steps between subsequent momentum insertions | |
virtual void | insertMomentum (coupling::datastructures::CouplingCellWithLinkedCells< LinkedCell, dim > &cell, I02 idx) const =0 |
inserts a fraction from the momentum of the coupling cell and distributes is over all molecules. | |
virtual void | setInnerImposition (bool enable)=0 |
Protected Attributes | |
coupling::interface::MDSolverInterface< LinkedCell, dim > *const | _mdSolverInterface |
used to manipulate the momentum/ velocity of the molecules contained in a coupling cell.
LinkedCell | the LinkedCell class is given by the implementation of linked cells in the molecular dynamics simulation |
dim | refers to the spacial dimension of the simulation, can be 1, 2, or 3 |
|
inline |
a simple constructor
mdSolverInterface | interface to the md solver |
|
pure virtual |
returns the number of MD steps between subsequent momentum insertions
Implemented in coupling::AdditiveMomentumInsertion< LinkedCell, dim >, coupling::NieVelocityImposition< LinkedCell, dim >, coupling::NoMomentumInsertion< LinkedCell, dim >, coupling::SetGivenVelocity4MomentumInsertion< LinkedCell, dim >, and coupling::VelocityGradientRelaxation< LinkedCell, dim >.
|
pure virtual |
inserts a fraction from the momentum of the coupling cell and distributes is over all molecules.
This method does not conserve the kinetic energy of the respective coupling cell. To conserve the energy as well, see the description of MomentumController on details how to do that.
cell | the coupling cell to insert the momentum |
fraction | the fraction of momentum to use |
Implemented in coupling::AdditiveMomentumInsertion< LinkedCell, dim >, coupling::NieVelocityImposition< LinkedCell, dim >, coupling::NoMomentumInsertion< LinkedCell, dim >, coupling::SetGivenVelocity4MomentumInsertion< LinkedCell, dim >, coupling::VelocityGradientRelaxation< LinkedCell, dim >, and coupling::VelocityGradientRelaxationTopOnly< LinkedCell, dim >.
|
pure virtual |
Used to activate / deactivate momentum insertion also on inner cell layers
Implemented in coupling::AdditiveMomentumInsertion< LinkedCell, dim >, coupling::NieVelocityImposition< LinkedCell, dim >, coupling::NoMomentumInsertion< LinkedCell, dim >, coupling::SetGivenVelocity4MomentumInsertion< LinkedCell, dim >, and coupling::VelocityGradientRelaxation< LinkedCell, dim >.
|
protected |
interface to the md solver