Merge pull request #3730 from totto82/addSurfaceDensityOutput

Add info about surface density from CO2STORE model
This commit is contained in:
Bård Skaflestad
2023-11-08 14:59:56 +01:00
committed by GitHub
2 changed files with 10 additions and 9 deletions

View File

@@ -37,14 +37,14 @@ void BrineCo2Pvt<Scalar>::
initFromState(const EclipseState& eclState, const Schedule&)
{
if (!eclState.getTableManager().getDensityTable().empty()) {
OpmLog::warning("CO2STOR is enabled but DENSITY is in the deck. \n"
OpmLog::warning("CO2STORE is enabled but DENSITY is in the deck. \n"
"The surface density is computed based on CO2-BRINE "
"PVT at standard conditions (STCOND) and DENSITY is ignored");
}
if (eclState.getTableManager().hasTables("PVDO") ||
!eclState.getTableManager().getPvtoTables().empty()) {
OpmLog::warning("CO2STOR is enabled but PVDO or PVTO is in the deck.\n"
OpmLog::warning("CO2STORE is enabled but PVDO or PVTO is in the deck.\n"
"BRINE PVT properties are computed based on the Hu et al. "
"pvt model and PVDO/PVTO input is ignored.");
}
@@ -71,6 +71,13 @@ initFromState(const EclipseState& eclState, const Schedule&)
brineReferenceDensity_[regionIdx] = Brine::liquidDensity(T_ref, P_ref, salinity_[regionIdx], extrapolate);
co2ReferenceDensity_[regionIdx] = CO2::gasDensity(T_ref, P_ref, extrapolate);
OpmLog::info("CO2STORE is enabled. \n The surface density of CO2 is " + std::to_string(co2ReferenceDensity_[regionIdx])
+ "kg/m3 \n The surface density of Brine is " + std::to_string(brineReferenceDensity_[regionIdx])
+ "kg/m3"
+ "\n The surface densities are computed using the reference pressure ( " + std::to_string(P_ref)
+ "Pa) and the reference temperature (" + std::to_string(T_ref) + "K)."
);
}
template class BrineCo2Pvt<double>;

View File

@@ -39,15 +39,9 @@ initFromState(const EclipseState& eclState, const Schedule&)
setEnableVaporizationWater(eclState.getSimulationConfig().hasVAPOIL() || eclState.getSimulationConfig().hasVAPWAT());
if (!eclState.getTableManager().getDensityTable().empty()) {
OpmLog::warning("CO2STOR is enabled but DENSITY is in the deck. \n"
"The surface density is computed based on CO2-BRINE "
"PVT at standard conditions (STCOND) and DENSITY is ignored");
}
if (eclState.getTableManager().hasTables("PVDG") ||
!eclState.getTableManager().getPvtgTables().empty()) {
OpmLog::warning("CO2STOR is enabled but PVDG or PVTG is in the deck. \n"
OpmLog::warning("CO2STORE is enabled but PVDG or PVTG is in the deck. \n"
"CO2 PVT properties are computed based on the Span-Wagner "
"pvt model and PVDG/PVTG input is ignored.");
}