|
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 |