mirror of
https://github.com/OPM/opm-simulators.git
synced 2026-09-05 04:40:19 -05:00
Retag XMFCO2 and YMFWAT Arrays as OPM_EXTENDED
While here, also switch to using std::transform() instead of a raw loop.
This commit is contained in:
@@ -839,21 +839,39 @@ assignToSolution(data::Solution& sol)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (eclState_.runspec().co2Storage() && !rsw_.empty()) {
|
if (eclState_.runspec().co2Storage() && !rsw_.empty()) {
|
||||||
std::vector<double> mfrac(rsw_.size(), 0.0);
|
auto mfrac = std::vector<double>(this->rsw_.size(), 0.0);
|
||||||
const auto& pvtnum = eclState_.fieldProps().get_int("PVTNUM");
|
|
||||||
for (size_t i = 0; i < rsw_.size(); ++i) {
|
std::transform(this->rsw_.begin(), this->rsw_.end(),
|
||||||
mfrac[i] = FluidSystem::convertXwGToxwG(FluidSystem::convertRswToXwG(rsw_[i], pvtnum[i]-1), pvtnum[i]-1);
|
this->eclState_.fieldProps().get_int("PVTNUM").begin(),
|
||||||
}
|
mfrac.begin(),
|
||||||
sol.insert("XMFCO2", UnitSystem::measure::identity, std::move(mfrac), data::TargetType::RESTART_AUXILIARY);
|
[](const auto& rsw, const int pvtReg)
|
||||||
|
{
|
||||||
|
const auto xwg = FluidSystem::convertRswToXwG(rsw, pvtReg - 1);
|
||||||
|
return FluidSystem::convertXwGToxwG(xwg, pvtReg - 1);
|
||||||
|
});
|
||||||
|
|
||||||
|
sol.insert("XMFCO2",
|
||||||
|
UnitSystem::measure::identity,
|
||||||
|
std::move(mfrac),
|
||||||
|
data::TargetType::RESTART_OPM_EXTENDED);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (eclState_.runspec().co2Storage() && !rvw_.empty()) {
|
if (eclState_.runspec().co2Storage() && !rvw_.empty()) {
|
||||||
std::vector<double> mfrac(rvw_.size(), 0.0);
|
auto mfrac = std::vector<double>(this->rvw_.size(), 0.0);
|
||||||
const auto& pvtnum = eclState_.fieldProps().get_int("PVTNUM");
|
|
||||||
for (size_t i = 0; i < rvw_.size(); ++i) {
|
std::transform(this->rvw_.begin(), this->rvw_.end(),
|
||||||
mfrac[i] = FluidSystem::convertXgWToxgW(FluidSystem::convertRvwToXgW(rvw_[i], pvtnum[i]-1), pvtnum[i]-1);
|
this->eclState_.fieldProps().get_int("PVTNUM").begin(),
|
||||||
}
|
mfrac.begin(),
|
||||||
sol.insert("YMFWAT", UnitSystem::measure::identity, std::move(mfrac), data::TargetType::RESTART_AUXILIARY);
|
[](const auto& rvw, const int pvtReg)
|
||||||
|
{
|
||||||
|
const auto xgw = FluidSystem::convertRvwToXgW(rvw, pvtReg - 1);
|
||||||
|
return FluidSystem::convertXgWToxgW(xgw, pvtReg - 1);
|
||||||
|
});
|
||||||
|
|
||||||
|
sol.insert("YMFWAT",
|
||||||
|
UnitSystem::measure::identity,
|
||||||
|
std::move(mfrac),
|
||||||
|
data::TargetType::RESTART_OPM_EXTENDED);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Fluid in place
|
// Fluid in place
|
||||||
|
|||||||
Reference in New Issue
Block a user