|
virtual coupling::ParticleInsertion< LinkedCell, dim >::Action | insertDeleteMass (coupling::datastructures::CouplingCellWithLinkedCells< LinkedCell, dim > &cell, const tarch::la::Vector< dim, double > &couplingCellPosition, const tarch::la::Vector< dim, double > &couplingCellSize, const tarch::la::Vector< dim, double > &meanVelocity, const double &temperature, const coupling::BoundaryForceController< LinkedCell, dim > &boundaryForceController)=0 |
| adds or removes particles to the coupling cell, simulates a mass flow.
|
|
virtual bool | requiresPotentialEnergyLandscape ()=0 |
| returns true, if a potential energy landscape is needed for the insertion/removal.
|
|
| ParticleInsertion (unsigned int insertDeleteMassEveryTimestep) |
| a simple constructor
|
|
virtual | ~ParticleInsertion () |
| a simple destructor
|
|
bool | insertDeleteMassAtTimestep (unsigned int t) const |
| returns true if mass needs to be inserted or removed in a time step t
|
|
template<class LinkedCell, unsigned int dim>
class coupling::ParticleInsertion< LinkedCell, dim >
interface for particle insertion/removal on coupling cell basis.
- Author
- Philipp Neumann
- Template Parameters
-
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 |
template<class LinkedCell, unsigned int dim>
returns true, if a potential energy landscape is needed for the insertion/removal.
returns true, if the particle insertion requires information on the potential energy landscape. The USHER algorithm requires it. Other algorithms may not require it; the trivial NoParticleInsertion-implementation which does not do anything obviously does not require a valid potential energy landscape.
- Returns
- a bool that indicates if a potential energy landscape is neccessary (true) or not (false)
Implemented in coupling::NoParticleInsertion< LinkedCell, dim >, and coupling::UsherParticleInsertion< LinkedCell, dim >.