version 3.10-dev
multidomain/boundary/freeflowporousmedium/ffmomentumpm/couplingmanager.hh
Go to the documentation of this file.
1// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
2// vi: set et ts=4 sw=4 sts=4:
3//
4// SPDX-FileCopyrightInfo: Copyright © DuMux Project contributors, see AUTHORS.md in root folder
5// SPDX-License-Identifier: GPL-3.0-or-later
6//
13#ifndef DUMUX_MULTIDOMAIN_BOUNDARY_FFPM_FFMMOMENTUMPM_COUPLINGMANAGER_HH
14#define DUMUX_MULTIDOMAIN_BOUNDARY_FFPM_FFMMOMENTUMPM_COUPLINGMANAGER_HH
15
17
19
20namespace Dumux {
21
22#ifndef DOXYGEN
23namespace FreeFlowMomentumPorousMediumDetail {
24
25// declaration (specialize for different discretization types)
26template<class MDTraits,
27 class DiscFFMomentum = typename MDTraits::template SubDomain<0>::GridGeometry::DiscretizationMethod,
28 class DiscPM = typename MDTraits::template SubDomain<1>::GridGeometry::DiscretizationMethod
29 >
30struct FreeFlowMomentumPorousMediumCouplingManagerSelector;
31
32template<class MDTraits>
33struct FreeFlowMomentumPorousMediumCouplingManagerSelector<MDTraits, DiscretizationMethods::FCStaggered, DiscretizationMethods::CCTpfa>
34{ using type = FFMomentumPMCouplingManagerStaggeredCCTpfa<MDTraits>; };
35
36} // end namespace FreeFlowMomentumPorousMediumDetail
37#endif // DOXYGEN
38
39template<class MDTraits>
40using FreeFlowMomentumPorousMediumCouplingManager = typename FreeFlowMomentumPorousMediumDetail::FreeFlowMomentumPorousMediumCouplingManagerSelector<MDTraits>::type;
41
42} // end namespace Dumux
43
44#endif
The available discretization methods in Dumux.
Definition: adapt.hh:17
typename FreeFlowMomentumPorousMediumDetail::FreeFlowMomentumPorousMediumCouplingManagerSelector< MDTraits >::type FreeFlowMomentumPorousMediumCouplingManager
Definition: multidomain/boundary/freeflowporousmedium/ffmomentumpm/couplingmanager.hh:40