PointIntegralSolver does not correctly call apply() on vectors

Issue #215 resolved
Prof Garth Wells created an issue

PointIntegralSolver does not call apply() on vectors object after setting values. This can cause a PETSc triggered crash.

Once case was easy to fix, and one is not. The latter case is not straightforward because the read/set calls are inside a tight loop. Calling apply inside the loop is dead slow.

Tests have been disabled and half-fix is in ba9b50e0c2b21caa9368e4a1a4db69c74b95d590

Comments (9)

  1. Johan Hake

    Would it be possible to call:

    _scheme->solution()->vector()->apply("insert");
    

    outside the vertex loop?

    Or is it a problem that we also call get_local inside the loop and, apply needs to be called in between a get and set call?

  2. Log in to comment