MaMiCo
1.2
Toggle main menu visibility
Loading...
Searching...
No Matches
coupling
MomentumInsertion.h
1
// Copyright (C) 2015 Technische Universitaet Muenchen
2
// This file is part of the Mamico project. For conditions of distribution
3
// and use, please see the copyright notice in Mamico's main folder, or at
4
// www5.in.tum.de/mamico
5
#ifndef _MOLECULARDYNAMICS_COUPLING_MOMENTUMINSERTION_H_
6
#define _MOLECULARDYNAMICS_COUPLING_MOMENTUMINSERTION_H_
7
8
#include "coupling/datastructures/CouplingCell.h"
9
#include "tarch/la/Vector.h"
10
11
namespace
coupling
{
12
template
<
class
LinkedCell,
unsigned
int
dim>
class
MomentumInsertion
;
13
}
14
23
template
<
class
LinkedCell,
unsigned
int
dim>
class
coupling::MomentumInsertion
{
24
public
:
27
MomentumInsertion
(
coupling::interface::MDSolverInterface<LinkedCell, dim>
*
const
mdSolverInterface) :
_mdSolverInterface
(mdSolverInterface) {}
29
virtual
~MomentumInsertion
() {}
30
34
virtual
unsigned
int
getTimeIntervalPerMomentumInsertion
()
const
= 0;
35
43
virtual
void
insertMomentum
(
coupling::datastructures::CouplingCellWithLinkedCells<LinkedCell, dim>
& cell, I02 idx)
const
= 0;
44
46
virtual
void
setInnerImposition
(
bool
enable) = 0;
47
48
protected
:
50
coupling::interface::MDSolverInterface<LinkedCell, dim>
*
const
_mdSolverInterface
;
51
};
52
53
#endif
// _MOLECULARDYNAMICS_COUPLING_MOMENTUMINSERTION_H_
coupling::MomentumInsertion
used to manipulate the momentum/ velocity of the molecules contained in a coupling cell.
Definition
MomentumInsertion.h:23
coupling::MomentumInsertion::_mdSolverInterface
coupling::interface::MDSolverInterface< LinkedCell, dim > *const _mdSolverInterface
Definition
MomentumInsertion.h:50
coupling::MomentumInsertion::insertMomentum
virtual void insertMomentum(coupling::datastructures::CouplingCellWithLinkedCells< LinkedCell, dim > &cell, I02 idx) const =0
inserts a fraction from the momentum of the coupling cell and distributes is over all molecules.
coupling::MomentumInsertion::setInnerImposition
virtual void setInnerImposition(bool enable)=0
coupling::MomentumInsertion::~MomentumInsertion
virtual ~MomentumInsertion()
a simple destructor
Definition
MomentumInsertion.h:29
coupling::MomentumInsertion::getTimeIntervalPerMomentumInsertion
virtual unsigned int getTimeIntervalPerMomentumInsertion() const =0
returns the number of MD steps between subsequent momentum insertions
coupling::MomentumInsertion::MomentumInsertion
MomentumInsertion(coupling::interface::MDSolverInterface< LinkedCell, dim > *const mdSolverInterface)
a simple constructor
Definition
MomentumInsertion.h:27
coupling::datastructures::CouplingCellWithLinkedCells
defines the cell type with cell-averaged quantities. Derived from the class coupling::datastructures:...
Definition
CouplingCellWithLinkedCells.h:26
coupling::interface::MDSolverInterface
interface to the MD simulation
Definition
MDSolverInterface.h:25
coupling
everything necessary for coupling operations, is defined in here
Definition
AdditiveMomentumInsertion.h:15
Generated by
1.17.0