Commit 7df47c93 authored by Ivan Buntic's avatar Ivan Buntic Committed by Timo Koch
Browse files

[disc][multidomain] Use discretization tag instead of enum as template argument.

parent e4a65c56
......@@ -104,41 +104,41 @@ private:
using TimeLoop = TimeLoopBase<Scalar>;
using ThisType = MultiDomainFVAssembler<MDTraits, CouplingManager, diffMethod, isImplicit()>;
template<DiscretizationMethod discMethod, std::size_t id>
template<class DiscretizationMethod, std::size_t id>
struct SubDomainAssemblerType;
template<std::size_t id>
struct SubDomainAssemblerType<DiscretizationMethod::cctpfa, id>
struct SubDomainAssemblerType<DiscretizationMethods::CCTpfa, id>
{
using type = SubDomainCCLocalAssembler<id, SubDomainTypeTag<id>, ThisType, diffMethod, isImplicit()>;
};
template<std::size_t id>
struct SubDomainAssemblerType<DiscretizationMethod::ccmpfa, id>
struct SubDomainAssemblerType<DiscretizationMethods::CCMpfa, id>
{
using type = SubDomainCCLocalAssembler<id, SubDomainTypeTag<id>, ThisType, diffMethod, isImplicit()>;
};
template<std::size_t id>
struct SubDomainAssemblerType<DiscretizationMethod::box, id>
struct SubDomainAssemblerType<DiscretizationMethods::Box, id>
{
using type = SubDomainBoxLocalAssembler<id, SubDomainTypeTag<id>, ThisType, diffMethod, isImplicit()>;
};
template<std::size_t id>
struct SubDomainAssemblerType<DiscretizationMethod::staggered, id>
struct SubDomainAssemblerType<DiscretizationMethods::Staggered, id>
{
using type = SubDomainStaggeredLocalAssembler<id, SubDomainTypeTag<id>, ThisType, diffMethod, isImplicit()>;
};
template<std::size_t id>
struct SubDomainAssemblerType<DiscretizationMethod::fcstaggered, id>
struct SubDomainAssemblerType<DiscretizationMethods::FCStaggered, id>
{
using type = SubDomainFaceCenteredLocalAssembler<id, SubDomainTypeTag<id>, ThisType, diffMethod, isImplicit()>;
};
template<std::size_t id>
using SubDomainAssembler = typename SubDomainAssemblerType<GridGeometry<id>::discMethod, id>::type;
using SubDomainAssembler = typename SubDomainAssemblerType<typename GridGeometry<id>::DiscretizationMethod, id>::type;
public:
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment