Skip to content
Snippets Groups Projects
Commit 95b8fa3c authored by Oliver Sander's avatar Oliver Sander
Browse files

[!370] Rewrite doc of the BCRSMatrix 'implicit' build mode

Merge branch 'explain-implicit-buildmode' into 'master'

ref:core/dune-istl\> Circumstances forced me to finally learn what the
BCRSMatrix 'implicit' build mode really does, and where its limitations come
from. I had to read the code for that. As it turns out, the documentation of
the mode is quite misleading. My main gripe is that the code uses two
different auxiliary data structures, but the documentation calls them both
'overflow'. This problem even extends to the variable naming in the code.
Behold: the parameter 'overflowsize' is NOT the size of the member 'overflow'.
It doesn't even have anything to do with that member\...

To improve the situation, this patch does three things:

1.  It rewrites the documentation. In particular, the 'overflow area' is now
    clearly distinguished from the 'compression buffer'. The latter is a new
    word I introduce.

2.  It renames the BCRSMatrix method parameter _overflowsize to
    compressionBufferSize, because that is what it is: That parameter has
    nothing to do with the 'overflow' data member, or even the concept of
    'overflowing' in general.

3.  It renames the exception 'ImplicitModeOverflowExhausted' to
    'ImplicitModeCompressionBufferExhausted', for the same reason. This is the
    only interface changes. The code keeps the old exception for
    backward-compatibility, but makes it trigger a deprecation warning.

See merge request [core/dune-istl!370]

  [core/dune-istl!370]: gitlab.dune-project.org/core/dune-istl/merge_requests/370
parents 9635a36e a1feed88
No related branches found
No related tags found
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment