Change polymer production output from volume -> mass
Polymer injection rates are read from the simulator and not computed based on the water rate and the polymer injection concentration given in the schedule
corrections to iwel[10] open/shut flag
further corrections SWEL for handling udq-restarts correctly
further changes to get correct SWEL in ECL-Restart file
added comment to clarify change
correction to group sequence and group controls for EclRST-file
changes to correct IGRP[NWGMAX+5]
corrected compile errors/warnings
further minor code corrections
initial changes to include group current Prod/inj Constraint in summary file
further changes to currentsStatusGroupControl to Summary output
further corrections and additions of Field current controls
further corrections for IGRP
minor corrections to code style
corrections for tests
changes to correct test_AggregateWellData
a few more initial changes for next version of igrp/sgrp
changes to igrp & sgrp according to tests
changes to handle special conditions at report step 0
corrections due to changes in Summary.cpp
changes to improve code quality and robustness
Add default value to igrp[nwgmax+5]
corrections and code improvements base on testing
corrections to handling of GCONINJE
further corrections for IGRP
even further corrections IGRP
changes to correct SGRP
correction to IGRP defaults
corrections to SWEL and IGRP
further corrections for IGRP
removed some comments
This commit makes the 'critical_*()' helper functions aware of the
TOLCRIT feature. We now consider a phase to be immobile at a one
saturation value if its relative permeability at that saturation is
less than or equal to TOLCRIT. TOLCRIT mirrors E100's default value
of 1.0e-6 unless otherwise specified in the PROPS section.
All table scanners are implemented in terms of the expression
std::lower_bound(begin, end, tolcrit, predicate)
which ultimately returns the first position in [begin, end) for
which
predicate(*iter, tolcrit)
is false. Using predicate = std::greater<>{} thus determines the
first position in the sequence for which the elements is less than
or equal to 'tolcrit'. Similarly, a predicate equivalent to '<='
returns the first position for which the elements is strictly
greater than 'tolcrit'.
Add a set of unit tests to demonstrate and exercise the new feature.
This is a pure API change. The TOLCRIT value is not yet used as
part of determining the critical saturations.
While here, also add a unit test for getRawTableEndPoints() and
update the existing sat-func property unit tests to explicitly pass
TOLCRIT = 0 in preparation of adding actual TOLCRIT support.
When handling the COMPSEGS keyword the connections are updated with segment
number and the segments are updated with total perforated length. The new
Compsegs::processCOMPSEGS() function will create new updated copies of both
WellSegments and WellConnections.
This commit adds support for saving and restoring a well's THP
quantitiy. We put the THP into the summary facility's list of
"required restart quantities" and pick up the value converted to
output units from the SummaryState.
On restart we restore the THP value to internal (SI) units and
transport the value to the simulator in data::Well::thp. While
here, also add the THP value to the RstWell object although
currently not strictly needed in that context.
This commit identifies vector items in XWEL and XGRP that hold guide
rate values at the well and group levels, and adds functionality to
output those values to the restart file. We do not identify such
value at the FIELD level. As with other summary-like quantities, we
expect to pick up the fully converted values from a SummaryState
object.
Calculating and storing the guide rate quantities in SummaryState is
the subject of future work.