mirror of
https://github.com/OPM/opm-simulators.git
synced 2025-02-25 18:55:30 -06:00
Clean-up of the solvent implementation
This commit is contained in:
parent
8b75e2eedc
commit
f671af6cd6
@ -934,8 +934,7 @@ namespace Opm {
|
|||||||
Vector& R2_idx = R2[ solventCompIdx ];
|
Vector& R2_idx = R2[ solventCompIdx ];
|
||||||
Vector& B_idx = B[ solventCompIdx ];
|
Vector& B_idx = B[ solventCompIdx ];
|
||||||
B_idx [cell_idx] = 1.0 / intQuants.solventInverseFormationVolumeFactor().value();
|
B_idx [cell_idx] = 1.0 / intQuants.solventInverseFormationVolumeFactor().value();
|
||||||
const int ebosCompIdx = flowPhaseToEbosCompIdx(solventCompIdx);
|
R2_idx[cell_idx] = ebosResid[cell_idx][solventCompIdx];
|
||||||
R2_idx[cell_idx] = ebosResid[cell_idx][ebosCompIdx];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -126,8 +126,9 @@ enum WellVariablePositions {
|
|||||||
return 2;
|
return 2;
|
||||||
}
|
}
|
||||||
int numComp = FluidSystem::numComponents;
|
int numComp = FluidSystem::numComponents;
|
||||||
if (has_solvent_)
|
if (has_solvent_) {
|
||||||
numComp ++;
|
numComp ++;
|
||||||
|
}
|
||||||
|
|
||||||
return numComp;
|
return numComp;
|
||||||
}
|
}
|
||||||
|
@ -1210,7 +1210,7 @@ namespace Opm {
|
|||||||
surf_dens_perf[numComp*perf + p] = FluidSystem::referenceDensity( flowPhaseToEbosPhaseIdx( p ), fs.pvtRegionIndex());
|
surf_dens_perf[numComp*perf + p] = FluidSystem::referenceDensity( flowPhaseToEbosPhaseIdx( p ), fs.pvtRegionIndex());
|
||||||
}
|
}
|
||||||
|
|
||||||
#warning HACK use cell values for solvent injector
|
// We use cell values for solvent injector
|
||||||
if (has_solvent_) {
|
if (has_solvent_) {
|
||||||
b_perf[numComp*perf + solventCompIdx] = intQuants.solventInverseFormationVolumeFactor().value();
|
b_perf[numComp*perf + solventCompIdx] = intQuants.solventInverseFormationVolumeFactor().value();
|
||||||
surf_dens_perf[numComp*perf + solventCompIdx] = intQuants.solventRefDensity();
|
surf_dens_perf[numComp*perf + solventCompIdx] = intQuants.solventRefDensity();
|
||||||
@ -1325,7 +1325,8 @@ namespace Opm {
|
|||||||
well_state.wellSolutions()[SFrac*nw + w] = F_solvent;
|
well_state.wellSolutions()[SFrac*nw + w] = F_solvent;
|
||||||
}
|
}
|
||||||
|
|
||||||
# warning F_solvent is added to F_gas. This means that well_rate[Gas] also contains solvent. More testing is needed to make sure this is correct for output, wellControls, well groups, THP etc.
|
// F_solvent is added to F_gas. This means that well_rate[Gas] also contains solvent.
|
||||||
|
// More testing is needed to make sure this is correct for well groups and THP.
|
||||||
if (has_solvent_){
|
if (has_solvent_){
|
||||||
F[Gas] += F_solvent;
|
F[Gas] += F_solvent;
|
||||||
}
|
}
|
||||||
@ -3029,7 +3030,7 @@ namespace Opm {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
// we didn't find it return 0;
|
// we didn't find it return 0;
|
||||||
// or should we throw?
|
assert(false);
|
||||||
return 0.0;
|
return 0.0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -76,7 +76,7 @@ namespace Opm
|
|||||||
perfRateSolvent_.clear();
|
perfRateSolvent_.clear();
|
||||||
perfRateSolvent_.resize(nperf, 0.0);
|
perfRateSolvent_.resize(nperf, 0.0);
|
||||||
|
|
||||||
if(pu.has_solvent) {
|
if (pu.has_solvent) {
|
||||||
|
|
||||||
// intialize wells that have been there before
|
// intialize wells that have been there before
|
||||||
// order may change so the mapping is based on the well name
|
// order may change so the mapping is based on the well name
|
||||||
@ -196,7 +196,7 @@ namespace Opm
|
|||||||
if( pu.phase_used[Gas] ) {
|
if( pu.phase_used[Gas] ) {
|
||||||
wellSolutions()[2*nw + w] = wells_->comp_frac[np*w + gaspos];
|
wellSolutions()[2*nw + w] = wells_->comp_frac[np*w + gaspos];
|
||||||
}
|
}
|
||||||
if(pu.has_solvent) {
|
if (pu.has_solvent) {
|
||||||
wellSolutions()[3*nw + w] = 0;
|
wellSolutions()[3*nw + w] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -238,7 +238,7 @@ namespace Opm
|
|||||||
if (nw == 0) {
|
if (nw == 0) {
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
if(pu.has_solvent) {
|
if (pu.has_solvent) {
|
||||||
// add solvent component
|
// add solvent component
|
||||||
for( int w = 0; w < nw; ++w ) {
|
for( int w = 0; w < nw; ++w ) {
|
||||||
using rt = data::Rates::opt;
|
using rt = data::Rates::opt;
|
||||||
|
Loading…
Reference in New Issue
Block a user