mirror of
https://github.com/OPM/opm-simulators.git
synced 2024-11-21 16:57:25 -06:00
cosmetics
This commit is contained in:
parent
cea13e4b96
commit
23e9bc5ebc
@ -42,14 +42,20 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct Co2InjectionFlashEcfvProblem { using InheritsFrom = std::tuple<Co2InjectionBaseProblem, FlashModel>; };
|
||||
|
||||
struct Co2InjectionFlashEcfvProblem
|
||||
{ using InheritsFrom = std::tuple<Co2InjectionBaseProblem, FlashModel>; };
|
||||
|
||||
} // end namespace TTag
|
||||
|
||||
template<class TypeTag>
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionFlashEcfvProblem> { using type = TTag::EcfvDiscretization; };
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionFlashEcfvProblem>
|
||||
{ using type = TTag::EcfvDiscretization; };
|
||||
|
||||
// use automatic differentiation for this simulator
|
||||
template<class TypeTag>
|
||||
struct LocalLinearizerSplice<TypeTag, TTag::Co2InjectionFlashEcfvProblem> { using type = TTag::AutoDiffLocalLinearizer; };
|
||||
struct LocalLinearizerSplice<TypeTag, TTag::Co2InjectionFlashEcfvProblem>
|
||||
{ using type = TTag::AutoDiffLocalLinearizer; };
|
||||
|
||||
// use the flash solver adapted to the CO2 injection problem
|
||||
template<class TypeTag>
|
||||
@ -62,7 +68,8 @@ struct FlashSolver<TypeTag, TTag::Co2InjectionFlashEcfvProblem>
|
||||
// else we increase the tolerance of the Newton solver
|
||||
#if HAVE_QUAD
|
||||
template<class TypeTag>
|
||||
struct Scalar<TypeTag, TTag::Co2InjectionFlashEcfvProblem> { using type = quad; };
|
||||
struct Scalar<TypeTag, TTag::Co2InjectionFlashEcfvProblem>
|
||||
{ using type = quad; };
|
||||
#else
|
||||
template<class TypeTag>
|
||||
struct NewtonTolerance<TypeTag, TTag::Co2InjectionFlashEcfvProblem>
|
||||
|
@ -39,17 +39,23 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct Co2InjectionFlashNiEcfvProblem { using InheritsFrom = std::tuple<Co2InjectionBaseProblem, FlashModel>; };
|
||||
|
||||
struct Co2InjectionFlashNiEcfvProblem
|
||||
{ using InheritsFrom = std::tuple<Co2InjectionBaseProblem, FlashModel>; };
|
||||
|
||||
} // end namespace TTag
|
||||
template<class TypeTag>
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionFlashNiEcfvProblem> { using type = TTag::EcfvDiscretization; };
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionFlashNiEcfvProblem>
|
||||
{ using type = TTag::EcfvDiscretization; };
|
||||
|
||||
template<class TypeTag>
|
||||
struct EnableEnergy<TypeTag, TTag::Co2InjectionFlashNiEcfvProblem> { static constexpr bool value = true; };
|
||||
struct EnableEnergy<TypeTag, TTag::Co2InjectionFlashNiEcfvProblem>
|
||||
{ static constexpr bool value = true; };
|
||||
|
||||
//! Use automatic differentiation to linearize the system of PDEs
|
||||
template<class TypeTag>
|
||||
struct LocalLinearizerSplice<TypeTag, TTag::Co2InjectionFlashNiEcfvProblem> { using type = TTag::AutoDiffLocalLinearizer; };
|
||||
struct LocalLinearizerSplice<TypeTag, TTag::Co2InjectionFlashNiEcfvProblem>
|
||||
{ using type = TTag::AutoDiffLocalLinearizer; };
|
||||
|
||||
// use the CO2 injection problem adapted flash solver
|
||||
template<class TypeTag>
|
||||
@ -62,7 +68,8 @@ struct FlashSolver<TypeTag, TTag::Co2InjectionFlashNiEcfvProblem>
|
||||
// else we increase the tolerance of the Newton solver
|
||||
#if HAVE_QUAD
|
||||
template<class TypeTag>
|
||||
struct Scalar<TypeTag, TTag::Co2InjectionFlashNiEcfvProblem> { using type = quad; };
|
||||
struct Scalar<TypeTag, TTag::Co2InjectionFlashNiEcfvProblem>
|
||||
{ using type = quad; };
|
||||
#else
|
||||
template<class TypeTag>
|
||||
struct NewtonTolerance<TypeTag, TTag::Co2InjectionFlashNiEcfvProblem>
|
||||
|
@ -39,13 +39,19 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct Co2InjectionFlashNiVcfvProblem { using InheritsFrom = std::tuple<Co2InjectionBaseProblem, FlashModel>; };
|
||||
|
||||
struct Co2InjectionFlashNiVcfvProblem
|
||||
{ using InheritsFrom = std::tuple<Co2InjectionBaseProblem, FlashModel>; };
|
||||
|
||||
} // end namespace TTag
|
||||
template<class TypeTag>
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionFlashNiVcfvProblem> { using type = TTag::VcfvDiscretization; };
|
||||
|
||||
template<class TypeTag>
|
||||
struct EnableEnergy<TypeTag, TTag::Co2InjectionFlashNiVcfvProblem> { static constexpr bool value = true; };
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionFlashNiVcfvProblem>
|
||||
{ using type = TTag::VcfvDiscretization; };
|
||||
|
||||
template<class TypeTag>
|
||||
struct EnableEnergy<TypeTag, TTag::Co2InjectionFlashNiVcfvProblem>
|
||||
{ static constexpr bool value = true; };
|
||||
|
||||
// use the CO2 injection problem adapted flash solver
|
||||
template<class TypeTag>
|
||||
@ -58,7 +64,8 @@ struct FlashSolver<TypeTag, TTag::Co2InjectionFlashNiVcfvProblem>
|
||||
// else we increase the tolerance of the Newton solver
|
||||
#if HAVE_QUAD
|
||||
template<class TypeTag>
|
||||
struct Scalar<TypeTag, TTag::Co2InjectionFlashNiVcfvProblem> { using type = quad; };
|
||||
struct Scalar<TypeTag, TTag::Co2InjectionFlashNiVcfvProblem>
|
||||
{ using type = quad; };
|
||||
#else
|
||||
template<class TypeTag>
|
||||
struct NewtonTolerance<TypeTag, TTag::Co2InjectionFlashNiVcfvProblem>
|
||||
|
@ -42,10 +42,14 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct Co2InjectionFlashVcfvProblem { using InheritsFrom = std::tuple<Co2InjectionBaseProblem, FlashModel>; };
|
||||
|
||||
struct Co2InjectionFlashVcfvProblem
|
||||
{ using InheritsFrom = std::tuple<Co2InjectionBaseProblem, FlashModel>; };
|
||||
|
||||
} // end namespace TTag
|
||||
template<class TypeTag>
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionFlashVcfvProblem> { using type = TTag::VcfvDiscretization; };
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionFlashVcfvProblem>
|
||||
{ using type = TTag::VcfvDiscretization; };
|
||||
|
||||
// use the flash solver adapted to the CO2 injection problem
|
||||
template<class TypeTag>
|
||||
@ -58,7 +62,8 @@ struct FlashSolver<TypeTag, TTag::Co2InjectionFlashVcfvProblem>
|
||||
// else we increase the tolerance of the Newton solver
|
||||
#if HAVE_QUAD
|
||||
template<class TypeTag>
|
||||
struct Scalar<TypeTag, TTag::Co2InjectionFlashVcfvProblem> { using type = quad; };
|
||||
struct Scalar<TypeTag, TTag::Co2InjectionFlashVcfvProblem>
|
||||
{ using type = quad; };
|
||||
#else
|
||||
template<class TypeTag>
|
||||
struct NewtonTolerance<TypeTag, TTag::Co2InjectionFlashVcfvProblem>
|
||||
|
@ -37,7 +37,9 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct Co2InjectionImmiscibleNiEcfvProblem { using InheritsFrom = std::tuple<Co2InjectionBaseProblem, ImmiscibleModel>; };
|
||||
struct Co2InjectionImmiscibleNiEcfvProblem
|
||||
{ using InheritsFrom = std::tuple<Co2InjectionBaseProblem, ImmiscibleModel>; };
|
||||
|
||||
} // end namespace TTag
|
||||
|
||||
template<class TypeTag>
|
||||
@ -45,11 +47,13 @@ struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionImmiscibleNiEcfvPr
|
||||
{ using type = TTag::EcfvDiscretization; };
|
||||
|
||||
template<class TypeTag>
|
||||
struct EnableEnergy<TypeTag, TTag::Co2InjectionImmiscibleNiEcfvProblem> { static constexpr bool value = true; };
|
||||
struct EnableEnergy<TypeTag, TTag::Co2InjectionImmiscibleNiEcfvProblem>
|
||||
{ static constexpr bool value = true; };
|
||||
|
||||
//! Use automatic differentiation to linearize the system of PDEs
|
||||
template<class TypeTag>
|
||||
struct LocalLinearizerSplice<TypeTag, TTag::Co2InjectionImmiscibleNiEcfvProblem> { using type = TTag::AutoDiffLocalLinearizer; };
|
||||
struct LocalLinearizerSplice<TypeTag, TTag::Co2InjectionImmiscibleNiEcfvProblem>
|
||||
{ using type = TTag::AutoDiffLocalLinearizer; };
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
||||
|
@ -43,10 +43,12 @@ struct Co2InjectionImmiscibleNiVcfvProblem
|
||||
} // namespace TTag
|
||||
|
||||
template<class TypeTag>
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionImmiscibleNiVcfvProblem> { using type = TTag::VcfvDiscretization; };
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionImmiscibleNiVcfvProblem>
|
||||
{ using type = TTag::VcfvDiscretization; };
|
||||
|
||||
template<class TypeTag>
|
||||
struct EnableEnergy<TypeTag, TTag::Co2InjectionImmiscibleNiVcfvProblem> { static constexpr bool value = true; };
|
||||
struct EnableEnergy<TypeTag, TTag::Co2InjectionImmiscibleNiVcfvProblem>
|
||||
{ static constexpr bool value = true; };
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
||||
|
@ -44,7 +44,8 @@ struct Co2InjectionImmiscibleVcfvProblem
|
||||
} // namespace TTag
|
||||
|
||||
template<class TypeTag>
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionImmiscibleVcfvProblem> { using type = TTag::VcfvDiscretization; };
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionImmiscibleVcfvProblem>
|
||||
{ using type = TTag::VcfvDiscretization; };
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
||||
|
@ -37,10 +37,15 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct Co2InjectionNcpEcfvProblem { using InheritsFrom = std::tuple<Co2InjectionBaseProblem, NcpModel>; };
|
||||
|
||||
struct Co2InjectionNcpEcfvProblem
|
||||
{ using InheritsFrom = std::tuple<Co2InjectionBaseProblem, NcpModel>; };
|
||||
|
||||
} // end namespace TTag
|
||||
|
||||
template<class TypeTag>
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionNcpEcfvProblem> { using type = TTag::EcfvDiscretization; };
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionNcpEcfvProblem>
|
||||
{ using type = TTag::EcfvDiscretization; };
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
||||
|
@ -37,16 +37,24 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct Co2InjectionNcpNiEcfvProblem { using InheritsFrom = std::tuple<Co2InjectionBaseProblem, NcpModel>; };
|
||||
|
||||
struct Co2InjectionNcpNiEcfvProblem
|
||||
{ using InheritsFrom = std::tuple<Co2InjectionBaseProblem, NcpModel>; };
|
||||
|
||||
} // end namespace TTag
|
||||
|
||||
template<class TypeTag>
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionNcpNiEcfvProblem> { using type = TTag::EcfvDiscretization; };
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionNcpNiEcfvProblem>
|
||||
{ using type = TTag::EcfvDiscretization; };
|
||||
|
||||
template<class TypeTag>
|
||||
struct EnableEnergy<TypeTag, TTag::Co2InjectionNcpNiEcfvProblem> { static constexpr bool value = true; };
|
||||
struct EnableEnergy<TypeTag, TTag::Co2InjectionNcpNiEcfvProblem>
|
||||
{ static constexpr bool value = true; };
|
||||
|
||||
//! Use automatic differentiation to linearize the system of PDEs
|
||||
template<class TypeTag>
|
||||
struct LocalLinearizerSplice<TypeTag, TTag::Co2InjectionNcpNiEcfvProblem> { using type = TTag::AutoDiffLocalLinearizer; };
|
||||
struct LocalLinearizerSplice<TypeTag, TTag::Co2InjectionNcpNiEcfvProblem>
|
||||
{ using type = TTag::AutoDiffLocalLinearizer; };
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
||||
|
@ -37,12 +37,18 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct Co2InjectionNcpNiVcfvProblem { using InheritsFrom = std::tuple<Co2InjectionBaseProblem, NcpModel>; };
|
||||
|
||||
struct Co2InjectionNcpNiVcfvProblem
|
||||
{ using InheritsFrom = std::tuple<Co2InjectionBaseProblem, NcpModel>; };
|
||||
|
||||
} // end namespace TTag
|
||||
template<class TypeTag>
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionNcpNiVcfvProblem> { using type = TTag::VcfvDiscretization; };
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionNcpNiVcfvProblem>
|
||||
{ using type = TTag::VcfvDiscretization; };
|
||||
|
||||
template<class TypeTag>
|
||||
struct EnableEnergy<TypeTag, TTag::Co2InjectionNcpNiVcfvProblem> { static constexpr bool value = true; };
|
||||
struct EnableEnergy<TypeTag, TTag::Co2InjectionNcpNiVcfvProblem>
|
||||
{ static constexpr bool value = true; };
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
||||
|
@ -38,10 +38,15 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct Co2InjectionNcpVcfvProblem { using InheritsFrom = std::tuple<Co2InjectionBaseProblem, NcpModel>; };
|
||||
|
||||
struct Co2InjectionNcpVcfvProblem
|
||||
{ using InheritsFrom = std::tuple<Co2InjectionBaseProblem, NcpModel>; };
|
||||
|
||||
} // end namespace TTag
|
||||
|
||||
template<class TypeTag>
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionNcpVcfvProblem> { using type = TTag::VcfvDiscretization; };
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionNcpVcfvProblem>
|
||||
{ using type = TTag::VcfvDiscretization; };
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
||||
|
@ -37,10 +37,15 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct Co2InjectionPvsEcfvProblem { using InheritsFrom = std::tuple<Co2InjectionBaseProblem, PvsModel>; };
|
||||
|
||||
struct Co2InjectionPvsEcfvProblem
|
||||
{ using InheritsFrom = std::tuple<Co2InjectionBaseProblem, PvsModel>; };
|
||||
|
||||
} // end namespace TTag
|
||||
|
||||
template<class TypeTag>
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionPvsEcfvProblem> { using type = TTag::EcfvDiscretization; };
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionPvsEcfvProblem>
|
||||
{ using type = TTag::EcfvDiscretization; };
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
||||
|
@ -37,17 +37,23 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct Co2InjectionPvsNiEcfvProblem { using InheritsFrom = std::tuple<Co2InjectionBaseProblem, PvsModel>; };
|
||||
|
||||
struct Co2InjectionPvsNiEcfvProblem
|
||||
{ using InheritsFrom = std::tuple<Co2InjectionBaseProblem, PvsModel>; };
|
||||
|
||||
} // end namespace TTag
|
||||
template<class TypeTag>
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionPvsNiEcfvProblem> { using type = TTag::EcfvDiscretization; };
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionPvsNiEcfvProblem>
|
||||
{ using type = TTag::EcfvDiscretization; };
|
||||
|
||||
template<class TypeTag>
|
||||
struct EnableEnergy<TypeTag, TTag::Co2InjectionPvsNiEcfvProblem> { static constexpr bool value = true; };
|
||||
struct EnableEnergy<TypeTag, TTag::Co2InjectionPvsNiEcfvProblem>
|
||||
{ static constexpr bool value = true; };
|
||||
|
||||
//! Use automatic differentiation to linearize the system of PDEs
|
||||
template<class TypeTag>
|
||||
struct LocalLinearizerSplice<TypeTag, TTag::Co2InjectionPvsNiEcfvProblem> { using type = TTag::AutoDiffLocalLinearizer; };
|
||||
struct LocalLinearizerSplice<TypeTag, TTag::Co2InjectionPvsNiEcfvProblem>
|
||||
{ using type = TTag::AutoDiffLocalLinearizer; };
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
||||
|
@ -37,13 +37,19 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct Co2InjectionPvsNiVcfvProblem { using InheritsFrom = std::tuple<Co2InjectionBaseProblem, PvsModel>; };
|
||||
|
||||
struct Co2InjectionPvsNiVcfvProblem
|
||||
{ using InheritsFrom = std::tuple<Co2InjectionBaseProblem, PvsModel>; };
|
||||
|
||||
} // end namespace TTag
|
||||
template<class TypeTag>
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionPvsNiVcfvProblem> { using type = TTag::VcfvDiscretization; };
|
||||
|
||||
template<class TypeTag>
|
||||
struct EnableEnergy<TypeTag, TTag::Co2InjectionPvsNiVcfvProblem> { static constexpr bool value = true; };
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionPvsNiVcfvProblem>
|
||||
{ using type = TTag::VcfvDiscretization; };
|
||||
|
||||
template<class TypeTag>
|
||||
struct EnableEnergy<TypeTag, TTag::Co2InjectionPvsNiVcfvProblem>
|
||||
{ static constexpr bool value = true; };
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
||||
|
@ -38,10 +38,15 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct Co2InjectionPvsVcfvProblem { using InheritsFrom = std::tuple<Co2InjectionBaseProblem, PvsModel>; };
|
||||
|
||||
struct Co2InjectionPvsVcfvProblem
|
||||
{ using InheritsFrom = std::tuple<Co2InjectionBaseProblem, PvsModel>; };
|
||||
|
||||
} // end namespace TTag
|
||||
|
||||
template<class TypeTag>
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionPvsVcfvProblem> { using type = TTag::VcfvDiscretization; };
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::Co2InjectionPvsVcfvProblem>
|
||||
{ using type = TTag::VcfvDiscretization; };
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
||||
|
@ -37,7 +37,9 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct CuvetteProblem { using InheritsFrom = std::tuple<CuvetteBaseProblem, PvsModel>; };
|
||||
struct CuvetteProblem
|
||||
{ using InheritsFrom = std::tuple<CuvetteBaseProblem, PvsModel>; };
|
||||
|
||||
} // end namespace TTag
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
@ -35,7 +35,10 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct GroundWaterProblem { using InheritsFrom = std::tuple<GroundWaterBaseProblem, ImmiscibleSinglePhaseModel>; };
|
||||
|
||||
struct GroundWaterProblem
|
||||
{ using InheritsFrom = std::tuple<GroundWaterBaseProblem, ImmiscibleSinglePhaseModel>; };
|
||||
|
||||
} // end namespace TTag
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
@ -36,7 +36,8 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct InfiltrationProblem { using InheritsFrom = std::tuple<InfiltrationBaseProblem, PvsModel>; };
|
||||
struct InfiltrationProblem
|
||||
{ using InheritsFrom = std::tuple<InfiltrationBaseProblem, PvsModel>; };
|
||||
} // end namespace TTag
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
@ -37,14 +37,19 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct RichardsLensEcfvProblem { using InheritsFrom = std::tuple<RichardsLensProblem>; };
|
||||
struct RichardsLensEcfvProblem
|
||||
{ using InheritsFrom = std::tuple<RichardsLensProblem>; };
|
||||
|
||||
} // end namespace TTag
|
||||
|
||||
template<class TypeTag>
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::RichardsLensEcfvProblem> { using type = TTag::EcfvDiscretization; };
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::RichardsLensEcfvProblem>
|
||||
{ using type = TTag::EcfvDiscretization; };
|
||||
|
||||
//! Use automatic differentiation to linearize the system of PDEs
|
||||
template<class TypeTag>
|
||||
struct LocalLinearizerSplice<TypeTag, TTag::RichardsLensEcfvProblem> { using type = TTag::AutoDiffLocalLinearizer; };
|
||||
struct LocalLinearizerSplice<TypeTag, TTag::RichardsLensEcfvProblem>
|
||||
{ using type = TTag::AutoDiffLocalLinearizer; };
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
||||
|
@ -37,10 +37,15 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct RichardsLensVcfvProblem { using InheritsFrom = std::tuple<RichardsLensProblem>; };
|
||||
|
||||
struct RichardsLensVcfvProblem
|
||||
{ using InheritsFrom = std::tuple<RichardsLensProblem>; };
|
||||
|
||||
} // end namespace TTag
|
||||
|
||||
template<class TypeTag>
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::RichardsLensVcfvProblem> { using type = TTag::VcfvDiscretization; };
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::RichardsLensVcfvProblem>
|
||||
{ using type = TTag::VcfvDiscretization; };
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
||||
|
@ -37,7 +37,9 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct ObstacleProblem { using InheritsFrom = std::tuple<ObstacleBaseProblem, ImmiscibleModel>; };
|
||||
struct ObstacleProblem
|
||||
{ using InheritsFrom = std::tuple<ObstacleBaseProblem, ImmiscibleModel>; };
|
||||
|
||||
} // end namespace TTag
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
@ -37,7 +37,10 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct ObstacleProblem { using InheritsFrom = std::tuple<ObstacleBaseProblem, NcpModel>; };
|
||||
|
||||
struct ObstacleProblem
|
||||
{ using InheritsFrom = std::tuple<ObstacleBaseProblem, NcpModel>; };
|
||||
|
||||
} // end namespace TTag
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
@ -39,12 +39,16 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct ObstacleProblem { using InheritsFrom = std::tuple<ObstacleBaseProblem, PvsModel>; };
|
||||
|
||||
struct ObstacleProblem
|
||||
{ using InheritsFrom = std::tuple<ObstacleBaseProblem, PvsModel>; };
|
||||
|
||||
} // end namespace TTag
|
||||
|
||||
// Verbosity of the PVS model (0=silent, 1=medium, 2=chatty)
|
||||
template<class TypeTag>
|
||||
struct PvsVerbosity<TypeTag, TTag::ObstacleProblem> { static constexpr int value = 1; };
|
||||
struct PvsVerbosity<TypeTag, TTag::ObstacleProblem>
|
||||
{ static constexpr int value = 1; };
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
||||
|
@ -37,12 +37,16 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct OutflowProblem { using InheritsFrom = std::tuple<OutflowBaseProblem, PvsModel>; };
|
||||
|
||||
struct OutflowProblem
|
||||
{ using InheritsFrom = std::tuple<OutflowBaseProblem, PvsModel>; };
|
||||
|
||||
} // end namespace TTag
|
||||
|
||||
// Verbosity of the PVS model (0=silent, 1=medium, 2=chatty)
|
||||
template<class TypeTag>
|
||||
struct PvsVerbosity<TypeTag, TTag::OutflowProblem> { static constexpr int value = 1; };
|
||||
struct PvsVerbosity<TypeTag, TTag::OutflowProblem>
|
||||
{ static constexpr int value = 1; };
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
||||
|
@ -39,16 +39,21 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct ReservoirBlackOilEcfvProblem { using InheritsFrom = std::tuple<ReservoirBaseProblem, BlackOilModel>; };
|
||||
|
||||
struct ReservoirBlackOilEcfvProblem
|
||||
{ using InheritsFrom = std::tuple<ReservoirBaseProblem, BlackOilModel>; };
|
||||
|
||||
} // end namespace TTag
|
||||
|
||||
// Select the element centered finite volume method as spatial discretization
|
||||
template<class TypeTag>
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::ReservoirBlackOilEcfvProblem> { using type = TTag::EcfvDiscretization; };
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::ReservoirBlackOilEcfvProblem>
|
||||
{ using type = TTag::EcfvDiscretization; };
|
||||
|
||||
// Use automatic differentiation to linearize the system of PDEs
|
||||
template<class TypeTag>
|
||||
struct LocalLinearizerSplice<TypeTag, TTag::ReservoirBlackOilEcfvProblem> { using type = TTag::AutoDiffLocalLinearizer; };
|
||||
struct LocalLinearizerSplice<TypeTag, TTag::ReservoirBlackOilEcfvProblem>
|
||||
{ using type = TTag::AutoDiffLocalLinearizer; };
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
||||
|
@ -38,12 +38,16 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct ReservoirBlackOilVcfvProblem { using InheritsFrom = std::tuple<ReservoirBaseProblem, BlackOilModel>; };
|
||||
|
||||
struct ReservoirBlackOilVcfvProblem
|
||||
{ using InheritsFrom = std::tuple<ReservoirBaseProblem, BlackOilModel>; };
|
||||
|
||||
} // end namespace TTag
|
||||
|
||||
// Select the vertex centered finite volume method as spatial discretization
|
||||
template<class TypeTag>
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::ReservoirBlackOilVcfvProblem> { using type = TTag::VcfvDiscretization; };
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::ReservoirBlackOilVcfvProblem>
|
||||
{ using type = TTag::VcfvDiscretization; };
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
||||
|
@ -38,16 +38,21 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct ReservoirNcpEcfvProblem { using InheritsFrom = std::tuple<ReservoirBaseProblem, NcpModel>; };
|
||||
|
||||
struct ReservoirNcpEcfvProblem
|
||||
{ using InheritsFrom = std::tuple<ReservoirBaseProblem, NcpModel>; };
|
||||
|
||||
} // end namespace TTag
|
||||
|
||||
// Select the element centered finite volume method as spatial discretization
|
||||
template<class TypeTag>
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::ReservoirNcpEcfvProblem> { using type = TTag::EcfvDiscretization; };
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::ReservoirNcpEcfvProblem>
|
||||
{ using type = TTag::EcfvDiscretization; };
|
||||
|
||||
//! use automatic differentiation to linearize the system of PDEs
|
||||
template<class TypeTag>
|
||||
struct LocalLinearizerSplice<TypeTag, TTag::ReservoirNcpEcfvProblem> { using type = TTag::AutoDiffLocalLinearizer; };
|
||||
struct LocalLinearizerSplice<TypeTag, TTag::ReservoirNcpEcfvProblem>
|
||||
{ using type = TTag::AutoDiffLocalLinearizer; };
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
||||
|
@ -39,12 +39,16 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct ReservoirNcpVcfvProblem { using InheritsFrom = std::tuple<ReservoirBaseProblem, NcpModel>; };
|
||||
|
||||
struct ReservoirNcpVcfvProblem
|
||||
{ using InheritsFrom = std::tuple<ReservoirBaseProblem, NcpModel>; };
|
||||
|
||||
} // end namespace TTag
|
||||
|
||||
// Select the vertex centered finite volume method as spatial discretization
|
||||
template<class TypeTag>
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::ReservoirNcpVcfvProblem> { using type = TTag::VcfvDiscretization; };
|
||||
struct SpatialDiscretizationSplice<TypeTag, TTag::ReservoirNcpVcfvProblem>
|
||||
{ using type = TTag::VcfvDiscretization; };
|
||||
|
||||
// reduce the base epsilon for the finite difference method to 10^-11. for some reason
|
||||
// the simulator converges better with this. (TODO: use automatic differentiation?)
|
||||
|
@ -35,11 +35,13 @@ namespace Opm::Properties {
|
||||
|
||||
// Create new type tags
|
||||
namespace TTag {
|
||||
struct WaterAirProblem { using InheritsFrom = std::tuple<WaterAirBaseProblem, PvsModel>; };
|
||||
struct WaterAirProblem
|
||||
{ using InheritsFrom = std::tuple<WaterAirBaseProblem, PvsModel>; };
|
||||
} // end namespace TTag
|
||||
|
||||
template<class TypeTag>
|
||||
struct EnableEnergy<TypeTag, TTag::WaterAirProblem> { static constexpr bool value = true; };
|
||||
struct EnableEnergy<TypeTag, TTag::WaterAirProblem>
|
||||
{ static constexpr bool value = true; };
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user