makig StandardWellV can handle producer

now StandardWellV should be able to be used as the general Standard
Well.
This commit is contained in:
Kai Bao 2018-12-14 10:24:08 +01:00
parent 76edcc0d91
commit 0c42a179d5
2 changed files with 13 additions and 2 deletions

View File

@ -633,9 +633,8 @@ namespace Opm
} }
connectionRates_[perf][contiPolymerEqIdx] = Base::restrictEval(cq_s_poly); connectionRates_[perf][contiPolymerEqIdx] = Base::restrictEval(cq_s_poly);
if (this->has_polymermw && well_type_ == INJECTOR) { if (this->has_polymermw) {
// the source term related to transport of molecular weight // the source term related to transport of molecular weight
// TODO: should molecular weight be a Evalution type?
EvalWell cq_s_polymw = cq_s_poly; EvalWell cq_s_polymw = cq_s_poly;
if (well_type_ == INJECTOR) { if (well_type_ == INJECTOR) {
const int wat_vel_index = Bhp + 1 + perf; const int wat_vel_index = Bhp + 1 + perf;
@ -645,6 +644,16 @@ namespace Opm
const EvalWell molecular_weight = wpolymermw(throughput, water_velocity); const EvalWell molecular_weight = wpolymermw(throughput, water_velocity);
cq_s_polymw *= molecular_weight; cq_s_polymw *= molecular_weight;
} else { } else {
// we do not consider the molecular weight from the polymer
// going-back to the wellbore through injector
cq_s_polymw *= 0.;
}
} else if (well_type_ == PRODUCER) {
if (cq_s_polymw < 0.) {
cq_s_polymw *= extendEval(intQuants.polymerMoleWeight() );
} else {
// we do not consider the molecular weight from the polymer
// re-injecting back through producer
cq_s_polymw *= 0.; cq_s_polymw *= 0.;
} }
} }

View File

@ -598,6 +598,8 @@ namespace Opm
if (cq_s_polymw < 0.) { if (cq_s_polymw < 0.) {
cq_s_polymw *= extendEval(intQuants.polymerMoleWeight() ); cq_s_polymw *= extendEval(intQuants.polymerMoleWeight() );
} else { } else {
// we do not consider the molecular weight from the polymer
// re-injecting back through producer
cq_s_polymw *= 0.; cq_s_polymw *= 0.;
} }
connectionRates_[perf][this->contiPolymerMWEqIdx] = Base::restrictEval(cq_s_polymw); connectionRates_[perf][this->contiPolymerMWEqIdx] = Base::restrictEval(cq_s_polymw);