diff --git a/CMakeLists.txt b/CMakeLists.txt index 03efb9ecf..53bce9ec5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -442,6 +442,16 @@ opm_add_test(flow_blackoil_dunecpr DEPENDS opmsimulators LIBRARIES opmsimulators) +opm_add_test(flow_brine_thermal + ONLY_COMPILE + DEFAULT_ENABLE_IF ${FLOW_VARIANTS_DEFAULT_ENABLE_IF} + SOURCES + flow/flow_brine_thermal.cpp + $ + EXE_NAME flow_brine_thermal + DEPENDS opmsimulators + LIBRARIES opmsimulators) + opm_add_test(flow_onephase ONLY_COMPILE DEFAULT_ENABLE_IF ${FLOW_VARIANTS_DEFAULT_ENABLE_IF} diff --git a/flow/flow_brine_thermal.cpp b/flow/flow_brine_thermal.cpp new file mode 100644 index 000000000..f762ad0f8 --- /dev/null +++ b/flow/flow_brine_thermal.cpp @@ -0,0 +1,50 @@ +/* + This file is part of the Open Porous Media project (OPM). + + OPM is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OPM is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with OPM. If not, see . +*/ +#include "config.h" + +#include +#include + +#if HAVE_DUNE_FEM +#include +#else +#include +#endif + +namespace Opm { +namespace Properties { +namespace TTag { +struct EclFlowBrineProblem { + using InheritsFrom = std::tuple; +}; +} +template +struct EnableBrine { + static constexpr bool value = true; +}; +template +struct EnableEnergy { + static constexpr bool value = true; +}; +}} + +int main(int argc, char** argv) +{ + using TypeTag = Opm::Properties::TTag::EclFlowBrineProblem; + auto mainObject = Opm::Main(argc, argv); + return mainObject.runStatic(); +} diff --git a/opm/simulators/wells/MultisegmentWellEval.cpp b/opm/simulators/wells/MultisegmentWellEval.cpp index afa00fb42..33ef13e54 100644 --- a/opm/simulators/wells/MultisegmentWellEval.cpp +++ b/opm/simulators/wells/MultisegmentWellEval.cpp @@ -1874,5 +1874,6 @@ INSTANCE(BlackOilDefaultIndexTraits,BlackOilIndices<0u,1u,0u,0u,false,false,0u,0 INSTANCE(BlackOilDefaultIndexTraits,BlackOilIndices<0u,0u,1u,0u,false,false,0u,0u>) INSTANCE(BlackOilDefaultIndexTraits,BlackOilIndices<0u,0u,0u,1u,false,false,0u,0u>) INSTANCE(BlackOilDefaultIndexTraits,BlackOilIndices<0u,0u,0u,0u,false,false,1u,0u>) +INSTANCE(BlackOilDefaultIndexTraits,BlackOilIndices<0u,0u,0u,1u,false,true,0u,0u>) } // namespace Opm diff --git a/opm/simulators/wells/StandardWellEval.cpp b/opm/simulators/wells/StandardWellEval.cpp index f91993d2f..8acf59812 100644 --- a/opm/simulators/wells/StandardWellEval.cpp +++ b/opm/simulators/wells/StandardWellEval.cpp @@ -1132,5 +1132,6 @@ INSTANCE(BlackOilDefaultIndexTraits,BlackOilIndices<0u,1u,0u,0u,false,false,0u,0 INSTANCE(BlackOilDefaultIndexTraits,BlackOilIndices<0u,0u,1u,0u,false,false,0u,0u>) INSTANCE(BlackOilDefaultIndexTraits,BlackOilIndices<0u,0u,0u,1u,false,false,0u,0u>) INSTANCE(BlackOilDefaultIndexTraits,BlackOilIndices<0u,0u,0u,1u,false,false,1u,0u>) +INSTANCE(BlackOilDefaultIndexTraits,BlackOilIndices<0u,0u,0u,1u,false,true,0u,0u>) } diff --git a/opm/simulators/wells/TargetCalculator.cpp b/opm/simulators/wells/TargetCalculator.cpp index 6a677b486..38d645863 100644 --- a/opm/simulators/wells/TargetCalculator.cpp +++ b/opm/simulators/wells/TargetCalculator.cpp @@ -256,6 +256,7 @@ INSTANCE_TARGET_CALCULATOR(DenseAd::Evaluation) INSTANCE_TARGET_CALCULATOR(DenseAd::Evaluation) INSTANCE_TARGET_CALCULATOR(DenseAd::Evaluation) INSTANCE_TARGET_CALCULATOR(DenseAd::Evaluation) +INSTANCE_TARGET_CALCULATOR(DenseAd::Evaluation) INSTANCE_TARGET_CALCULATOR(DenseAd::Evaluation) INSTANCE_TARGET_CALCULATOR(DenseAd::Evaluation) INSTANCE_TARGET_CALCULATOR(DenseAd::Evaluation) diff --git a/opm/simulators/wells/VFPHelpers.cpp b/opm/simulators/wells/VFPHelpers.cpp index 6b16eb70d..0d899f6cc 100644 --- a/opm/simulators/wells/VFPHelpers.cpp +++ b/opm/simulators/wells/VFPHelpers.cpp @@ -651,6 +651,8 @@ INSTANCE(DenseAd::Evaluation) INSTANCE(DenseAd::Evaluation) INSTANCE(DenseAd::Evaluation) INSTANCE(DenseAd::Evaluation) +INSTANCE(DenseAd::Evaluation) + } // namespace detail } // namespace Opm diff --git a/opm/simulators/wells/VFPInjProperties.cpp b/opm/simulators/wells/VFPInjProperties.cpp index 60ae9e5f3..12a2d9e95 100644 --- a/opm/simulators/wells/VFPInjProperties.cpp +++ b/opm/simulators/wells/VFPInjProperties.cpp @@ -131,5 +131,6 @@ INSTANCE(DenseAd::Evaluation) INSTANCE(DenseAd::Evaluation) INSTANCE(DenseAd::Evaluation) INSTANCE(DenseAd::Evaluation) +INSTANCE(DenseAd::Evaluation) } //Namespace Opm diff --git a/opm/simulators/wells/VFPProdProperties.cpp b/opm/simulators/wells/VFPProdProperties.cpp index 8decc6053..df7145468 100644 --- a/opm/simulators/wells/VFPProdProperties.cpp +++ b/opm/simulators/wells/VFPProdProperties.cpp @@ -189,5 +189,6 @@ INSTANCE(DenseAd::Evaluation) INSTANCE(DenseAd::Evaluation) INSTANCE(DenseAd::Evaluation) INSTANCE(DenseAd::Evaluation) +INSTANCE(DenseAd::Evaluation) } diff --git a/opm/simulators/wells/WellInterfaceEval.cpp b/opm/simulators/wells/WellInterfaceEval.cpp index 037d83862..d335a97f6 100644 --- a/opm/simulators/wells/WellInterfaceEval.cpp +++ b/opm/simulators/wells/WellInterfaceEval.cpp @@ -541,6 +541,7 @@ INSTANCE_METHODS(FluidSys, DenseAd::Evaluation) INSTANCE_METHODS(FluidSys, DenseAd::Evaluation) INSTANCE_METHODS(FluidSys, DenseAd::Evaluation) INSTANCE_METHODS(FluidSys, DenseAd::Evaluation) +INSTANCE_METHODS(FluidSys, DenseAd::Evaluation) INSTANCE_METHODS(FluidSys, DenseAd::Evaluation) INSTANCE_METHODS(FluidSys, DenseAd::Evaluation) INSTANCE_METHODS(FluidSys, DenseAd::Evaluation) diff --git a/opm/simulators/wells/WellInterfaceIndices.cpp b/opm/simulators/wells/WellInterfaceIndices.cpp index 30a18b7bd..f544dd4bd 100644 --- a/opm/simulators/wells/WellInterfaceIndices.cpp +++ b/opm/simulators/wells/WellInterfaceIndices.cpp @@ -141,5 +141,6 @@ INSTANCE(BlackOilDefaultIndexTraits,BlackOilIndices<0u,0u,1u,0u,false,false,0u,0 INSTANCE(BlackOilDefaultIndexTraits,BlackOilIndices<0u,0u,0u,1u,false,false,0u,0u>) INSTANCE(BlackOilDefaultIndexTraits,BlackOilIndices<0u,0u,0u,1u,false,false,1u,0u>) INSTANCE(BlackOilDefaultIndexTraits,BlackOilIndices<0u,0u,0u,0u,false,false,1u,0u>) +INSTANCE(BlackOilDefaultIndexTraits,BlackOilIndices<0u,0u,0u,1u,false,true,0u,0u>) } // namespace Opm