mirror of
https://github.com/OPM/opm-simulators.git
synced 2025-02-25 18:55:30 -06:00
Use well index when iterating over polymer perforation rates
This commit is contained in:
parent
5437cfa37a
commit
f9e142dc8d
@ -794,7 +794,8 @@ namespace Opm
|
|||||||
cq_s_poly *= extendEval(intQuants.polymerConcentration() * intQuants.polymerViscosityCorrection());
|
cq_s_poly *= extendEval(intQuants.polymerConcentration() * intQuants.polymerViscosityCorrection());
|
||||||
}
|
}
|
||||||
// Note. Efficiency factor is handled in the output layer
|
// Note. Efficiency factor is handled in the output layer
|
||||||
well_state.perfRatePolymer()[first_perf_ + perf] = cq_s_poly.value();
|
auto * perf_rate_polymer = &well_state.perfRatePolymer()[first_perf_];
|
||||||
|
perf_rate_polymer[perf] = cq_s_poly.value();
|
||||||
|
|
||||||
cq_s_poly *= well_efficiency_factor_;
|
cq_s_poly *= well_efficiency_factor_;
|
||||||
connectionRates[perf][contiPolymerEqIdx] = Base::restrictEval(cq_s_poly);
|
connectionRates[perf][contiPolymerEqIdx] = Base::restrictEval(cq_s_poly);
|
||||||
|
@ -788,7 +788,8 @@ void WellState::reportConnections(data::Well& well,
|
|||||||
comp.rates.set( pi [ i ], *(connPI + i) );
|
comp.rates.set( pi [ i ], *(connPI + i) );
|
||||||
}
|
}
|
||||||
if ( pu.has_polymer ) {
|
if ( pu.has_polymer ) {
|
||||||
comp.rates.set( rt::polymer, this->perfRatePolymer()[wt.second[1] + local_comp_index]);
|
const auto * perf_polymer_rate = &this->perfRatePolymer()[wt.second[1]];
|
||||||
|
comp.rates.set( rt::polymer, perf_polymer_rate[local_comp_index]);
|
||||||
}
|
}
|
||||||
if ( pu.has_brine ) {
|
if ( pu.has_brine ) {
|
||||||
comp.rates.set( rt::brine, this->perfRateBrine()[wt.second[1] + local_comp_index]);
|
comp.rates.set( rt::brine, this->perfRateBrine()[wt.second[1] + local_comp_index]);
|
||||||
@ -1017,8 +1018,8 @@ double WellState::solventWellRate(const int w) const
|
|||||||
|
|
||||||
double WellState::polymerWellRate(const int w) const
|
double WellState::polymerWellRate(const int w) const
|
||||||
{
|
{
|
||||||
return parallel_well_info_[w]->sumPerfValues(&perfRatePolymer_[0] + first_perf_index_[w],
|
const auto * perf_rates_polymer = &perfRatePolymer_[first_perf_index_[w]];
|
||||||
&perfRatePolymer_[0] + first_perf_index_[w] + num_perf_[w]);
|
return parallel_well_info_[w]->sumPerfValues(perf_rates_polymer, perf_rates_polymer + this->num_perf_[w]);
|
||||||
}
|
}
|
||||||
|
|
||||||
double WellState::brineWellRate(const int w) const
|
double WellState::brineWellRate(const int w) const
|
||||||
|
Loading…
Reference in New Issue
Block a user