- Jun 30, 2016
-
-
Oliver Sander authored
Use hybridutilities This merge request simplifies the implementation of `MultiTypeBlockVector` and `MultiTypeBlockMatrix` by using hybridutilities.hh. It is based on core/dune-common!103
-
- Jun 29, 2016
-
-
Carsten Gräser authored
Reimplement this using Hybrid::forEach. Along the way this also fixes the bug that operator<< ignores the passed stream and uses std::cout instead.
-
Carsten Gräser authored
The new implementation is based on Hybrid::forEach
-
Carsten Gräser authored
Test with non-zero matrix and print results
-
Carsten Gräser authored
-
Carsten Gräser authored
Reimplement this using Hybrid::forEach. This also adds some comments and uses proper variable names to make the nan-tracking easier to understand.
-
Carsten Gräser authored
-
Carsten Gräser authored
Reimplement this using Hybrid::forEach.
-
Carsten Gräser authored
Reimplement this using Hybrid::forEach.
-
Carsten Gräser authored
Reimplement this using Hybrid::forEach.
-
Carsten Gräser authored
These separate impelmentations could be replaced by a single one, once we have IsNumber. Currently we could use std::is_arithmetic instead, but that's not the topic of this change.
-
Carsten Gräser authored
Reimplement this using Hybrid::forEach.
-
Carsten Gräser authored
Reimplement this using Hybrid::forEach. Along the way this also fixes the bug that operator<< ignores the passed stream and uses std::cout instead.
-
Carsten Gräser authored
The implementation in MultiTypeBlockMatrix would be even simpler, if it would provide a static size() method, because we could then use a simple Hybrid::forEach over its entries instead of one over all indices.
-
Carsten Gräser authored
-
- Jun 24, 2016
-
-
Christoph Grüninger authored
-
- May 28, 2016
-
-
Christoph Grüninger authored
-
- May 13, 2016
-
-
Markus Blatt authored
Feature/superlu5 See merge request !41
-
Christoph Grüninger authored
* Use correct macro * adjust changes for other types then double, too
-
-
API for solver routine changed. Since there is no versioning in SuperLU we have to do a probe to detect the new library.
-
- May 07, 2016
-
-
Markus Blatt authored
[cmake][bugfix] Fix the testsuite for sequential builds Some tests assume MPI being present, although they are not executed in parallel. This information got lost in the transition to dune_add_test and is restored with this patch. Thanks to @markus.blatt for noticing. This fixes #13 See merge request !38
-
- May 03, 2016
-
-
Jö Fahlke authored
Abort CGSolver when the defect is invalid The first commit introduces the exception `SolverAbort`, derived from `ISTLError`. The second commit makes `CGSolver` abort by throwing `SolverAbort` when the defect becomes invalid (infinite or NaN). The check is done in every iteration before the convergence check. These two commits fix #12. The third and fourth commit make `BiCGStab` and `GMRes` throw `SolverAbort` when they detect a breakdown. `SolverAbort` seemed more specific when the `ISTLError` they were throwing before. The fifth commit documents when `SolverAbort` is thrown at the moment. The sixth commit adds a unit tests that tries to trigger `SolverAbort` and makes sure that it is actually thrown. It does this for the NaN-check in `CGSolver` and for the "abs(h) < EPSILON"-check in `BiCGSTABSolver` -- there a more conditions in `BiCGSTABSolver` and `RestartedGMResSolver` that throw, but I don't know how to trigger them. See merge request !36
-
- Apr 11, 2016
-
-
Jö Fahlke authored
Here we try to solve A*x=b for x, with ``` / 1 1 \ / 1 \ A = | |, b = | |, \ 1 1 / \ 2 / ``` which has no solution. In the CGSolver, the this leads to a NaN defect after 46 iterations. In BiCGSTABSolver this leads to "abs(h) < EPSILON" after 1.5 iterations. BiCGSTABSolver and RestartedGMResSolver also throw SolverAbort when they detect "breakdown", checking for that is left as a todo.
-
- Mar 31, 2016
-
-
Christoph Grüninger authored
Don't throw std::exception but print message and exit Fixes dune-common#23 See merge request !39
-
- Mar 22, 2016
-
-
Christoph Grüninger authored
Fixes dune-common#23
-
- Mar 21, 2016
-
-
Dominic Kempf authored
Some tests assume MPI being present, although they are not executed in parallel. This information got lost in the transition to dune_add_test and is restored with this patch. Thanks to @markus.blatt for noticing.
-
Christoph Grüninger authored
[cleanup] fix some typos in documentation strings and error messages See merge request !37
-
Felix Gruber authored
-
- Mar 18, 2016
-
-
Markus Blatt authored
[bugfix] Fixes access to non-existing parallel info in FastAMG::recalculateHierachy recalculateHierarchy() assumed that there is information avaiable that is only there in parallel runs. This failed miserably. This commit fixes this be implementing dummy versions for redistributing matrices in a sequential run and does not query any parallel stuff any more This closes #11. See merge request !34
-
Markus Blatt authored
Merge branch 'feature/make-matrixredisttest-compile-again' into 'feature/fix-fastamg-buildhierarchy' [matrixredistribute.hh] Fix missing #include <dune/istl/paamg/pinfo.hh>. The previous commit made fastamg compile, but broke compilation of matrixredisttest for me. This makes matrixredisttest compile again. See merge request !35
-
- Mar 17, 2016
-
-
Jö Fahlke authored
Document that `BiCGSTABSolver` and `RestartedGMResSolver` can throw `SolverAbort` when they detect a breakdown.
-
Jö Fahlke authored
The previous commit made fastamg compile, but broke compilation of matrixredisttest for me. This makes matrixredisttest compile again.
-
Jö Fahlke authored
SolverAbort is derived from ISTLError, so any existing catch-clause should still apply.
-
Jö Fahlke authored
SolverAbort is derived from ISTLError, so any existing catch-clause should still apply.
-
Jö Fahlke authored
-
Jö Fahlke authored
-
Markus Blatt authored
recalculateHierarchy() assumed that there is information avaiable that is only there in parallel runs. This failed miserably. This commit fixes this be implementing dummy versions for redistributing matrices in a sequential run and does not query any parallel stuff any more This closes #11.
-
Markus Blatt authored
[amg][bugfix] Fix dirichlet processing in FastAMG The comment and surroundig code indicate that FastAMG should solve during pre() for dirichlet entries. This is determined by checking if a row does contain a diagonal entry while all other entries are zero. The check for this was buggy because hasDiagonal was always false. This merge commits sets it to true if a diagonal entry is found and nonzero. See merge request !32
-
- Mar 15, 2016
-
-
Oliver Sander authored
This allows other code to access field_type and real_type for a MultiTypeBlockVector using the FieldTraits class. Caveat: in principle, individual entries of a MultiTypeBlockVector could use different field_types. The implementation always returns the first one.
-