Note that the LinearSolverIstl class requires dune-common and
dune-grid to be installed in f.ex. /usr/local, but since the
cmake build support is experimental we add it for now.
- Only tested on a single workstation.
- Requires non-standard FindUmfPack.cmake module to be installed.
- Only builds library and spu_2p. No install or test targets.
- Lacks lots of include and flags statements for robustness.
- Since many other files don't.
- We may want to establish a policy on this, that works with CMake.
An alternative (not chosen) could have been to wrap the #include in
#ifdef HAVE_CONFIG_H etc.
This is a temporary stop-gap to restore the build on systems for which
the UMFPACK library is not available. We need a better solution for
the general problem.
The code attempts to improve #iterations in the Gauss-Seidel-like
multicell solver by improving ordering. In general, experiment failed
to improve #iterations, except for one: totally random order was the
best (for the 100x100 case tried)!
This is for the experimental change of the graph topology, putting the
connections in the graph sorted by flux magnitude. Currently the
changes are in the file, but commented out until further experiments
have been done.
- Added solveMultiCell() virtual method.
- TransportModelInterface::reorderAndTransport() now calls solveMultiCell()
instead of aborting if encountering multi-cell components.
- Implemented solveMultiCell() in TransportModelTwophase by solving
each cell individually with solveSingleCell() and repeating until
saturation change is small (hardcoded 1e-9 for now).
- Using new solve() method in spu_2p.
- solve() implemented in terms of protected superclass method reorderAndTransport().
- Removed unused code being replaced by solve().
- These classes were imported (copied) from the dune-porsol repository,
and copies remain there for the time being.
- Some of the black oil fluid classes that are in opm-core, such as the
SinglePvt* classes, are direct descendants of the Miscibility* classes
that have been removed.
- At some point, we may modify dune-porsol to use the new fluid interfaces
from opm-core, but for now we keep using the existing code as-is.