A new GUI in the diagnostics module which acts as a postprocessing tool on simulation output
Utilities in ad-core for automatic restarts and I/O of simulation cases
Sequential implicit compositional solvers have been addedNew developments in existing functionality
Below follows a brief overview of important changes. In addition, full commit logs can be found at the MRST bitbucket pages: www.bitbucket.org/mrst
MRST Core
Fixed bugs in refDepth for wells in 2D and well-index for cells with zero permeability.
Support for one-dimensional grids.
Legacy routine readGRDECL now benefits from performance improvements made in deckformat module.
Module ad-core
Added a new framework for running and managing simulations under ad-core/simulators/sim_runner. Some useful features include automatic restarts for interrupted simulators, management of files on disk and naming of specific cases.
New utility functions initEclipseProblemAD and selectLinearSolverAD allow for single-routine setup of full decks with reasonable default choices for linear solver and timestepping for given configuration.
upscaleModelTPFA can take a coarse grid in place of a partition vector if a specific coarse grid is to be used.
Support for SGWFN tables (water-gas)
Support for surface density via GRAVITY keyword
intiStateBlackOilAD has improved backwards compatibility for older versions of Matlab
plotWellSols now supports selection of multiple datasets (when present)
PhysicalModel base class has a new member function which allows model to specify maximum allowable time-step.
Parsing of complex wells with perforations that are both added and removed between control steps should be much more robust.
initStateDeck now supports direct assignment of pressures, rs, rv and saturations
The logic for convergence checks has been refactored to make linesearch more efficient. The NonLinearSolver class now has an acceptance factor field, which can specify the maximum allowable error preferable to the cutting of time-steps.
inspectFluidModel: Increased robustness when multiple regions are present. Will only plot the region of cell 1.
LinearSolverAD: If both diagonal scaling and reordering is present, the scaling is now performed after reordering.
Time-step cutting is now a feature of the time-step selection class. This can fix misbehavior encountered for models where numerous time-step cuts were encountered in combination with automated time-step selection.
computeSensitivitiesAdjointAD: Increased robustness with respect to equation setup.
AMGCL_CPRSolverAD has been rewritten and should have greatly improved robustness.
Module ad-blackoil
A bug for multiple PVT regions have been fixed.
Module blackoil-sequential
Hybrid upwinding support rewritten and added to all sequential solvers
Sequential models now have a non-empty grid copied from the submodel.
Module compositional
Sequential-implicit solvers mirroring the fully-implicit solvers have been added. Both overall composition and natural variables are present. See A Mass-Conservative Sequential Implicit Multiscale Method for Isothermal Equation of State Compositional Problems by Møyner & Tchelepi, SPE J.
Module MRST-GUI
Several new routines have been added to support the new flow diagnostics GUI
New classes for faster interactive plotting.
A new SummaryViewer class for simple viewing of Eclipse output.
Module diagnostics
Added postProcessDiagnostics interface. This is a new GUI for post-processing simulation output and showing detailed flow diagnostics.
Numerous improvements and extensions to existing routines to support this GUI.
computeTimeOfFlight can now compute first-arrival instead of averaged time-of-flight.
Documentation has been improved throughout the module.
Module streamlines
Pollock now supports pore-volumes as input for more accurate time-of-flight values. Thanks to Masoud Ghaderi at Heriot-Watt University for the bug report.
A bug has been fixed in pollock which could result in nan values being returned. Thanks to liaoqz at the MRST mailing list for this bug report.
Module coarsegrid
coarsenGeometry: The normal vectors should now correctly have magnitude equal to the face areas, analogously to the fine-scale convention.
Module co2lab
Added several examples from the paper "Using simplified methods to explore the impact of parameter uncertainty on CO2 storage estimates with application to the Norwegian Continental Shelf" by Allen et al in International Journal of Greenhouse Gas Control, 2018.
Module linearsolvers
AMGCL build instructions have been added, together with several additional configurable options in the Matlab interface.
Module HFM
Several improvements to efficiency and accuracy thanks to Daniel Wong at Heriot-Watt university.
Module SPE10
setupSPE10_AD is now more general and can take any box subset of the full model.
Module deckformat
Additional support for parsing of pinch and mult keywords.
Extended support for combinations of DX, DY, DV and DXV, DYV, DZV. Previously, all parameters had to be of the same type, but we now support mixes of the two.
Support for GRAVITY keyword - see details in ad-core.
Better support for multiply specified wells such that a warning is issued.
Many older routines predating the AD-simulators have been removed. The routine which may have been in use is the initialization initEclipseState which can be replaced with initStateDeck.
New routine initGridFromEclipseOutput which supersedes eclOut2mrst.
Tentative support for parsing of aquifers. This is not yet supported in any solvers.
readEclipseOutput* family of routines now also support output from OPM Flow.
Fixes to eclOut2mrst for PERMY and PERMZ. Thanks to Andres Codas for these fixes.