Merge pull request #1162 from totto82/add_solvent_to_pu

Implement solvent model in flow_ebos
This commit is contained in:
Atgeirr Flø Rasmussen 2017-05-19 10:02:59 +02:00 committed by GitHub
commit 3f403a8470
4 changed files with 16 additions and 0 deletions

View File

@ -38,6 +38,7 @@ namespace Opm
int num_phases; int num_phases;
int phase_used[MaxNumPhases]; int phase_used[MaxNumPhases];
int phase_pos[MaxNumPhases]; int phase_pos[MaxNumPhases];
bool has_solvent;
}; };
/// Check or assign presence of a formed, free phase. Limited to /// Check or assign presence of a formed, free phase. Limited to

View File

@ -66,6 +66,12 @@ namespace Opm
OPM_THROW(std::runtime_error, "Cannot handle cases with no OIL, i.e. water-gas systems."); OPM_THROW(std::runtime_error, "Cannot handle cases with no OIL, i.e. water-gas systems.");
} }
// Add solvent info
pu.has_solvent = false;
if (phase.active(Phase::SOLVENT)) {
pu.has_solvent = true;
}
return pu; return pu;
} }
@ -112,6 +118,12 @@ namespace Opm
OPM_THROW(std::runtime_error, "Cannot handle cases with no OIL, i.e. water-gas systems."); OPM_THROW(std::runtime_error, "Cannot handle cases with no OIL, i.e. water-gas systems.");
} }
// Add solvent info
pu.has_solvent = false;
if (phase.active(Phase::SOLVENT)) {
pu.has_solvent = true;
}
return pu; return pu;
} }

View File

@ -11,6 +11,7 @@ using namespace Opm;
const std::string BlackoilState::GASOILRATIO = "GASOILRATIO"; const std::string BlackoilState::GASOILRATIO = "GASOILRATIO";
const std::string BlackoilState::RV = "RV"; const std::string BlackoilState::RV = "RV";
const std::string BlackoilState::SURFACEVOL = "SURFACEVOL"; const std::string BlackoilState::SURFACEVOL = "SURFACEVOL";
const std::string BlackoilState::SSOL = "SSOL";
BlackoilState::BlackoilState( size_t num_cells , size_t num_faces , size_t num_phases) BlackoilState::BlackoilState( size_t num_cells , size_t num_faces , size_t num_phases)
@ -19,6 +20,7 @@ BlackoilState::BlackoilState( size_t num_cells , size_t num_faces , size_t num_p
registerCellData( GASOILRATIO , 1 ); registerCellData( GASOILRATIO , 1 );
registerCellData( RV, 1 ); registerCellData( RV, 1 );
registerCellData( SURFACEVOL, num_phases ); registerCellData( SURFACEVOL, num_phases );
registerCellData( SSOL , 1 );
setBlackoilStateReferencePointers(); setBlackoilStateReferencePointers();
} }

View File

@ -43,6 +43,7 @@ namespace Opm
static const std::string GASOILRATIO; static const std::string GASOILRATIO;
static const std::string RV; static const std::string RV;
static const std::string SURFACEVOL; static const std::string SURFACEVOL;
static const std::string SSOL;
/// Main constructor setting the sizes for the contained data /// Main constructor setting the sizes for the contained data
/// types. /// types.