5#ifndef _MOLECULARDYNAMICS_COUPLING_TRANSFERSTRATEGIES_DIRECTTRANSFERSTRATEGY_H_
6#define _MOLECULARDYNAMICS_COUPLING_TRANSFERSTRATEGIES_DIRECTTRANSFERSTRATEGY_H_
8#include "coupling/cell-mappings/ComputeMassMapping.h"
9#include "coupling/cell-mappings/ComputeMomentumMapping.h"
10#include "coupling/transferstrategies/TransferStrategy.h"
11#include "tarch/la/Vector.h"
27template <
class LinkedCell,
unsigned int dim>
This class computes the mass over certain linked cells.
Definition ComputeMassMapping.h:23
This class computes the momentum over certain linked cells.
Definition ComputeMomentumMapping.h:24
defines the cell type with cell-averaged quantities. Derived from the class coupling::datastructures:...
Definition CouplingCellWithLinkedCells.h:26
void iterateConstCells(A &a) const
Definition CouplingCellWithLinkedCells.h:90
void setMicroscopicMass(const double &mass)
Definition CouplingCell.h:42
void setMacroscopicMomentum(const tarch::la::Vector< dim, double > &momentum)
Definition CouplingCell.h:61
void setMacroscopicMass(const double &mass)
Definition CouplingCell.h:55
void setMicroscopicMomentum(const tarch::la::Vector< dim, double > &momentum)
Definition CouplingCell.h:48
interface to the MD simulation
Definition MDSolverInterface.h:25
Definition DirectTransferStrategy.h:28
DirectTransferStrategy(coupling::interface::MDSolverInterface< LinkedCell, dim > *const mdSolverInterface)
a simple constructor
Definition DirectTransferStrategy.h:32
virtual ~DirectTransferStrategy()
a dummy destructor
Definition DirectTransferStrategy.h:37
void processInnerCouplingCellBeforeSendingMDSolverData(coupling::datastructures::CouplingCellWithLinkedCells< LinkedCell, dim > &cell, I02 index) override
the mass and momentum is evaluated for the cell and written to the macroscopic quantities
Definition DirectTransferStrategy.h:65
void processInnerCouplingCellBeforeReceivingMacroscopicSolverData(coupling::datastructures::CouplingCellWithLinkedCells< LinkedCell, dim > &cell, I02 index) override
the microscopicMass and -Momentum are set to 0
Definition DirectTransferStrategy.h:42
coupling::cellmappings::ComputeMomentumMapping< LinkedCell, dim > _momentumMapping
Definition DirectTransferStrategy.h:76
coupling::cellmappings::ComputeMassMapping< LinkedCell, dim > _massMapping
Definition DirectTransferStrategy.h:74
void processOuterCouplingCellBeforeReceivingMacroscopicSolverData(coupling::datastructures::CouplingCellWithLinkedCells< LinkedCell, dim > &cell, I02 index) override
the microscopicMass and -Momentum are set to 0
Definition DirectTransferStrategy.h:53
Definition TransferStrategy.h:25
TransferStrategy(coupling::interface::MDSolverInterface< LinkedCell, dim > *const mdSolverInterface)
a simple destructor
Definition TransferStrategy.h:29
the namespace is used for transferstrategies
Definition AveragingTransferStrategy.h:18
everything necessary for coupling operations, is defined in here
Definition AdditiveMomentumInsertion.h:15