Enable multiple concurrent OGS runs

Hopefully, this MR really enables them.

This MR keeps the linear solver library setup alive as long as an OGS simulation uses it. That makes sure global matrices and vectors are removed from the cache (SimpleMatrixVectorProvider) only if it is guaranteed that they are not needed anymore. However, now, they could accumulate in SimpleMatrixVectorProvider if many OGS simulations are run interleaved in the same process.

A proper fix would be to remove SimpleMatrixVectorProvider.

Additionally, this MR improves the OGS-Python interplay in several aspects (linked libs, safe API usage, OGS started in a Python process (no new process forked) for PETSc builds).

  1. Tests covering your feature were added?
  2. Any new feature or behaviour change was documented?

Might fix #3589 (closed).

Edited by Christoph Lehmann

Merge request reports

Loading