MaMiCo 1.2
|
everything necessary for coupling operations, is defined in here More...
Namespaces | |
namespace | filtering |
namespace | paralleltopology |
namespace | solvers |
all numerical solvers are defined in the namespace, and their interfaces | |
namespace | transferstrategies |
the namespace is used for transferstrategies | |
Classes | |
class | AdditiveMomentumInsertion |
used to manipulate the momentum/velocity of the molecules contained in a coupling cell. More... | |
class | BoundaryForceController |
controller for forces acting at open MD boundaries More... | |
class | CouplingCellPlotter |
plots the coupling cell data. More... | |
class | InstanceHandling |
Simulation slots are managed (i.e., added/removed) via this class. Works and interacts with the class coupling::MultiMDMediator closely. More... | |
class | KineticEnergyController |
controles and regulates the kinetic energy of the MD system. More... | |
class | MomentumController |
controls the momentum in a coupling cell. More... | |
class | MomentumInsertion |
used to manipulate the momentum/ velocity of the molecules contained in a coupling cell. More... | |
class | MultiMDMediator |
Class to handle interaction between MultiMDCellService and InstanceHandling This is currently mainly used for activating/deactivating and addtion/removal of md simulations. Works and interacts with the class coupling::InstanceHandling closely. More... | |
class | NieVelocityImposition |
Velocity imposition scheme following the respective paper by Nie et al., J. Fluid. Mech. 500, 2004. More... | |
class | NoBoundaryForce |
dummy implementation, applying no boundary force. More... | |
class | NoMomentumInsertion |
dummy class. Empty momentum insertion mechanism. Doesn't change anything. More... | |
class | NoParticleInsertion |
empty implementation of particle insertion (no particle insertion/removal). More... | |
class | ParticleInsertion |
interface for particle insertion/removal on coupling cell basis. More... | |
class | SetGivenVelocity4MomentumInsertion |
class | UsherParticleInsertion |
handles particle insertion (via Usher algorithm) and random particle deletion. More... | |
class | VelocityGradientRelaxation |
carries out velocity relaxation (similar to the SetMomentumMapping procedure). More... | |
class | VelocityGradientRelaxationTopOnly |
carries out velocity relaxation (similar to the SetMomentumMapping procedure). More... | |
class | ZhouBoundaryForceController |
applies the boundary force from Zhou et al. in boundary cell. More... | |
Enumerations | |
enum | MacroscopicSolverID { PEANO_LATTICEBOLTZMANN_ID = 0 , TEST_LOCAL_MACROSCOPIC_SOLVER_ID = 1 } |
Functions | |
template<unsigned int dim> | |
tarch::la::Vector< 3, unsigned int > | initRange (tarch::la::Vector< dim, unsigned int > vec) |
initialises the range for looping over Cartesian grid for general case | |
template<unsigned int dim> | |
tarch::la::Vector< dim, unsigned int > | initDimVector (tarch::la::Vector< 3, unsigned int > vec) |
reduces three-dimensional vector to vector of size dim (assumes that dim<= 3). | |
template<unsigned int dim> | |
tarch::la::Vector< dim, unsigned int > | initDivisionFactor (tarch::la::Vector< dim, unsigned int > numberCells) |
template<unsigned int dim> | |
tarch::la::Vector< dim, unsigned int > | getVectorCellIndex (unsigned int cellIndex, const tarch::la::Vector< dim, unsigned int > &divisionFactor) |
converts linearised cell index to a vector cell index using predefined division factors. | |
everything necessary for coupling operations, is defined in here
interface for different MD solvers.
This is an enum for the macroscopic solver ID
Enumerator | |
---|---|
PEANO_LATTICEBOLTZMANN_ID | test1 |
TEST_LOCAL_MACROSCOPIC_SOLVER_ID | test2 |
tarch::la::Vector< dim, unsigned int > coupling::getVectorCellIndex | ( | unsigned int | cellIndex, |
const tarch::la::Vector< dim, unsigned int > & | divisionFactor ) |
converts linearised cell index to a vector cell index using predefined division factors.
This method is supposed to be only called with member divisionFactor variables, cf. initDivisionFactor()-method.
cellIndex | the index of the cell which shall be transformed |
divisionFactor | the division factor for the corresponding spacial setup of the domain |
dim | refers to the spacial dimension of the simulation, can be 1, 2, or 3 |
tarch::la::Vector< dim, unsigned int > coupling::initDimVector | ( | tarch::la::Vector< 3, unsigned int > | vec | ) |
reduces three-dimensional vector to vector of size dim (assumes that dim<= 3).
vec | the input which will be reduced |
dim | refers to the spacial dimension of the simulation, can be 1, 2, or 3 |
tarch::la::Vector< dim, unsigned int > coupling::initDivisionFactor | ( | tarch::la::Vector< dim, unsigned int > | numberCells | ) |
@briefcomputes a vectorwise division factor for the conversion of linearised to vector indices
numberCells | the number of cells per direction in the spacial domain |
dim | refers to the spacial dimension of the simulation, can be 1, 2, or 3 |
tarch::la::Vector< 3, unsigned int > coupling::initRange | ( | tarch::la::Vector< dim, unsigned int > | vec | ) |
initialises the range for looping over Cartesian grid for general case
vec | the input vector to be generalised |
dim | refers to the spacial dimension of the simulation, can be 1, 2, or 3 |