diff --git a/ebos/collecttoiorank.cc b/ebos/collecttoiorank.cc index dc60d529e..5532716c9 100644 --- a/ebos/collecttoiorank.cc +++ b/ebos/collecttoiorank.cc @@ -35,6 +35,10 @@ namespace Opm { +template class CollectDataToIORank>>; + #if HAVE_DUNE_FEM template class CollectDataToIORank > >; -#else // ! HAVE_DUNE_FEM -template class CollectDataToIORank>>; -#endif +#endif // HAVE_DUNE_FEM } // end namespace Opm diff --git a/ebos/eclgenericcpgridvanguard.cc b/ebos/eclgenericcpgridvanguard.cc index f12fc3d90..0af5774a7 100644 --- a/ebos/eclgenericcpgridvanguard.cc +++ b/ebos/eclgenericcpgridvanguard.cc @@ -493,44 +493,44 @@ computeCellThickness(const typename GridView::template Codim<0>::Entity& element zz2 /=4; return zz2-zz1; } +template class EclGenericCpGridVanguard< + Dune::MultipleCodimMultipleGeomTypeMapper< + Dune::GridView< + Dune::DefaultLeafGridViewTraits>>, + Dune::GridView< + Dune::DefaultLeafGridViewTraits>, + double>; #if HAVE_DUNE_FEM - template class EclGenericCpGridVanguard< - Dune::MultipleCodimMultipleGeomTypeMapper< - Dune::GridView< - Dune::Fem::GridPart2GridViewTraits< - Dune::Fem::AdaptiveLeafGridPart< - Dune::CpGrid, - Dune::PartitionIteratorType(4), - false>>>>, +template class EclGenericCpGridVanguard< + Dune::MultipleCodimMultipleGeomTypeMapper< Dune::GridView< Dune::Fem::GridPart2GridViewTraits< Dune::Fem::AdaptiveLeafGridPart< Dune::CpGrid, Dune::PartitionIteratorType(4), - false>>>, - double>; + false>>>>, + Dune::GridView< + Dune::Fem::GridPart2GridViewTraits< + Dune::Fem::AdaptiveLeafGridPart< + Dune::CpGrid, + Dune::PartitionIteratorType(4), + false>>>, + double>; - template class EclGenericCpGridVanguard< - Dune::MultipleCodimMultipleGeomTypeMapper< - Dune::Fem::GridPart2GridViewImpl< - Dune::Fem::AdaptiveLeafGridPart< - Dune::CpGrid, - Dune::PartitionIteratorType(4), - false>>>, +template class EclGenericCpGridVanguard< + Dune::MultipleCodimMultipleGeomTypeMapper< Dune::Fem::GridPart2GridViewImpl< Dune::Fem::AdaptiveLeafGridPart< Dune::CpGrid, Dune::PartitionIteratorType(4), - false> >, - double>; -#else - template class EclGenericCpGridVanguard< - Dune::MultipleCodimMultipleGeomTypeMapper< - Dune::GridView< - Dune::DefaultLeafGridViewTraits>>, - Dune::GridView< - Dune::DefaultLeafGridViewTraits>, - double>; -#endif + false>>>, + Dune::Fem::GridPart2GridViewImpl< + Dune::Fem::AdaptiveLeafGridPart< + Dune::CpGrid, + Dune::PartitionIteratorType(4), + false> >, + double>; +#endif // HAVE_DUNE_FEM + } // namespace Opm diff --git a/ebos/eclgenericproblem.cc b/ebos/eclgenericproblem.cc index ce133dadb..d78fad016 100644 --- a/ebos/eclgenericproblem.cc +++ b/ebos/eclgenericproblem.cc @@ -40,6 +40,10 @@ namespace Opm { +template class EclGenericProblem>, + BlackOilFluidSystem, + double>; + #if HAVE_DUNE_FEM template class EclGenericProblem>>, BlackOilFluidSystem, @@ -51,10 +55,6 @@ template class EclGenericProblem >, BlackOilFluidSystem, double>; -#else -template class EclGenericProblem>, - BlackOilFluidSystem, - double>; -#endif +#endif // HAVE_DUNE_FEM } // end namespace Opm diff --git a/ebos/eclgenericthresholdpressure.cc b/ebos/eclgenericthresholdpressure.cc index 1b18d252f..2dc901f6b 100644 --- a/ebos/eclgenericthresholdpressure.cc +++ b/ebos/eclgenericthresholdpressure.cc @@ -36,6 +36,11 @@ namespace Opm { +template class EclGenericThresholdPressure>, + Dune::MultipleCodimMultipleGeomTypeMapper>>, + double>; + #if HAVE_DUNE_FEM template class EclGenericThresholdPressure>>, @@ -54,12 +59,6 @@ template class EclGenericThresholdPressure>>, double>; -#else -template class EclGenericThresholdPressure>, - Dune::MultipleCodimMultipleGeomTypeMapper>>, - double>; -#endif - +#endif // HAVE_DUNE_FEM } // namespace Opm diff --git a/ebos/eclgenerictracermodel.cc b/ebos/eclgenerictracermodel.cc index d83b442b4..07dedddaf 100644 --- a/ebos/eclgenerictracermodel.cc +++ b/ebos/eclgenerictracermodel.cc @@ -31,6 +31,12 @@ namespace Opm { +template class EclGenericTracerModel>, + Dune::MultipleCodimMultipleGeomTypeMapper>>, + Opm::EcfvStencil>,false,false>, + double>; + #if HAVE_DUNE_FEM template class EclGenericTracerModel>>, @@ -46,12 +52,6 @@ template class EclGenericTracerModel >, false, false>, double>; -#else -template class EclGenericTracerModel>, - Dune::MultipleCodimMultipleGeomTypeMapper>>, - Opm::EcfvStencil>,false,false>, - double>; -#endif //HAVE_DUNE_FEM +#endif // HAVE_DUNE_FEM } // namespace Opm diff --git a/ebos/eclgenericwriter.cc b/ebos/eclgenericwriter.cc index 2ade8cc99..62ddd929f 100644 --- a/ebos/eclgenericwriter.cc +++ b/ebos/eclgenericwriter.cc @@ -38,6 +38,12 @@ namespace Opm { +template class EclGenericWriter>, + Dune::MultipleCodimMultipleGeomTypeMapper>>, + double>; + #if HAVE_DUNE_FEM template class EclGenericWriter>>, double>; -#else // !HAVE_DUNE_FEM -template class EclGenericWriter>, - Dune::MultipleCodimMultipleGeomTypeMapper>>, - double>; -#endif // HAVE_DUNE_FEM +#endif // HAVE_DUNE_FEM*/ } // namespace Opm diff --git a/ebos/ecltransmissibility.cc b/ebos/ecltransmissibility.cc index 72f2fc2ee..9a6d40961 100644 --- a/ebos/ecltransmissibility.cc +++ b/ebos/ecltransmissibility.cc @@ -35,6 +35,12 @@ namespace Opm { +template class EclTransmissibility>, + Dune::MultipleCodimMultipleGeomTypeMapper>>, + Dune::CartesianIndexMapper, + double>; + #ifdef HAVE_DUNE_FEM template class EclTransmissibility>>, @@ -55,12 +61,6 @@ template class EclTransmissibility > >, Dune::CartesianIndexMapper, double>; -#else // !DUNE_FEM -template class EclTransmissibility>, - Dune::MultipleCodimMultipleGeomTypeMapper>>, - Dune::CartesianIndexMapper, - double>; -#endif //HAVE_DUNE_FEM +#endif // HAVE_DUNE_FEM } // namespace Opm diff --git a/ebos/equil/initstateequil.cc b/ebos/equil/initstateequil.cc index 53fdffa86..5fa13fe7f 100644 --- a/ebos/equil/initstateequil.cc +++ b/ebos/equil/initstateequil.cc @@ -37,37 +37,42 @@ namespace Opm { namespace EQUIL { namespace DeckDependent { -#if HAVE_DUNE_FEM -using GridView = Dune::Fem::GridPart2GridViewImpl< - Dune::Fem::AdaptiveLeafGridPart< - Dune::CpGrid, - Dune::PartitionIteratorType(4), - false>>; -#else -using GridView = Dune::GridView>; -#endif - -using Mapper = Dune::MultipleCodimMultipleGeomTypeMapper; -template class InitialStateComputer, - Dune::CpGrid, - GridView, - Mapper, - Dune::CartesianIndexMapper>; - using MatLaw = EclMaterialLawManager>; -template InitialStateComputer, - Dune::CpGrid, - GridView, - Mapper, - Dune::CartesianIndexMapper>:: - InitialStateComputer(MatLaw&, - const EclipseState&, - const Dune::CpGrid&, - const GridView&, - const Dune::CartesianIndexMapper&, - const double, - const int, - const bool); + +#define INSTANCE_COMP(GridView, Mapper) \ + template class InitialStateComputer, \ + Dune::CpGrid, \ + GridView, \ + Mapper, \ + Dune::CartesianIndexMapper>; \ + template InitialStateComputer, \ + Dune::CpGrid, \ + GridView, \ + Mapper, \ + Dune::CartesianIndexMapper>::\ + InitialStateComputer(MatLaw&, \ + const EclipseState&, \ + const Dune::CpGrid&, \ + const GridView&, \ + const Dune::CartesianIndexMapper&, \ + const double, \ + const int, \ + const bool); + +using GridView = Dune::GridView>; +using Mapper = Dune::MultipleCodimMultipleGeomTypeMapper; +INSTANCE_COMP(GridView, Mapper) + +#if HAVE_DUNE_FEM +using GridViewFem = Dune::Fem::GridPart2GridViewImpl< + Dune::Fem::AdaptiveLeafGridPart< + Dune::CpGrid, + Dune::PartitionIteratorType(4), + false>>; +using MapperFem = Dune::MultipleCodimMultipleGeomTypeMapper; +INSTANCE_COMP(GridViewFem, MapperFem) +#endif // HAVE_DUNE_FEM + } // namespace DeckDependent namespace Details {