mirror of
https://github.com/OPM/opm-simulators.git
synced 2024-11-30 13:03:49 -06:00
Simulator programs and utilities for automatic differentiation.
15ad669d5d
the missing piece was determining if the wells have changed between report steps. This patch adds a simple way to determine this, but it relies on low-level properties of opm-parser it does not guarantee. (concretely, these details are that the same well objects are returned in the same order if nothing changes. Since IMO this is a pretty reasonable assumption, we use this approach instead of a more complicated one until opm-parser provides a "change determination API" for wells...) note that this patch may increase the number of iterations required for the simulation because the linear system of equations which is solved in the first iteration of a time step actually corresponds to the second to last solution of the previous time step. This means that that linearization recycling usually only works well if the tolerance of the Newton-Raphson solver is "sufficiently" low. ("sufficiently" means that the linearization errors made due to using the "wrong" solution for the first iteration can be neglected compared to the differences because of the change of the solution in this iteration.) therefore, use this feature at your own risk... |
||
---|---|---|
applications/ebos |