mirror of
https://github.com/OPM/opm-simulators.git
synced 2026-10-24 22:57:42 -05:00
Rename flow nonlinear-system files
This commit is contained in:
1 parent
e0b7cdd534
commit
86bcfbd5fa
52 files changed
+156
-156
No files matched your search
@@ -161,7 +161,7 @@ list (APPEND MAIN_SOURCE_FILES
|
||||
opm/simulators/flow/RSTConv.cpp
|
||||
opm/simulators/flow/RegionPhasePVAverage.cpp
|
||||
opm/simulators/flow/SimulatorConvergenceOutput.cpp
|
||||
opm/simulators/flow/SimulatorFullyImplicitBlackoil.cpp
|
||||
opm/simulators/flow/SimulatorFullyImplicit.cpp
|
||||
opm/simulators/flow/SimulatorReportBanners.cpp
|
||||
opm/simulators/flow/SimulatorSerializer.cpp
|
||||
opm/simulators/flow/SolutionContainers.cpp
|
||||
@@ -980,13 +980,13 @@ list (APPEND PUBLIC_HEADER_FILES
|
||||
opm/simulators/flow/Banners.hpp
|
||||
opm/simulators/flow/BaseAquiferModel.hpp
|
||||
opm/simulators/flow/BioeffectsContainer.hpp
|
||||
opm/simulators/flow/BlackoilModel.hpp
|
||||
opm/simulators/flow/BlackoilModel_impl.hpp
|
||||
opm/simulators/flow/NonlinearSystemBlackOilReservoir.hpp
|
||||
opm/simulators/flow/NonlinearSystemBlackOilReservoir_impl.hpp
|
||||
opm/simulators/flow/BlackoilModelConvergenceMonitor.hpp
|
||||
opm/simulators/flow/BlackoilModelNldd.hpp
|
||||
opm/simulators/flow/NonlinearSystemNldd.hpp
|
||||
opm/simulators/flow/BlackoilModelParameters.hpp
|
||||
opm/simulators/flow/BlackoilModelProperties.hpp
|
||||
opm/simulators/flow/BlackoilModelTPSA.hpp
|
||||
opm/simulators/flow/NonlinearSystemBlackOilReservoirTPSA.hpp
|
||||
opm/simulators/flow/CO2H2Container.hpp
|
||||
opm/simulators/flow/CollectDataOnIORank.hpp
|
||||
opm/simulators/flow/CollectDataOnIORank_impl.hpp
|
||||
@@ -1056,8 +1056,8 @@ list (APPEND PUBLIC_HEADER_FILES
|
||||
opm/simulators/flow/RSTConv.hpp
|
||||
opm/simulators/flow/RegionPhasePVAverage.hpp
|
||||
opm/simulators/flow/SimulatorConvergenceOutput.hpp
|
||||
opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp
|
||||
opm/simulators/flow/SimulatorFullyImplicitBlackoil_impl.hpp
|
||||
opm/simulators/flow/SimulatorFullyImplicit.hpp
|
||||
opm/simulators/flow/SimulatorFullyImplicit_impl.hpp
|
||||
opm/simulators/flow/SimulatorReportBanners.hpp
|
||||
opm/simulators/flow/SimulatorSerializer.hpp
|
||||
opm/simulators/flow/SolutionContainers.hpp
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
#include <opm/models/discretization/common/tpfalinearizer.hh>
|
||||
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
namespace Opm::Properties {
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
|
||||
#include <opm/material/common/ResetLocale.hpp>
|
||||
#include <opm/grid/CpGrid.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
|
||||
#include <opm/models/blackoil/blackoilconvectivemixingmodule.hh>
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
#include <opm/models/blackoil/blackoildiffusionmodule.hh>
|
||||
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
namespace Opm {
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
|
||||
#include <opm/material/common/ResetLocale.hpp>
|
||||
#include <opm/grid/CpGrid.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
|
||||
#include <opm/models/blackoil/blackoilconvectivemixingmodule.hh>
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
#include <opm/models/discretization/common/tpfalinearizer.hh>
|
||||
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
namespace Opm::Properties {
|
||||
|
||||
|
||||
@@ -73,7 +73,7 @@ struct Problem<TypeTag, TTag::FlowBlackOilProblemTPSA>
|
||||
|
||||
template <class TypeTag>
|
||||
struct NonlinearSystem<TypeTag, TTag::FlowBlackOilProblemTPSA>
|
||||
{ using type = BlackoilModelTPSA<TypeTag>; };
|
||||
{ using type = NonlinearSystemBlackOilReservoirTPSA<TypeTag>; };
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
||||
|
||||
+1
-1
@@ -30,7 +30,7 @@
|
||||
#include <opm/models/discretization/common/tpfalinearizer.hh>
|
||||
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
namespace Opm::Properties {
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
#include <opm/models/discretization/common/tpfalinearizer.hh>
|
||||
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
namespace Opm::Properties {
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
#include <opm/models/discretization/common/tpfalinearizer.hh>
|
||||
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
namespace Opm::Properties {
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
#include <opm/models/discretization/common/tpfalinearizer.hh>
|
||||
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
namespace Opm::Properties {
|
||||
|
||||
|
||||
+1
-1
@@ -27,7 +27,7 @@
|
||||
#include <opm/models/blackoil/blackoilextbomodules.hh>
|
||||
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
namespace Opm::Properties {
|
||||
|
||||
|
||||
+1
-1
@@ -27,7 +27,7 @@
|
||||
#include <opm/models/blackoil/blackoilfoammodules.hh>
|
||||
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
namespace Opm::Properties {
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
#include <opm/models/discretization/common/tpfalinearizer.hh>
|
||||
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
namespace Opm::Properties {
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
#include <opm/material/common/ResetLocale.hpp>
|
||||
#include <opm/material/thermal/EnergyModuleType.hpp>
|
||||
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
|
||||
#include <opm/models/blackoil/blackoilconvectivemixingmodule.hh>
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
#include <opm/models/discretization/common/tpfalinearizer.hh>
|
||||
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
namespace Opm::Properties {
|
||||
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
#include <opm/models/discretization/common/tpfalinearizer.hh>
|
||||
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
namespace Opm::Properties {
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
#include <opm/models/discretization/common/tpfalinearizer.hh>
|
||||
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
namespace Opm::Properties {
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
#include <opm/models/discretization/common/tpfalinearizer.hh>
|
||||
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
namespace Opm::Properties {
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
#include <opm/models/blackoil/blackoiltwophaseindices.hh>
|
||||
|
||||
#include <opm/grid/CpGrid.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
|
||||
#include <opm/models/blackoil/blackoilconvectivemixingmodule.hh>
|
||||
|
||||
@@ -103,7 +103,7 @@ struct Problem<TypeTag, TTag::FlowGasWaterDissolutionProblemTPSA>
|
||||
|
||||
template <class TypeTag>
|
||||
struct NonlinearSystem<TypeTag, TTag::FlowGasWaterDissolutionProblemTPSA>
|
||||
{ using type = BlackoilModelTPSA<TypeTag>; };
|
||||
{ using type = NonlinearSystemBlackOilReservoirTPSA<TypeTag>; };
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
|
||||
#include <opm/simulators/flow/FlowGasWaterEnergyTypeTag.hpp>
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
namespace Opm {
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
#include <opm/models/discretization/common/tpfalinearizer.hh>
|
||||
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
namespace Opm::Properties {
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
#include <opm/models/discretization/common/tpfalinearizer.hh>
|
||||
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
namespace Opm::Properties {
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
#include <opm/models/blackoil/blackoiltwophaseindices.hh>
|
||||
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
namespace Opm::Properties {
|
||||
|
||||
|
||||
+1
-1
@@ -32,7 +32,7 @@
|
||||
#include <opm/models/discretization/common/tpfalinearizer.hh>
|
||||
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
namespace Opm::Properties {
|
||||
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
#include <opm/models/discretization/common/tpfalinearizer.hh>
|
||||
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
namespace Opm::Properties {
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
#include <opm/models/discretization/common/tpfalinearizer.hh>
|
||||
|
||||
#include <opm/grid/CpGrid.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
|
||||
namespace Opm::Properties {
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
#include <opm/models/blackoil/blackoiltwophaseindices.hh>
|
||||
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
namespace Opm::Properties {
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
#include <opm/models/blackoil/blackoiltwophaseindices.hh>
|
||||
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
namespace Opm::Properties {
|
||||
|
||||
|
||||
@@ -93,7 +93,7 @@ struct Problem<TypeTag, TTag::FlowWaterOnlyProblemTPSA>
|
||||
|
||||
template <class TypeTag>
|
||||
struct NonlinearSystem<TypeTag, TTag::FlowWaterOnlyProblemTPSA>
|
||||
{ using type = BlackoilModelTPSA<TypeTag>; };
|
||||
{ using type = NonlinearSystemBlackOilReservoirTPSA<TypeTag>; };
|
||||
|
||||
} // namespace Opm::Properties
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
#include <opm/models/blackoil/blackoilpolymermodules.hh>
|
||||
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
namespace Opm::Properties {
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
#include <opm/models/blackoil/blackoildiffusionmodule.hh>
|
||||
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
namespace Opm::Properties {
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
#include <opm/models/blackoil/blackoilfoammodules.hh>
|
||||
|
||||
#include <opm/simulators/flow/Main.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
namespace Opm::Properties {
|
||||
|
||||
|
||||
@@ -190,7 +190,7 @@ struct NupcolGroupRateTolerance { static constexpr Scalar value = 0.001; };
|
||||
|
||||
namespace Opm {
|
||||
|
||||
/// Solver parameters for the BlackoilModel.
|
||||
/// Solver parameters for the NonlinearSystemBlackOilReservoir.
|
||||
template <class Scalar>
|
||||
struct BlackoilModelParameters
|
||||
{
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
#include <opm/simulators/flow/Banners.hpp>
|
||||
#include <opm/simulators/flow/FlowUtils.hpp>
|
||||
#include <opm/simulators/flow/NlddReporting.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
#include <opm/simulators/flow/rescoup/ReservoirCouplingEnabled.hpp>
|
||||
|
||||
#if HAVE_DUNE_FEM
|
||||
@@ -74,7 +74,7 @@ namespace Opm {
|
||||
using Scalar = GetPropType<TypeTag, Properties::Scalar>;
|
||||
using FluidSystem = GetPropType<TypeTag, Properties::FluidSystem>;
|
||||
|
||||
using Simulator = SimulatorFullyImplicitBlackoil<TypeTag>;
|
||||
using Simulator = SimulatorFullyImplicit<TypeTag>;
|
||||
|
||||
FlowMain(int argc, char **argv, bool output_cout, bool output_files )
|
||||
: argc_{argc}, argv_{argv},
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
#include <opm/simulators/flow/FIBlackoilModel.hpp>
|
||||
#include <opm/simulators/flow/NewTranFluxModule.hpp>
|
||||
#include <opm/simulators/flow/OutputBlackoilModule.hpp>
|
||||
#include <opm/simulators/flow/BlackoilModel.hpp>
|
||||
#include <opm/simulators/flow/NonlinearSystemBlackOilReservoir.hpp>
|
||||
|
||||
|
||||
#include <tuple>
|
||||
@@ -60,7 +60,7 @@ struct FlowBaseProblemBlackoil {
|
||||
// Set the problem property
|
||||
template<class TypeTag>
|
||||
struct NonlinearSystem<TypeTag, TTag::FlowBaseProblemBlackoil>
|
||||
{ using type = BlackoilModel<TypeTag>; };
|
||||
{ using type = NonlinearSystemBlackOilReservoir<TypeTag>; };
|
||||
|
||||
|
||||
template<class TypeTag>
|
||||
|
||||
+8
-8
@@ -21,13 +21,13 @@
|
||||
along with OPM. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef OPM_BLACKOILMODEL_HEADER_INCLUDED
|
||||
#define OPM_BLACKOILMODEL_HEADER_INCLUDED
|
||||
#ifndef OPM_NONLINEAR_SYSTEM_BLACK_OIL_RESERVOIR_HEADER_INCLUDED
|
||||
#define OPM_NONLINEAR_SYSTEM_BLACK_OIL_RESERVOIR_HEADER_INCLUDED
|
||||
|
||||
#include <opm/simulators/aquifers/BlackoilAquiferModel.hpp>
|
||||
|
||||
#include <opm/simulators/flow/BlackoilModelConvergenceMonitor.hpp>
|
||||
#include <opm/simulators/flow/BlackoilModelNldd.hpp>
|
||||
#include <opm/simulators/flow/NonlinearSystemNldd.hpp>
|
||||
#include <opm/simulators/flow/BlackoilModelProperties.hpp>
|
||||
#include <opm/simulators/flow/FlowProblemBlackoilProperties.hpp>
|
||||
#include <opm/simulators/flow/RSTConv.hpp>
|
||||
@@ -57,7 +57,7 @@ namespace Opm {
|
||||
/// uses an industry-standard TPFA discretization with per-phase
|
||||
/// upwind weighting of mobilities.
|
||||
template <class TypeTag>
|
||||
class BlackoilModel
|
||||
class NonlinearSystemBlackOilReservoir
|
||||
{
|
||||
public:
|
||||
// --------- Types and enums ---------
|
||||
@@ -139,7 +139,7 @@ public:
|
||||
/// \param[in] param parameters
|
||||
/// \param[in] well_model Reference to well model
|
||||
/// \param[in] terminal_output request output to cout/cerr
|
||||
BlackoilModel(Simulator& simulator,
|
||||
NonlinearSystemBlackOilReservoir(Simulator& simulator,
|
||||
const ModelParameters& param,
|
||||
BlackoilWellModel<TypeTag>& well_model,
|
||||
const bool terminal_output);
|
||||
@@ -371,7 +371,7 @@ protected:
|
||||
std::vector<StepReport> convergence_reports_;
|
||||
ComponentName compNames_{};
|
||||
|
||||
std::unique_ptr<BlackoilModelNldd<TypeTag>> nlddSolver_; //!< Non-linear DD solver
|
||||
std::unique_ptr<NonlinearSystemNldd<TypeTag>> nlddSolver_; //!< Non-linear DD solver
|
||||
BlackoilModelConvergenceMonitor<Scalar> conv_monitor_;
|
||||
|
||||
private:
|
||||
@@ -385,6 +385,6 @@ private:
|
||||
|
||||
} // namespace Opm
|
||||
|
||||
#include <opm/simulators/flow/BlackoilModel_impl.hpp>
|
||||
#include <opm/simulators/flow/NonlinearSystemBlackOilReservoir_impl.hpp>
|
||||
|
||||
#endif // OPM_BLACKOILMODEL_HEADER_INCLUDED
|
||||
#endif // OPM_NONLINEAR_SYSTEM_BLACK_OIL_RESERVOIR_HEADER_INCLUDED
|
||||
+8
-8
@@ -22,13 +22,13 @@
|
||||
module for the precise wording of the license and the list of
|
||||
copyright holders.
|
||||
*/
|
||||
#ifndef BLACK_OIL_MODEL_TPSA_HPP
|
||||
#define BLACK_OIL_MODEL_TPSA_HPP
|
||||
#ifndef OPM_NONLINEAR_SYSTEM_BLACK_OIL_RESERVOIR_TPSA_HPP
|
||||
#define OPM_NONLINEAR_SYSTEM_BLACK_OIL_RESERVOIR_TPSA_HPP
|
||||
|
||||
#include <opm/common/ErrorMacros.hpp>
|
||||
#include <opm/common/OpmLog/OpmLog.hpp>
|
||||
|
||||
#include <opm/simulators/flow/BlackoilModel.hpp>
|
||||
#include <opm/simulators/flow/NonlinearSystemBlackOilReservoir.hpp>
|
||||
|
||||
#include <stdexcept>
|
||||
#include <string>
|
||||
@@ -42,9 +42,9 @@ namespace Opm {
|
||||
* \brief Black oil model for coupling Flow simulations with TPSA geomechanics
|
||||
*/
|
||||
template <class TypeTag>
|
||||
class BlackoilModelTPSA : public BlackoilModel<TypeTag>
|
||||
class NonlinearSystemBlackOilReservoirTPSA : public NonlinearSystemBlackOilReservoir<TypeTag>
|
||||
{
|
||||
using ParentType = BlackoilModel<TypeTag>;
|
||||
using ParentType = NonlinearSystemBlackOilReservoir<TypeTag>;
|
||||
|
||||
using Scalar = GetPropType<TypeTag, Properties::Scalar>;
|
||||
using Simulator = GetPropType<TypeTag, Properties::Simulator>;
|
||||
@@ -60,7 +60,7 @@ public:
|
||||
* \param well_model Refenerence to well model
|
||||
* \param terminal_output Bool for terminal output
|
||||
*/
|
||||
explicit BlackoilModelTPSA(Simulator& simulator,
|
||||
explicit NonlinearSystemBlackOilReservoirTPSA(Simulator& simulator,
|
||||
const ModelParameters& param,
|
||||
BlackoilWellModel<TypeTag>& well_model,
|
||||
const bool terminal_output)
|
||||
@@ -223,8 +223,8 @@ public:
|
||||
|
||||
private:
|
||||
int seqIter_{0};
|
||||
}; // class BlackoilModelTPSA
|
||||
}; // class NonlinearSystemBlackOilReservoirTPSA
|
||||
|
||||
} // namespace Opm
|
||||
|
||||
#endif
|
||||
#endif // OPM_NONLINEAR_SYSTEM_BLACK_OIL_RESERVOIR_TPSA_HPP
|
||||
+46
-46
@@ -21,12 +21,12 @@
|
||||
along with OPM. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef OPM_BLACKOILMODEL_IMPL_HEADER_INCLUDED
|
||||
#define OPM_BLACKOILMODEL_IMPL_HEADER_INCLUDED
|
||||
#ifndef OPM_NONLINEAR_SYSTEM_BLACK_OIL_RESERVOIR_IMPL_HEADER_INCLUDED
|
||||
#define OPM_NONLINEAR_SYSTEM_BLACK_OIL_RESERVOIR_IMPL_HEADER_INCLUDED
|
||||
|
||||
#ifndef OPM_BLACKOILMODEL_HEADER_INCLUDED
|
||||
#ifndef OPM_NONLINEAR_SYSTEM_BLACK_OIL_RESERVOIR_HEADER_INCLUDED
|
||||
#include <config.h>
|
||||
#include <opm/simulators/flow/BlackoilModel.hpp>
|
||||
#include <opm/simulators/flow/NonlinearSystemBlackOilReservoir.hpp>
|
||||
#endif
|
||||
|
||||
#include <dune/common/timer.hh>
|
||||
@@ -57,9 +57,9 @@
|
||||
namespace {
|
||||
template <typename TypeTag>
|
||||
std::string_view
|
||||
make_string(const typename Opm::BlackoilModel<TypeTag>::DebugFlags f)
|
||||
make_string(const typename Opm::NonlinearSystemBlackOilReservoir<TypeTag>::DebugFlags f)
|
||||
{
|
||||
using F = typename Opm::BlackoilModel<TypeTag>::DebugFlags;
|
||||
using F = typename Opm::NonlinearSystemBlackOilReservoir<TypeTag>::DebugFlags;
|
||||
|
||||
switch (f) {
|
||||
case F::STRICT: return "Strict";
|
||||
@@ -74,8 +74,8 @@ namespace {
|
||||
namespace Opm {
|
||||
|
||||
template <class TypeTag>
|
||||
BlackoilModel<TypeTag>::
|
||||
BlackoilModel(Simulator& simulator,
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
NonlinearSystemBlackOilReservoir(Simulator& simulator,
|
||||
const ModelParameters& param,
|
||||
BlackoilWellModel<TypeTag>& well_model,
|
||||
const bool terminal_output)
|
||||
@@ -96,7 +96,7 @@ BlackoilModel(Simulator& simulator,
|
||||
if (terminal_output) {
|
||||
OpmLog::info("Using Non-Linear Domain Decomposition solver (nldd).");
|
||||
}
|
||||
nlddSolver_ = std::make_unique<BlackoilModelNldd<TypeTag>>(*this);
|
||||
nlddSolver_ = std::make_unique<NonlinearSystemNldd<TypeTag>>(*this);
|
||||
} else if (param_.nonlinear_solver_ == "newton") {
|
||||
if (terminal_output) {
|
||||
OpmLog::info("Using Newton nonlinear solver.");
|
||||
@@ -109,7 +109,7 @@ BlackoilModel(Simulator& simulator,
|
||||
|
||||
template <class TypeTag>
|
||||
SimulatorReportSingle
|
||||
BlackoilModel<TypeTag>::
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
prepareStep(const SimulatorTimerInterface& timer)
|
||||
{
|
||||
OPM_TIMEFUNCTION();
|
||||
@@ -180,7 +180,7 @@ prepareStep(const SimulatorTimerInterface& timer)
|
||||
|
||||
template <class TypeTag>
|
||||
void
|
||||
BlackoilModel<TypeTag>::
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
initialLinearization(SimulatorReportSingle& report,
|
||||
const int minIter,
|
||||
const int maxIter,
|
||||
@@ -242,7 +242,7 @@ initialLinearization(SimulatorReportSingle& report,
|
||||
template <class TypeTag>
|
||||
template <class NonlinearSolverType>
|
||||
SimulatorReportSingle
|
||||
BlackoilModel<TypeTag>::
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
nonlinearIteration(const SimulatorTimerInterface& timer,
|
||||
NonlinearSolverType& nonlinear_solver)
|
||||
{
|
||||
@@ -277,7 +277,7 @@ nonlinearIteration(const SimulatorTimerInterface& timer,
|
||||
template <class TypeTag>
|
||||
template <class NonlinearSolverType>
|
||||
SimulatorReportSingle
|
||||
BlackoilModel<TypeTag>::
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
nonlinearIterationNewton(const SimulatorTimerInterface& timer,
|
||||
NonlinearSolverType& nonlinear_solver)
|
||||
{
|
||||
@@ -369,7 +369,7 @@ nonlinearIterationNewton(const SimulatorTimerInterface& timer,
|
||||
|
||||
template <class TypeTag>
|
||||
SimulatorReportSingle
|
||||
BlackoilModel<TypeTag>::
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
assembleReservoir(const SimulatorTimerInterface& /* timer */)
|
||||
{
|
||||
// -------- Mass balance equations --------
|
||||
@@ -380,8 +380,8 @@ assembleReservoir(const SimulatorTimerInterface& /* timer */)
|
||||
}
|
||||
|
||||
template <class TypeTag>
|
||||
typename BlackoilModel<TypeTag>::Scalar
|
||||
BlackoilModel<TypeTag>::
|
||||
typename NonlinearSystemBlackOilReservoir<TypeTag>::Scalar
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
relativeChange() const
|
||||
{
|
||||
Scalar resultDelta = 0.0;
|
||||
@@ -468,7 +468,7 @@ relativeChange() const
|
||||
|
||||
template <class TypeTag>
|
||||
void
|
||||
BlackoilModel<TypeTag>::
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
solveJacobianSystem(BVector& x)
|
||||
{
|
||||
auto& jacobian = simulator_.model().linearizer().jacobian().istlMatrix();
|
||||
@@ -530,7 +530,7 @@ solveJacobianSystem(BVector& x)
|
||||
|
||||
template <class TypeTag>
|
||||
void
|
||||
BlackoilModel<TypeTag>::
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
updateSolution(const BVector& dx)
|
||||
{
|
||||
OPM_TIMEBLOCK(updateSolution);
|
||||
@@ -565,7 +565,7 @@ updateSolution(const BVector& dx)
|
||||
|
||||
template <class TypeTag>
|
||||
void
|
||||
BlackoilModel<TypeTag>::
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
prepareStoringSolutionUpdate()
|
||||
{
|
||||
// Init. solution update vector
|
||||
@@ -586,7 +586,7 @@ prepareStoringSolutionUpdate()
|
||||
|
||||
template <class TypeTag>
|
||||
void
|
||||
BlackoilModel<TypeTag>::
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
storeSolutionUpdate(const BVector& dx)
|
||||
{
|
||||
const auto& elemMapper = simulator_.model().elementMapper();
|
||||
@@ -604,8 +604,8 @@ storeSolutionUpdate(const BVector& dx)
|
||||
}
|
||||
|
||||
template <class TypeTag>
|
||||
typename BlackoilModel<TypeTag>::MaxSolutionUpdateData
|
||||
BlackoilModel<TypeTag>::
|
||||
typename NonlinearSystemBlackOilReservoir<TypeTag>::MaxSolutionUpdateData
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
getMaxSolutionUpdate(const std::vector<unsigned>& ixCells)
|
||||
{
|
||||
static constexpr bool enableSolvent = Indices::solventSaturationIdx >= 0;
|
||||
@@ -655,9 +655,9 @@ getMaxSolutionUpdate(const std::vector<unsigned>& ixCells)
|
||||
}
|
||||
|
||||
template <class TypeTag>
|
||||
std::tuple<typename BlackoilModel<TypeTag>::Scalar,
|
||||
typename BlackoilModel<TypeTag>::Scalar>
|
||||
BlackoilModel<TypeTag>::
|
||||
std::tuple<typename NonlinearSystemBlackOilReservoir<TypeTag>::Scalar,
|
||||
typename NonlinearSystemBlackOilReservoir<TypeTag>::Scalar>
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
convergenceReduction(Parallel::Communication comm,
|
||||
const Scalar pvSumLocal,
|
||||
const Scalar numAquiferPvSumLocal,
|
||||
@@ -715,9 +715,9 @@ convergenceReduction(Parallel::Communication comm,
|
||||
}
|
||||
|
||||
template <class TypeTag>
|
||||
std::pair<typename BlackoilModel<TypeTag>::Scalar,
|
||||
typename BlackoilModel<TypeTag>::Scalar>
|
||||
BlackoilModel<TypeTag>::
|
||||
std::pair<typename NonlinearSystemBlackOilReservoir<TypeTag>::Scalar,
|
||||
typename NonlinearSystemBlackOilReservoir<TypeTag>::Scalar>
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
localConvergenceData(std::vector<Scalar>& R_sum,
|
||||
std::vector<Scalar>& maxCoeff,
|
||||
std::vector<Scalar>& B_avg,
|
||||
@@ -755,7 +755,7 @@ localConvergenceData(std::vector<Scalar>& R_sum,
|
||||
B_avg, R_sum, maxCoeff, maxCoeffCell);
|
||||
}
|
||||
|
||||
OPM_END_PARALLEL_TRY_CATCH("BlackoilModel::localConvergenceData() failed: ", grid_.comm());
|
||||
OPM_END_PARALLEL_TRY_CATCH("NonlinearSystemBlackOilReservoir::localConvergenceData() failed: ", grid_.comm());
|
||||
|
||||
// compute local average in terms of global number of elements
|
||||
const int bSize = B_avg.size();
|
||||
@@ -767,8 +767,8 @@ localConvergenceData(std::vector<Scalar>& R_sum,
|
||||
}
|
||||
|
||||
template <class TypeTag>
|
||||
typename BlackoilModel<TypeTag>::CnvPvSplitData
|
||||
BlackoilModel<TypeTag>::
|
||||
typename NonlinearSystemBlackOilReservoir<TypeTag>::CnvPvSplitData
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
characteriseCnvPvSplit(const std::vector<Scalar>& B_avg, const double dt)
|
||||
{
|
||||
OPM_TIMEBLOCK(computeCnvErrorPv);
|
||||
@@ -838,7 +838,7 @@ characteriseCnvPvSplit(const std::vector<Scalar>& B_avg, const double dt)
|
||||
}
|
||||
}
|
||||
|
||||
OPM_END_PARALLEL_TRY_CATCH("BlackoilModel::characteriseCnvPvSplit() failed: ",
|
||||
OPM_END_PARALLEL_TRY_CATCH("NonlinearSystemBlackOilReservoir::characteriseCnvPvSplit() failed: ",
|
||||
this->grid_.comm());
|
||||
|
||||
this->grid_.comm().sum(splitPV .data(), splitPV .size());
|
||||
@@ -849,7 +849,7 @@ characteriseCnvPvSplit(const std::vector<Scalar>& B_avg, const double dt)
|
||||
|
||||
template <class TypeTag>
|
||||
void
|
||||
BlackoilModel<TypeTag>::
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
updateTUNING(const Tuning& tuning)
|
||||
{
|
||||
this->param_.tolerance_cnv_ = tuning.TRGCNV;
|
||||
@@ -862,7 +862,7 @@ updateTUNING(const Tuning& tuning)
|
||||
|
||||
template <class TypeTag>
|
||||
void
|
||||
BlackoilModel<TypeTag>::
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
updateTUNINGDP(const TuningDp& tuning_dp)
|
||||
{
|
||||
// NOTE: If TUNINGDP item is _not_ set it should be 0.0
|
||||
@@ -874,7 +874,7 @@ updateTUNINGDP(const TuningDp& tuning_dp)
|
||||
|
||||
template <class TypeTag>
|
||||
ConvergenceReport
|
||||
BlackoilModel<TypeTag>::
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
getReservoirConvergence(const double reportTime,
|
||||
const double dt,
|
||||
const int maxIter,
|
||||
@@ -1128,7 +1128,7 @@ getReservoirConvergence(const double reportTime,
|
||||
|
||||
template <class TypeTag>
|
||||
void
|
||||
BlackoilModel<TypeTag>::
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
convergencePerCell(const std::vector<Scalar>& B_avg,
|
||||
const double dt,
|
||||
const double tol_cnv,
|
||||
@@ -1167,14 +1167,14 @@ convergencePerCell(const std::vector<Scalar>& B_avg,
|
||||
}
|
||||
++idx;
|
||||
}
|
||||
OPM_END_PARALLEL_TRY_CATCH("BlackoilModel::convergencePerCell() failed: ",
|
||||
OPM_END_PARALLEL_TRY_CATCH("NonlinearSystemBlackOilReservoir::convergencePerCell() failed: ",
|
||||
this->grid_.comm());
|
||||
rst_conv.updateNewton(convNewt);
|
||||
}
|
||||
|
||||
template <class TypeTag>
|
||||
ConvergenceReport
|
||||
BlackoilModel<TypeTag>::
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
getConvergence(const SimulatorTimerInterface& timer,
|
||||
const int maxIter,
|
||||
std::vector<Scalar>& residual_norms)
|
||||
@@ -1197,8 +1197,8 @@ getConvergence(const SimulatorTimerInterface& timer,
|
||||
}
|
||||
|
||||
template <class TypeTag>
|
||||
std::vector<std::vector<typename BlackoilModel<TypeTag>::Scalar> >
|
||||
BlackoilModel<TypeTag>::
|
||||
std::vector<std::vector<typename NonlinearSystemBlackOilReservoir<TypeTag>::Scalar> >
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
computeFluidInPlace(const std::vector<int>& /*fipnum*/) const
|
||||
{
|
||||
OPM_TIMEBLOCK(computeFluidInPlace);
|
||||
@@ -1210,7 +1210,7 @@ computeFluidInPlace(const std::vector<int>& /*fipnum*/) const
|
||||
|
||||
template <class TypeTag>
|
||||
const SimulatorReport&
|
||||
BlackoilModel<TypeTag>::
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
localAccumulatedReports() const
|
||||
{
|
||||
if (!hasNlddSolver()) {
|
||||
@@ -1221,7 +1221,7 @@ localAccumulatedReports() const
|
||||
|
||||
template <class TypeTag>
|
||||
const std::vector<SimulatorReport>&
|
||||
BlackoilModel<TypeTag>::
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
domainAccumulatedReports() const
|
||||
{
|
||||
if (!nlddSolver_)
|
||||
@@ -1231,7 +1231,7 @@ domainAccumulatedReports() const
|
||||
|
||||
template <class TypeTag>
|
||||
void
|
||||
BlackoilModel<TypeTag>::
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
writeNonlinearIterationsPerCell(const std::filesystem::path& odir) const
|
||||
{
|
||||
if (hasNlddSolver()) {
|
||||
@@ -1241,7 +1241,7 @@ writeNonlinearIterationsPerCell(const std::filesystem::path& odir) const
|
||||
|
||||
template <class TypeTag>
|
||||
void
|
||||
BlackoilModel<TypeTag>::
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
writePartitions(const std::filesystem::path& odir) const
|
||||
{
|
||||
if (hasNlddSolver()) {
|
||||
@@ -1268,7 +1268,7 @@ writePartitions(const std::filesystem::path& odir) const
|
||||
template <class TypeTag>
|
||||
template<class FluidState, class Residual>
|
||||
void
|
||||
BlackoilModel<TypeTag>::
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>::
|
||||
getMaxCoeff(const unsigned cell_idx,
|
||||
const IntensiveQuantities& intQuants,
|
||||
const FluidState& fs,
|
||||
@@ -1390,4 +1390,4 @@ getMaxCoeff(const unsigned cell_idx,
|
||||
|
||||
} // namespace Opm
|
||||
|
||||
#endif // OPM_BLACKOILMODEL_IMPL_HEADER_INCLUDED
|
||||
#endif // OPM_NONLINEAR_SYSTEM_BLACK_OIL_RESERVOIR_IMPL_HEADER_INCLUDED
|
||||
+6
-6
@@ -77,11 +77,11 @@
|
||||
|
||||
namespace Opm {
|
||||
|
||||
template<class TypeTag> class BlackoilModel;
|
||||
template<class TypeTag> class NonlinearSystemBlackOilReservoir;
|
||||
|
||||
/// A NLDD implementation for three-phase black oil.
|
||||
template <class TypeTag>
|
||||
class BlackoilModelNldd
|
||||
class NonlinearSystemNldd
|
||||
{
|
||||
public:
|
||||
using ElementContext = GetPropType<TypeTag, Properties::ElementContext>;
|
||||
@@ -92,10 +92,10 @@ public:
|
||||
using ModelParameters = BlackoilModelParameters<Scalar>;
|
||||
using SolutionVector = GetPropType<TypeTag, Properties::SolutionVector>;
|
||||
|
||||
using BVector = typename BlackoilModel<TypeTag>::BVector;
|
||||
using BVector = typename NonlinearSystemBlackOilReservoir<TypeTag>::BVector;
|
||||
using Domain = SubDomain<Grid>;
|
||||
using ISTLSolverType = ISTLSolver<TypeTag>;
|
||||
using Mat = typename BlackoilModel<TypeTag>::Mat;
|
||||
using Mat = typename NonlinearSystemBlackOilReservoir<TypeTag>::Mat;
|
||||
|
||||
static constexpr int numEq = Indices::numEq;
|
||||
|
||||
@@ -103,7 +103,7 @@ public:
|
||||
//! \param model BlackOil model to solve for
|
||||
//! \param param param Model parameters
|
||||
//! \param compNames Names of the solution components
|
||||
explicit BlackoilModelNldd(BlackoilModel<TypeTag>& model)
|
||||
explicit NonlinearSystemNldd(NonlinearSystemBlackOilReservoir<TypeTag>& model)
|
||||
: model_(model)
|
||||
, wellModel_(model.wellModel())
|
||||
, rank_(model_.simulator().vanguard().grid().comm().rank())
|
||||
@@ -1218,7 +1218,7 @@ private:
|
||||
return false;
|
||||
}
|
||||
|
||||
BlackoilModel<TypeTag>& model_; //!< Reference to model
|
||||
NonlinearSystemBlackOilReservoir<TypeTag>& model_; //!< Reference to model
|
||||
BlackoilWellModelNldd<TypeTag> wellModel_; //!< NLDD well model adapter
|
||||
std::vector<Domain> domains_; //!< Vector of subdomains
|
||||
std::vector<std::unique_ptr<Mat>> domain_matrices_; //!< Vector of matrix operator for each subdomain
|
||||
+1
-1
@@ -20,7 +20,7 @@
|
||||
*/
|
||||
|
||||
#include <config.h>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
|
||||
#include <opm/common/OpmLog/OpmLog.hpp>
|
||||
|
||||
+8
-8
@@ -19,8 +19,8 @@
|
||||
along with OPM. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef OPM_SIMULATOR_FULLY_IMPLICIT_BLACKOIL_HEADER_INCLUDED
|
||||
#define OPM_SIMULATOR_FULLY_IMPLICIT_BLACKOIL_HEADER_INCLUDED
|
||||
#ifndef OPM_SIMULATOR_FULLY_IMPLICIT_HEADER_HPP
|
||||
#define OPM_SIMULATOR_FULLY_IMPLICIT_HEADER_HPP
|
||||
|
||||
#include <opm/common/ErrorMacros.hpp>
|
||||
#include <opm/simulators/flow/rescoup/ReservoirCouplingEnabled.hpp>
|
||||
@@ -37,7 +37,7 @@
|
||||
#include <opm/grid/utility/StopWatch.hpp>
|
||||
|
||||
#include <opm/simulators/aquifers/BlackoilAquiferModel.hpp>
|
||||
#include <opm/simulators/flow/BlackoilModel.hpp>
|
||||
#include <opm/simulators/flow/NonlinearSystemBlackOilReservoir.hpp>
|
||||
#include <opm/simulators/flow/BlackoilModelParameters.hpp>
|
||||
#include <opm/simulators/flow/ConvergenceOutputConfiguration.hpp>
|
||||
#include <opm/simulators/flow/ExtraConvergenceOutputThread.hpp>
|
||||
@@ -110,7 +110,7 @@ namespace Opm {
|
||||
* program startup.
|
||||
*/
|
||||
template<class TypeTag>
|
||||
class SimulatorFullyImplicitBlackoil : private SerializableSim
|
||||
class SimulatorFullyImplicit : private SerializableSim
|
||||
{
|
||||
protected:
|
||||
struct MPI_Comm_Deleter;
|
||||
@@ -148,10 +148,10 @@ public:
|
||||
*
|
||||
* \param simulator The surrounding eWoms simulator; observed, not owned.
|
||||
*/
|
||||
explicit SimulatorFullyImplicitBlackoil(Simulator& simulator);
|
||||
explicit SimulatorFullyImplicit(Simulator& simulator);
|
||||
|
||||
/// Ends the convergence-output thread cleanly on all ranks.
|
||||
~SimulatorFullyImplicitBlackoil() override;
|
||||
~SimulatorFullyImplicit() override;
|
||||
|
||||
/** \brief Register all parameters consumed by this class and its
|
||||
* major collaborators.
|
||||
@@ -374,6 +374,6 @@ protected:
|
||||
|
||||
} // namespace Opm
|
||||
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil_impl.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit_impl.hpp>
|
||||
|
||||
#endif // OPM_SIMULATOR_FULLY_IMPLICIT_BLACKOIL_HEADER_INCLUDED
|
||||
#endif // OPM_SIMULATOR_FULLY_IMPLICIT_HEADER_HPP
|
||||
+22
-22
@@ -23,9 +23,9 @@
|
||||
#define OPM_SIMULATOR_FULLY_IMPLICIT_BLACKOIL_IMPL_HEADER_INCLUDED
|
||||
|
||||
// Improve IDE experience
|
||||
#ifndef OPM_SIMULATOR_FULLY_IMPLICIT_BLACKOIL_HEADER_INCLUDED
|
||||
#ifndef OPM_SIMULATOR_FULLY_IMPLICIT_HEADER_HPP
|
||||
#include <config.h>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicitBlackoil.hpp>
|
||||
#include <opm/simulators/flow/SimulatorFullyImplicit.hpp>
|
||||
#endif
|
||||
|
||||
#include <opm/input/eclipse/Units/UnitSystem.hpp>
|
||||
@@ -42,8 +42,8 @@
|
||||
namespace Opm {
|
||||
|
||||
template<class TypeTag>
|
||||
SimulatorFullyImplicitBlackoil<TypeTag>::
|
||||
SimulatorFullyImplicitBlackoil(Simulator& simulator)
|
||||
SimulatorFullyImplicit<TypeTag>::
|
||||
SimulatorFullyImplicit(Simulator& simulator)
|
||||
: simulator_(simulator)
|
||||
, serializer_(*this,
|
||||
FlowGenericVanguard::comm(),
|
||||
@@ -74,8 +74,8 @@ SimulatorFullyImplicitBlackoil(Simulator& simulator)
|
||||
}
|
||||
|
||||
template<class TypeTag>
|
||||
SimulatorFullyImplicitBlackoil<TypeTag>::
|
||||
~SimulatorFullyImplicitBlackoil()
|
||||
SimulatorFullyImplicit<TypeTag>::
|
||||
~SimulatorFullyImplicit()
|
||||
{
|
||||
// Safe to call on all ranks, not just the I/O rank.
|
||||
convergence_output_.endThread();
|
||||
@@ -83,7 +83,7 @@ SimulatorFullyImplicitBlackoil<TypeTag>::
|
||||
|
||||
template<class TypeTag>
|
||||
void
|
||||
SimulatorFullyImplicitBlackoil<TypeTag>::
|
||||
SimulatorFullyImplicit<TypeTag>::
|
||||
registerParameters()
|
||||
{
|
||||
ModelParameters::registerParameters();
|
||||
@@ -98,14 +98,14 @@ registerParameters()
|
||||
#ifdef RESERVOIR_COUPLING_ENABLED
|
||||
template<class TypeTag>
|
||||
SimulatorReport
|
||||
SimulatorFullyImplicitBlackoil<TypeTag>::
|
||||
SimulatorFullyImplicit<TypeTag>::
|
||||
run(SimulatorTimer& timer, int argc, char** argv)
|
||||
{
|
||||
init(timer, argc, argv);
|
||||
#else
|
||||
template<class TypeTag>
|
||||
SimulatorReport
|
||||
SimulatorFullyImplicitBlackoil<TypeTag>::
|
||||
SimulatorFullyImplicit<TypeTag>::
|
||||
run(SimulatorTimer& timer)
|
||||
{
|
||||
init(timer);
|
||||
@@ -142,7 +142,7 @@ run(SimulatorTimer& timer)
|
||||
#ifdef RESERVOIR_COUPLING_ENABLED
|
||||
template<class TypeTag>
|
||||
bool
|
||||
SimulatorFullyImplicitBlackoil<TypeTag>::
|
||||
SimulatorFullyImplicit<TypeTag>::
|
||||
checkRunningAsReservoirCouplingMaster()
|
||||
{
|
||||
for (std::size_t report_step = 0; report_step < this->schedule().size(); ++report_step) {
|
||||
@@ -170,7 +170,7 @@ checkRunningAsReservoirCouplingMaster()
|
||||
#ifdef RESERVOIR_COUPLING_ENABLED
|
||||
template<class TypeTag>
|
||||
void
|
||||
SimulatorFullyImplicitBlackoil<TypeTag>::
|
||||
SimulatorFullyImplicit<TypeTag>::
|
||||
init(const SimulatorTimer& timer, int argc, char** argv)
|
||||
{
|
||||
auto slave_mode = Parameters::Get<Parameters::Slave>();
|
||||
@@ -200,7 +200,7 @@ init(const SimulatorTimer& timer, int argc, char** argv)
|
||||
#else
|
||||
template<class TypeTag>
|
||||
void
|
||||
SimulatorFullyImplicitBlackoil<TypeTag>::
|
||||
SimulatorFullyImplicit<TypeTag>::
|
||||
init(const SimulatorTimer& timer)
|
||||
{
|
||||
#endif
|
||||
@@ -236,7 +236,7 @@ init(const SimulatorTimer& timer)
|
||||
|
||||
template<class TypeTag>
|
||||
void
|
||||
SimulatorFullyImplicitBlackoil<TypeTag>::
|
||||
SimulatorFullyImplicit<TypeTag>::
|
||||
updateTUNING(const Tuning& tuning)
|
||||
{
|
||||
modelParam_.tolerance_cnv_ = tuning.TRGCNV;
|
||||
@@ -252,7 +252,7 @@ updateTUNING(const Tuning& tuning)
|
||||
|
||||
template<class TypeTag>
|
||||
void
|
||||
SimulatorFullyImplicitBlackoil<TypeTag>::
|
||||
SimulatorFullyImplicit<TypeTag>::
|
||||
updateTUNINGDP(const TuningDp& tuning_dp)
|
||||
{
|
||||
// NOTE: If TUNINGDP item is _not_ set it should be 0.0
|
||||
@@ -275,7 +275,7 @@ updateTUNINGDP(const TuningDp& tuning_dp)
|
||||
|
||||
template<class TypeTag>
|
||||
bool
|
||||
SimulatorFullyImplicitBlackoil<TypeTag>::
|
||||
SimulatorFullyImplicit<TypeTag>::
|
||||
runStep(SimulatorTimer& timer)
|
||||
{
|
||||
if (schedule().exitStatus().has_value()) {
|
||||
@@ -491,7 +491,7 @@ runStep(SimulatorTimer& timer)
|
||||
|
||||
template<class TypeTag>
|
||||
SimulatorReport
|
||||
SimulatorFullyImplicitBlackoil<TypeTag>::
|
||||
SimulatorFullyImplicit<TypeTag>::
|
||||
finalize()
|
||||
{
|
||||
// make sure all output is written to disk before run is finished
|
||||
@@ -514,7 +514,7 @@ finalize()
|
||||
template<class TypeTag>
|
||||
template<class Serializer>
|
||||
void
|
||||
SimulatorFullyImplicitBlackoil<TypeTag>::
|
||||
SimulatorFullyImplicit<TypeTag>::
|
||||
serializeOp(Serializer& serializer)
|
||||
{
|
||||
serializer(simulator_);
|
||||
@@ -524,7 +524,7 @@ serializeOp(Serializer& serializer)
|
||||
|
||||
template<class TypeTag>
|
||||
void
|
||||
SimulatorFullyImplicitBlackoil<TypeTag>::
|
||||
SimulatorFullyImplicit<TypeTag>::
|
||||
loadState([[maybe_unused]] HDF5Serializer& serializer,
|
||||
[[maybe_unused]] const std::string& groupName)
|
||||
{
|
||||
@@ -535,7 +535,7 @@ loadState([[maybe_unused]] HDF5Serializer& serializer,
|
||||
|
||||
template<class TypeTag>
|
||||
void
|
||||
SimulatorFullyImplicitBlackoil<TypeTag>::
|
||||
SimulatorFullyImplicit<TypeTag>::
|
||||
saveState([[maybe_unused]] HDF5Serializer& serializer,
|
||||
[[maybe_unused]] const std::string& groupName) const
|
||||
{
|
||||
@@ -546,7 +546,7 @@ saveState([[maybe_unused]] HDF5Serializer& serializer,
|
||||
|
||||
template<class TypeTag>
|
||||
std::array<std::string,5>
|
||||
SimulatorFullyImplicitBlackoil<TypeTag>::
|
||||
SimulatorFullyImplicit<TypeTag>::
|
||||
getHeader() const
|
||||
{
|
||||
std::ostringstream str;
|
||||
@@ -559,8 +559,8 @@ getHeader() const
|
||||
}
|
||||
|
||||
template<class TypeTag>
|
||||
std::unique_ptr<typename SimulatorFullyImplicitBlackoil<TypeTag>::Solver>
|
||||
SimulatorFullyImplicitBlackoil<TypeTag>::
|
||||
std::unique_ptr<typename SimulatorFullyImplicit<TypeTag>::Solver>
|
||||
SimulatorFullyImplicit<TypeTag>::
|
||||
createSolver(WellModel& wellModel)
|
||||
{
|
||||
auto model = std::make_unique<Model>(simulator_,
|
||||
@@ -38,7 +38,7 @@
|
||||
#include <opm/models/tpsa/tpsamodel.hpp>
|
||||
#include <opm/models/tpsa/tpsanewtonmethod.hpp>
|
||||
|
||||
#include <opm/simulators/flow/BlackoilModelTPSA.hpp>
|
||||
#include <opm/simulators/flow/NonlinearSystemBlackOilReservoirTPSA.hpp>
|
||||
#include <opm/simulators/flow/FlowProblemTPSA.hpp>
|
||||
#include <opm/simulators/linalg/matrixblock.hh>
|
||||
#include <opm/simulators/linalg/ISTLSolverTPSA.hpp>
|
||||
|
||||
@@ -571,7 +571,7 @@ getMasterActivationDate_() const
|
||||
}
|
||||
}
|
||||
// NOTE: Consistency between SLAVES and GRUPMAST keywords has already been checked in
|
||||
// init() in SimulatorFullyImplicitBlackoil.hpp
|
||||
// init() in SimulatorFullyImplicit.hpp
|
||||
RCOUP_LOG_THROW(std::runtime_error, "Reservoir coupling: Failed to find master activation time: "
|
||||
"No SLAVES keyword found in schedule");
|
||||
}
|
||||
|
||||
@@ -95,7 +95,7 @@ public:
|
||||
/** \brief Callback invoked at the start of each substep to apply
|
||||
* TUNING, NEXTSTEP (via ACTIONX), and WCYCLE updates.
|
||||
*
|
||||
* Called once by `SimulatorFullyImplicitBlackoil::runStep` at the
|
||||
* Called once by `SimulatorFullyImplicit::runStep` at the
|
||||
* start of a report step, and once per substep inside
|
||||
* \ref SubStepIteration::maybeUpdateTuningAndTimeStep_ (plus equivalent
|
||||
* sites in the reservoir-coupling loops). The callback may adjust
|
||||
@@ -280,7 +280,7 @@ private:
|
||||
* \note The name is a historical artefact: by this point in the
|
||||
* report step, TUNING_CHANGE/TUNINGDP_CHANGE events have
|
||||
* already been cleared by the initial callback invocation
|
||||
* in `SimulatorFullyImplicitBlackoil::runStep`, so what
|
||||
* in `SimulatorFullyImplicit::runStep`, so what
|
||||
* actually runs here is the WCYCLE/NEXTSTEP branch of the
|
||||
* callback.
|
||||
*/
|
||||
@@ -350,7 +350,7 @@ public:
|
||||
*
|
||||
* Splits the report step into a sequence of smaller substeps whose
|
||||
* lengths are chosen adaptively, invoking `solver` once per substep.
|
||||
* Called from `SimulatorFullyImplicitBlackoil::runStep` in place of a
|
||||
* Called from `SimulatorFullyImplicit::runStep` in place of a
|
||||
* direct `Solver::step()` call on the non-adaptive path. The actual
|
||||
* substep loop lives one layer down in \ref SubStepper::run(); this
|
||||
* method just constructs a \ref SubStepper and delegates.
|
||||
|
||||
@@ -525,7 +525,7 @@ maybeModifySuggestedTimeStepAtBeginningOfReportStep_(const double original_time_
|
||||
);
|
||||
}
|
||||
|
||||
// The maybeUpdateTuning_() lambda callback is defined in SimulatorFullyImplicitBlackoil::runStep()
|
||||
// The maybeUpdateTuning_() lambda callback is defined in SimulatorFullyImplicit::runStep()
|
||||
// It has to be called for each substep since TUNING might have been changed for next sub step due
|
||||
// to ACTIONX (via NEXTSTEP) or WCYCLE keywords.
|
||||
template<class TypeTag>
|
||||
@@ -1245,7 +1245,7 @@ maybeUpdateLastSubstepOfSyncTimestep_([[maybe_unused]] const double dt)
|
||||
#endif
|
||||
}
|
||||
|
||||
// The maybeUpdateTuning_() lambda callback is defined in SimulatorFullyImplicitBlackoil::runStep()
|
||||
// The maybeUpdateTuning_() lambda callback is defined in SimulatorFullyImplicit::runStep()
|
||||
// It has to be called for each substep since TUNING might have been changed for next sub step due
|
||||
// to ACTIONX (via NEXTSTEP) or WCYCLE keywords.
|
||||
template<class TypeTag>
|
||||
@@ -1259,7 +1259,7 @@ maybeUpdateTuningAndTimeStep_()
|
||||
// be named maybeUpdateTimeStep_() or similar, since it should not update the tuning. However,
|
||||
// the current definition of the maybeUpdateTuning_() callback is actually calling
|
||||
// adaptiveTimeStepping_->updateTUNING(max_next_tstep, tuning) which is updating the tuning
|
||||
// see SimulatorFullyImplicitBlackoil::runStep() for more details.
|
||||
// see SimulatorFullyImplicit::runStep() for more details.
|
||||
const auto old_value = suggestedNextTimestep_();
|
||||
if (this->substepper_.maybeUpdateTuning_(this->substep_timer_.simulationTimeElapsed(),
|
||||
this->substep_timer_.currentStepLength(),
|
||||
|
||||
@@ -321,7 +321,7 @@ namespace Opm
|
||||
// Note regarding the CNV pore-volume split: We depend on the
|
||||
// fact that the quantities have already been aggregated across
|
||||
// all MPI ranks--see the implementation of member function
|
||||
// BlackoilModel::getReservoirConvergence() for details--and are
|
||||
// NonlinearSystemBlackOilReservoir::getReservoirConvergence() for details--and are
|
||||
// therefore equal on all ranks. Consequently, we simply assign
|
||||
// 'other's values here, if it is non-empty. Empty splits
|
||||
// typically come from well contributions.
|
||||
|
||||
@@ -46,7 +46,7 @@ namespace ReservoirCoupling {
|
||||
/// providing mode queries that work regardless of MPI availability. This eliminates the need
|
||||
/// for #ifdef RESERVOIR_COUPLING_ENABLED guards in consumer code.
|
||||
///
|
||||
/// The proxy does not own the master/slave objects - they are owned by SimulatorFullyImplicitBlackoil.
|
||||
/// The proxy does not own the master/slave objects - they are owned by SimulatorFullyImplicit.
|
||||
/// Pointers are set after construction via setMaster()/setSlave().
|
||||
///
|
||||
/// Master and slave modes are mutually exclusive - setting one clears the other.
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
#include <opm/simulators/flow/rescoup/ReservoirCouplingMaster.hpp>
|
||||
#include <opm/simulators/flow/rescoup/ReservoirCouplingSlave.hpp>
|
||||
#include <opm/simulators/utils/DeferredLogger.hpp>
|
||||
#include <opm/simulators/flow/BlackoilModel.hpp>
|
||||
#include <opm/simulators/flow/NonlinearSystemBlackOilReservoir.hpp>
|
||||
#include <opm/simulators/flow/FlowProblemBlackoil.hpp>
|
||||
|
||||
#if HAVE_DUNE_FEM
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
#include <opm/material/fluidmatrixinteractions/EclMaterialLawManager.hpp>
|
||||
#include <opm/grid/GridHelpers.hpp>
|
||||
#include <opm/simulators/flow/FlowMain.hpp>
|
||||
#include <opm/simulators/flow/BlackoilModel.hpp>
|
||||
#include <opm/simulators/flow/NonlinearSystemBlackOilReservoir.hpp>
|
||||
#include <opm/simulators/flow/FlowProblemBlackoil.hpp>
|
||||
|
||||
#include <opm/models/utils/start.hh>
|
||||
|
||||
Reference in new issue
Block a user