- May 06, 2019
-
-
Christoph Grüninger authored
-
- Apr 16, 2019
-
-
Oliver Sander authored
Merge branch 'feature/implement-scalarmatrixview' into 'master' ref:core/dune-istl This is based on [dune-common!656] which introduces Impl::asMatrix() using this we can avoid many Hybrid::ifElse constructions which increase complexity of the implementation and error messages. Furthermore we can drop toMatrix() which fixed [#63]. This is a clone of [!288]. Is was created in order to tell the CI to use the corresponding branch in dune-common using a matching branch name. See merge request [!289] [dune-common!656]: gitlab.dune-project.org/Nonedune-common/merge_requests/656 [#63]: gitlab.dune-project.org/NoneNone/issues/63 [!288]: gitlab.dune-project.org/NoneNone/merge_requests/288 [!289]: gitlab.dune-project.org/core/dune-istl/merge_requests/289 Closes #63
-
- Apr 10, 2019
-
-
Carsten Gräser authored
-
Carsten Gräser authored
-
Carsten Gräser authored
Replace many `Hybrid::ifElse(IsNumber<...` constructions by using `Impl::asMatrix()`. In some cases the (now only) implementation of the matrix branch was additionally cleaned up using range-based for.
-
Carsten Gräser authored
Using `Impl::asMatrix()` we can replace many special case implementations based on `Hybrid::ifElse(IsNumber...` which simplifies code and error messages and avoids some code duplication.
-
Carsten Gräser authored
-
Carsten Gräser authored
This invokes undefined behaviour and was now replaced by asMatrix() in dune-common.
-
Carsten Gräser authored
The fundamental difference is, that `toMatrix()` leads to undefined behaviour, because it dereference a pointer obtained from a `reinterpret_cast` violating strict aliasing rules. In contrast `asMatrix()` returns a wrapper modelling a proxy-matrix which is safe to use.
-
- Apr 09, 2019
-
-
Oliver Sander authored
Merge branch 'feature/simplify-scalar-entries' into 'master' ref:core/dune-istl Using the new Impl::asVector() from dune-common we can get rid of - several Hybrid::isElse() constructions used to implement special cases for isNumber, - undefined behaviour invoked by toVector() due to the latter violating strict aliasing rules. This also removed the dangerous toVector() methods. This is only a partial solution to [#63]. We also need to do the same for toMatrix() which requires an analogue Impl::asMatrix() function and a ScalarMatrixView wrapper class. See merge request [!287] [#63]: gitlab.dune-project.org/NoneNone/issues/63 [!287]: gitlab.dune-project.org/core/dune-istl/merge_requests/287
-
Using the wrapper generated by `asVector()` we can get rid of `toVector()`. The important difference is, that `toVector()` invokes undefined behaviour by dereferencing the result of an aliasing `reinterpret_cast`. However, there's no noteable properties of the new implementation: * You can't use `asVector()` directly in calls to `mv()` and friends, because the latter is not robust wrt. to proxy references. * When creating copies of values, you can't replace `auto rhs = v[i];` by `auto rhs = Impl::asVector(v[i])` because proxy references don't use deep copy on purpose. Instead we have to use the two step `auto rhsValue = v[i]; auto&& rhs = Impl::asVector(rhsValue);`
-
-
Using `Impl::asVector()` we can get rid of several `Hybrid::ifElse()` constructions used to implement the special case of scalar entries (i.e. `IsNumber==true`).
-
- Mar 28, 2019
-
-
Oliver Sander authored
Merge branch 'fix_matrixredistribute_for_scalar_valued_matrices' into 'master' ref:core/dune-istl This MR adapts matrixredistribute.hh for matrices with scalar block_type like BCRSMatrix<double> and adapts the matrixredistributetest. See merge request [!278] [!278]: gitlab.dune-project.org/core/dune-istl/merge_requests/278
-
- Mar 24, 2019
-
-
Oliver Sander authored
Merge branch 'improve-matrix-testing' into 'master' See merge request [!282] [!282]: Nonecore/dune-istl/merge_requests/282
-
- Mar 22, 2019
-
-
Christian Engwer authored
in order to get a `static constexpr` result, the method must be called via the type and not via `this`.
-
Oliver Sander authored
-
Oliver Sander authored
And test it.
-
Oliver Sander authored
In preparation of testing more matrix types
-
Oliver Sander authored
-
Oliver Sander authored
... and use it in bcrsmatrixtest.cc Currently we are only testing whether these methods are implemented and can be compiled.
-
Oliver Sander authored
-
Oliver Sander authored
-
Oliver Sander authored
Found by porting the unit test to the general vectortest.hh framework.
-
Oliver Sander authored
Rather than testing them manually.
-
Oliver Sander authored
-
Oliver Sander authored
This is possible now because we have IsNumber in dune-common.
-
Oliver Sander authored
-
Oliver Sander authored
-
Oliver Sander authored
This uncovers a bug in the method axpy, which is also fixed in this patch.
-
Oliver Sander authored
... and use it to test the BCRSMatrix class. Currently, the new test only tests the vector space operations required of a dune-istl matrix. More is to come in subsequent patches.
-
- Mar 08, 2019
-
-
Steffen Müthing authored
Merge branch 'bugfix/silence-useless-warnings' into 'master' See merge request [!281] [!281]: Nonecore/dune-istl/merge_requests/281
-
Steffen Müthing authored
-
- Mar 07, 2019
-
-
Christian Engwer authored
Merge branch 'feature/fix-novlpschwarz' into 'master' See merge request [!280] [!280]: Nonecore/dune-istl/merge_requests/280
-
Christian Engwer authored
-
- Mar 05, 2019
-
-
Christoph Grüninger authored
Merge branch 'feature/use-latexmk' into 'master' See merge request [!275] [!275]: Nonecore/dune-istl/merge_requests/275
-
Christoph Grüninger authored
-
Christoph Grüninger authored
It caused problems with latexmk
-
Christoph Grüninger authored
-
Nils-Arne Dreier authored
-