MaMiCo 1.2
|
provides access to the coupling cells with linked cells. More...
#include <LinkedCellContainer.h>
Private Member Functions | |
coupling::datastructures::CouplingCellWithLinkedCells< LinkedCell, dim > * | initLinkedCellContainer (tarch::la::Vector< dim, unsigned int > numberLinkedCellsPerCouplingCell, coupling::interface::MDSolverInterface< LinkedCell, dim > *mdSolverInterface) const |
std::vector< coupling::datastructures::CouplingCell< dim > * > | initCouplingCells () const |
Private Attributes | |
coupling::datastructures::CouplingCellWithLinkedCells< LinkedCell, dim > * | _couplingCellsWithLinkedCells |
Additional Inherited Members | |
![]() | |
std::vector< coupling::datastructures::CouplingCell< dim > * > | _couplingCells |
std::vector< coupling::datastructures::CouplingCell< dim > * > | _couplingCells |
provides access to the coupling cells with linked cells.
LinkedCell | linked cells that build up the CouplingCellWithLinkedCells |
dim | Number of dimensions; it can be 1, 2 or 3 |
coupling::datastructures::LinkedCellContainer< LinkedCell, dim >::LinkedCellContainer | ( | tarch::la::Vector< dim, unsigned int > | numberLinkedCellsPerCouplingCell, |
coupling::interface::MDSolverInterface< LinkedCell, dim > * | mdSolverInterface ) |
Constructor: initialises the coupling cell with linked cells
numberLinkedCellsPerCouplingCell | |
mdSolverInterface |
coupling::datastructures::LinkedCellContainer< LinkedCell, dim >::~LinkedCellContainer | ( | ) |
Destructor
void coupling::datastructures::LinkedCellContainer< LinkedCell, dim >::applyToAllLocalCouplingCellsWithLinkedCells | ( | A & | a | ) |
apply the function apply(CouplingCell&,const unsigned int&) of a generic class A to all local coupling cells. We can have the same traversal by applying both applyToLocalGhostCouplingCellsWithLinkedCells and applyToLocalNonGhostCouplingCellsWithLinkedCells. However, this implementation is more efficient.
void coupling::datastructures::LinkedCellContainer< LinkedCell, dim >::applyToFirstLayerOfGlobalNonGhostCellsWithLinkedCells | ( | A & | a | ) |
apply the function apply(CouplingCell&,const unsigned int&) of a generic class A to the first layer of GLOBAL non-ghost cells. If a cell is a local ghost cell (due to parallelization, not due to being located outside MD domain!), it will not be handled by this method. If a cell is a local non-ghost cell and is not located at the boundary of the MD domain, it will not be handled by this method. We use this traversal, e.g., for applying boundary forces to molecules close to the outer boundary.
A |
a |
void coupling::datastructures::LinkedCellContainer< LinkedCell, dim >::applyToLocalGhostCouplingCellsWithLinkedCells | ( | A & | a | ) |
apply the function apply(CouplingCell&,const unsigned int&) of a generic class A to all local ghost coupling cells.
A |
a |
void coupling::datastructures::LinkedCellContainer< LinkedCell, dim >::applyToLocalNonGhostCouplingCellsWithLinkedCells | ( | A & | a | ) |
apply the function apply(CouplingCell&,const unsigned int&) of a generic class A to all local non-ghost coupling cells. This functionality is used from the CouplingCellService to apply various functionalities (such as momentum transfer) to the coupling cells which cover the MD domain.
void coupling::datastructures::LinkedCellContainer< LinkedCell, dim >::applyXLayersOfGlobalNonGhostCellsWithLinkedCells | ( | A & | a, |
unsigned int | layers2Use ) |
coupling::datastructures::CouplingCellWithLinkedCells< LinkedCell, dim > * coupling::datastructures::LinkedCellContainer< LinkedCell, dim >::getLinkedCellContainer | ( | ) |
returns the pointer to the coupling cells with access to linked cell structur.
|
private |
initialises the coupling cells (without linked cells).
|
private |
initialises the coupling cells: creates the buffer for the cells and embeds linked cells into the coupling cells.
numberLinkedCellsPerCouplingCell | |
mdSolverInterface |
|
private |
holds the coupling cells with linked cells.