mirror of
https://github.com/OPM/opm-simulators.git
synced 2026-09-05 04:40:19 -05:00
add vapwat to gaswater simulators and output molfractions YMFWAT
This commit is contained in:
@@ -846,6 +846,15 @@ assignToSolution(data::Solution& sol)
|
|||||||
sol.insert("XMFCO2", UnitSystem::measure::identity, std::move(mfrac), data::TargetType::RESTART_AUXILIARY);
|
sol.insert("XMFCO2", UnitSystem::measure::identity, std::move(mfrac), data::TargetType::RESTART_AUXILIARY);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (eclState_.runspec().co2Storage() && !rvw_.empty()) {
|
||||||
|
std::vector<double> mfrac(rvw_.size(), 0.0);
|
||||||
|
const auto& pvtnum = eclState_.fieldProps().get_int("PVTNUM");
|
||||||
|
for (size_t i = 0; i < rvw_.size(); ++i) {
|
||||||
|
mfrac[i] = FluidSystem::convertXgWToxgW(FluidSystem::convertRvwToXgW(rvw_[i], pvtnum[i]-1), pvtnum[i]-1);
|
||||||
|
}
|
||||||
|
sol.insert("YMFWAT", UnitSystem::measure::identity, std::move(mfrac), data::TargetType::RESTART_AUXILIARY);
|
||||||
|
}
|
||||||
|
|
||||||
// Fluid in place
|
// Fluid in place
|
||||||
if (this->outputFipRestart_) {
|
if (this->outputFipRestart_) {
|
||||||
for (const auto& phase : Inplace::phases()) {
|
for (const auto& phase : Inplace::phases()) {
|
||||||
|
|||||||
@@ -53,6 +53,11 @@ struct EnableDisgasInWater<TypeTag, TTag::EclFlowGasWaterDissolutionProblem> {
|
|||||||
static constexpr bool value = true;
|
static constexpr bool value = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
template<class TypeTag>
|
||||||
|
struct EnableEvaporation<TypeTag, TTag::EclFlowGasWaterDissolutionProblem> {
|
||||||
|
static constexpr bool value = true;
|
||||||
|
};
|
||||||
|
|
||||||
//! The indices required by the model
|
//! The indices required by the model
|
||||||
template<class TypeTag>
|
template<class TypeTag>
|
||||||
struct Indices<TypeTag, TTag::EclFlowGasWaterDissolutionProblem>
|
struct Indices<TypeTag, TTag::EclFlowGasWaterDissolutionProblem>
|
||||||
|
|||||||
@@ -53,6 +53,11 @@ struct EnableDisgasInWater<TypeTag, TTag::EclFlowGasWaterDissolutionDiffuseProbl
|
|||||||
static constexpr bool value = true;
|
static constexpr bool value = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
template<class TypeTag>
|
||||||
|
struct EnableEvaporation<TypeTag, TTag::EclFlowGasWaterDissolutionDiffuseProblem> {
|
||||||
|
static constexpr bool value = true;
|
||||||
|
};
|
||||||
|
|
||||||
//! The indices required by the model
|
//! The indices required by the model
|
||||||
template<class TypeTag>
|
template<class TypeTag>
|
||||||
struct Indices<TypeTag, TTag::EclFlowGasWaterDissolutionDiffuseProblem>
|
struct Indices<TypeTag, TTag::EclFlowGasWaterDissolutionDiffuseProblem>
|
||||||
|
|||||||
Reference in New Issue
Block a user