MaMiCo 1.2
Loading...
Searching...
No Matches
CouetteSolverInterface.h
1// Copyright (C) 2016 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
6#ifndef _MOLECULARDYNAMICS_COUPLING_SOLVERS_COUETTESOLVERINTERFACE_H_
7#define _MOLECULARDYNAMICS_COUPLING_SOLVERS_COUETTESOLVERINTERFACE_H_
8
9#include "coupling/interface/MacroscopicSolverInterface.h"
10
11namespace coupling {
12namespace solvers {
13template <unsigned int dim> class CouetteSolverInterface;
14}
15} // namespace coupling
16
29public:
34 CouetteSolverInterface(tarch::la::Vector<dim, unsigned int> globalNumberCouplingCells, unsigned int outerRegion = 1)
35 : coupling::interface::MacroscopicSolverInterface<dim>(), _outerRegion(outerRegion), _globalNumberCouplingCells(globalNumberCouplingCells) {}
36
39
40 unsigned int getOuterRegion() override { return _outerRegion; }
41
45 std::vector<unsigned int> getRanks(I01 idx) override {
46 std::vector<unsigned int> ranks;
47 ranks.push_back(0);
48 return ranks;
49 }
50
51private:
54 const unsigned int _outerRegion;
57};
58
59#endif // _MOLECULARDYNAMICS_COUPLING_SOLVERS_COUETTESOLVERINTERFACE_H_
interface for the macroscopic, i.e. continuum solver
Definition MacroscopicSolverInterface.h:23
MacroscopicSolverInterface()
Definition MacroscopicSolverInterface.h:27
interface to couette solver
Definition CouetteSolverInterface.h:28
virtual ~CouetteSolverInterface()
a dummy destructor
Definition CouetteSolverInterface.h:38
CouetteSolverInterface(tarch::la::Vector< dim, unsigned int > globalNumberCouplingCells, unsigned int outerRegion=1)
a simple constructor
Definition CouetteSolverInterface.h:34
const tarch::la::Vector< dim, unsigned int > _globalNumberCouplingCells
global number of coupling cells
Definition CouetteSolverInterface.h:56
const unsigned int _outerRegion
defines an offset of cells which is considered to be the outer region
Definition CouetteSolverInterface.h:54
std::vector< unsigned int > getRanks(I01 idx) override
calculates for a coupling cell index, which rank holds it
Definition CouetteSolverInterface.h:45
Definition Vector.h:24
all numerical solvers are defined in the namespace, and their interfaces
Definition CouetteSolver.h:14
everything necessary for coupling operations, is defined in here
Definition AdditiveMomentumInsertion.h:15