From 6df2d8ceeaa5e42480dfb47b9f7127e320b08517 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Atgeirr=20Fl=C3=B8=20Rasmussen?= Date: Mon, 6 Jan 2025 08:44:34 +0100 Subject: [PATCH 1/2] Reduce size of enums to save 15 bytes per cell. --- opm/models/blackoil/blackoilprimaryvariables.hh | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/opm/models/blackoil/blackoilprimaryvariables.hh b/opm/models/blackoil/blackoilprimaryvariables.hh index e9496bad5..ee3a4d047 100644 --- a/opm/models/blackoil/blackoilprimaryvariables.hh +++ b/opm/models/blackoil/blackoilprimaryvariables.hh @@ -43,6 +43,8 @@ #include +#include + namespace Opm::Parameters { template @@ -122,33 +124,33 @@ class BlackOilPrimaryVariables : public FvBasePrimaryVariables static_assert(numComponents == 3, "The black-oil model assumes three components!"); public: - enum class WaterMeaning { + enum class WaterMeaning : std::uint8_t { Sw, // water saturation Rvw, // vaporized water Rsw, // dissolved gas in water Disabled, // The primary variable is not used }; - enum class PressureMeaning { + enum class PressureMeaning : std::uint8_t { Po, // oil pressure Pg, // gas pressure Pw, // water pressure }; - enum class GasMeaning { + enum class GasMeaning : std::uint8_t { Sg, // gas saturation Rs, // dissolved gas in oil Rv, // vapporized oil Disabled, // The primary variable is not used }; - enum class BrineMeaning { + enum class BrineMeaning : std::uint8_t { Cs, // salt concentration Sp, // (precipitated) salt saturation Disabled, // The primary variable is not used }; - enum class SolventMeaning { + enum class SolventMeaning : std::uint8_t { Ss, // solvent saturation Rsolw, // dissolved solvent in water Disabled, // The primary variable is not used From 9ba48c7464ef7c09d2ec23a16faa966cc6911c8a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Atgeirr=20Fl=C3=B8=20Rasmussen?= Date: Mon, 6 Jan 2025 10:32:27 +0100 Subject: [PATCH 2/2] Add missing include. --- opm/simulators/timestepping/AdaptiveTimeStepping_impl.hpp | 1 + 1 file changed, 1 insertion(+) diff --git a/opm/simulators/timestepping/AdaptiveTimeStepping_impl.hpp b/opm/simulators/timestepping/AdaptiveTimeStepping_impl.hpp index 2a20ad35b..ed7cd2e51 100644 --- a/opm/simulators/timestepping/AdaptiveTimeStepping_impl.hpp +++ b/opm/simulators/timestepping/AdaptiveTimeStepping_impl.hpp @@ -26,6 +26,7 @@ #include #include +#include namespace Opm {