MaMiCo 1.2
Loading...
Searching...
No Matches
coupling::cellmappings::NieVelocityImpositionMapping< LinkedCell, dim > Class Template Reference

This class employs an acceleration based on velocity gradients (in time) using the forcing term of the molecules. More...

#include <NieVelocityImpositionMapping.h>

Collaboration diagram for coupling::cellmappings::NieVelocityImpositionMapping< LinkedCell, dim >:

Public Member Functions

 NieVelocityImpositionMapping (const tarch::la::Vector< dim, double > &continuumVelocity, const tarch::la::Vector< dim, double > &avgMDVelocity, const tarch::la::Vector< dim, double > &avgForce, coupling::interface::MDSolverInterface< LinkedCell, dim > *const mdSolverInterface)
 
virtual ~NieVelocityImpositionMapping ()
 
void beginCellIteration ()
 
void endCellIteration ()
 
void handleCell (LinkedCell &cell)
 

Private Attributes

coupling::interface::MDSolverInterface< LinkedCell, dim > *const _mdSolverInterface
 
const tarch::la::Vector< dim, double > _continuumVelocity
 
const tarch::la::Vector< dim, double > _avgMDVelocity
 
const tarch::la::Vector< dim, double > _avgForce
 

Detailed Description

template<class LinkedCell, unsigned int dim>
class coupling::cellmappings::NieVelocityImpositionMapping< LinkedCell, dim >

This class employs an acceleration based on velocity gradients (in time) using the forcing term of the molecules.

employs an acceleration based on velocity gradients (in time) using the forcing term of the molecules. We currently expect that valid force entries are provided in each molecule, that is all molecule-molecule interactions have previously been computed. The scheme follows the descriptions in the paper by Nie et al., J. Fluid. Mech. 500, 55-64, 2004. However, we only average over single grid cells (no averaging over one (periodic) dimension or similar tricks ;-) ).

Template Parameters
LinkedCellcell type
dimNumber of dimensions; it can be 1, 2 or 3
Author
Philipp Neumann

Constructor & Destructor Documentation

◆ NieVelocityImpositionMapping()

template<class LinkedCell, unsigned int dim>
coupling::cellmappings::NieVelocityImpositionMapping< LinkedCell, dim >::NieVelocityImpositionMapping ( const tarch::la::Vector< dim, double > & continuumVelocity,
const tarch::la::Vector< dim, double > & avgMDVelocity,
const tarch::la::Vector< dim, double > & avgForce,
coupling::interface::MDSolverInterface< LinkedCell, dim > *const mdSolverInterface )
inline

Constructor

Parameters
continuumVelocitycurrent velocity in this coupling cell (=velocity from continuum solver)
avgMDVelocitycurrent avg. velocity of molecules
avgForceaverage force within this coupling cell
mdSolverInterfaceMD solver interface, required for molecule iterator and molecule mass

◆ ~NieVelocityImpositionMapping()

template<class LinkedCell, unsigned int dim>
virtual coupling::cellmappings::NieVelocityImpositionMapping< LinkedCell, dim >::~NieVelocityImpositionMapping ( )
inlinevirtual

Destructor

Member Function Documentation

◆ beginCellIteration()

template<class LinkedCell, unsigned int dim>
void coupling::cellmappings::NieVelocityImpositionMapping< LinkedCell, dim >::beginCellIteration ( )
inline

empty function

◆ endCellIteration()

template<class LinkedCell, unsigned int dim>
void coupling::cellmappings::NieVelocityImpositionMapping< LinkedCell, dim >::endCellIteration ( )
inline

empty function

◆ handleCell()

template<class LinkedCell, unsigned int dim>
void coupling::cellmappings::NieVelocityImpositionMapping< LinkedCell, dim >::handleCell ( LinkedCell & cell)
inline

This function computes average force contribution inside this linked cell

Parameters
cell

Member Data Documentation

◆ _avgForce

template<class LinkedCell, unsigned int dim>
const tarch::la::Vector<dim, double> coupling::cellmappings::NieVelocityImpositionMapping< LinkedCell, dim >::_avgForce
private

average force within this coupling cell

◆ _avgMDVelocity

template<class LinkedCell, unsigned int dim>
const tarch::la::Vector<dim, double> coupling::cellmappings::NieVelocityImpositionMapping< LinkedCell, dim >::_avgMDVelocity
private

current avg. velocity of molecules

◆ _continuumVelocity

template<class LinkedCell, unsigned int dim>
const tarch::la::Vector<dim, double> coupling::cellmappings::NieVelocityImpositionMapping< LinkedCell, dim >::_continuumVelocity
private

current velocity in this coupling cell (=velocity from continuum solver)

◆ _mdSolverInterface

template<class LinkedCell, unsigned int dim>
coupling::interface::MDSolverInterface<LinkedCell, dim>* const coupling::cellmappings::NieVelocityImpositionMapping< LinkedCell, dim >::_mdSolverInterface
private

MD solver interface, required for molecule iterator and molecule mass


The documentation for this class was generated from the following file: