mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
MSW : Make sure the ICV is using the full perforation interval #6152
This commit is contained in:
parent
277ff167a3
commit
63f964da82
@ -264,12 +264,21 @@ std::vector<std::pair<double, double>> RimWellPathValve::valveSegments() const
|
||||
RimPerforationInterval* perforationInterval = nullptr;
|
||||
this->firstAncestorOrThisOfType( perforationInterval );
|
||||
|
||||
std::vector<std::pair<double, double>> segments;
|
||||
if ( componentType() == RiaDefines::WellPathComponentType::ICV )
|
||||
{
|
||||
// Flow for ICV is defined as the complete perforation interval
|
||||
|
||||
segments.push_back( std::make_pair( perforationInterval->startMD(), perforationInterval->endMD() ) );
|
||||
}
|
||||
else
|
||||
{
|
||||
// ICD/AICD : Use the valve start/end, can be a subset of perforation interval
|
||||
|
||||
double startMD = this->startMD();
|
||||
double endMD = this->endMD();
|
||||
|
||||
std::vector<double> valveMDs = valveLocations();
|
||||
|
||||
std::vector<std::pair<double, double>> segments;
|
||||
segments.reserve( valveMDs.size() );
|
||||
|
||||
for ( size_t i = 0; i < valveMDs.size(); ++i )
|
||||
@ -286,6 +295,8 @@ std::vector<std::pair<double, double>> RimWellPathValve::valveSegments() const
|
||||
}
|
||||
segments.push_back( std::make_pair( segmentStart, segmentEnd ) );
|
||||
}
|
||||
}
|
||||
|
||||
return segments;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user