- Mar 17, 2016
-
-
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.
-
- Mar 14, 2016
-
-
Carsten Gräser authored
Adding a new template perameter before the existing ones is a non-compatible interface change, because code that explicitly instantiates the template will fail to compile afterwards. Putting the new template parameter to the end fixes the issue
-
Oliver Sander authored
I missed a few occurrences of 'nblocks' when renaming that to 'rows_', because it was hidden behind the DUNE_ISTL_WITH_CHECKING macro.
-
Christoph Grüninger authored
[amg] Silence FastAMG if debugLevel=0 There was an unconditional debug output in FastAMG. With this commit this is will only be printed if debugLevel>0. See merge request !31
-
There was an unconditional debug output in FastAMG. With this commit this is will only be printed if debugLevel>0.
-
- Mar 11, 2016
-
-
Carsten Gräser authored
This additional check currently fails.
-
- Mar 09, 2016
-
-
Oliver Sander authored
-
Oliver Sander authored
[fix] Remove coumns_, probably a copy-n-paste artifact See merge request !33
-
Christoph Grüninger authored
-
- Mar 08, 2016
-
-
Carsten Gräser authored
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. Now it's set to true if a diagonal entry is found and nonzero.
-
- Mar 07, 2016
-
-
Oliver Sander authored
The dune-common module now contains short-cuts for static indices of type integral_constant<size_t,...>, and we should try to standardize on those.
-
Oliver Sander authored
In particular, this means that static indices are integral_constant<std::size_t,...> now, rather than integral_constant<int,...>. We decided to standardize on std::size_t.
-
- Mar 04, 2016
-
-
Oliver Sander authored
This array was a left-over from the VariableBlockVector class. In short, it stores the length of each matrix row. Of course that is redundant, because all rows in a dense matrix have the same length. This patch makes the class allocate less memory, and use the known row size to compute the offsets into the data array. In principle, the code becomes faster by this, but I am not convinced that the effect will be measurable. Still, even without measurable speedup: this patch is an improvement, because it makes the code simpler.
-
- Feb 29, 2016
-
-
Christoph Grüninger authored
doc: fix typo: writee -> write See merge request !30
-
- Feb 28, 2016
-
-
Ansgar Burchardt authored
-
- Feb 27, 2016
-
-
Christoph Grüninger authored
[bugfix] add missing header Header `dune/common/exceptions.hh` is not included but exceptions are used. See merge request !29
-
- Feb 26, 2016
-
-
Tobias Malkmus authored
-
- Feb 25, 2016
-
-
Steffen Müthing authored
Matrix loadbalance to more There was a problem when having the global matrix and using load balance to distribute it. This is fixed by the MR. These changes should be cherrypicked to the release, too. See merge request !28
-
Markus Blatt authored
One of the use cases for load balancing a matrix is reading it globally on one process and then calling the load balancer to distribute it among the processes. Unfortunately this did not work due to a bug that prevented the correct remapping of the domain numbers from the load balancers. This lead to negative rank numbers. With this commit we use yet unassigned process numbers for domains that are not yet mapped (due to having no dofs before the load balancing).
-
Markus Blatt authored
-
Christoph Grüninger authored
[cmake][bugfix] Correct handling of the EXCLUDE_FROM_ALL property: The signature of `dune_add_test`, that takes the `TARGET` from the user produced excluded targets if added in a directory that has the directory property `EXCLUDE_FROM_ALL` set. The correct solution IMO is to not use that property on test subdirectories anymore (it is a relic from the old testing magic), because we rely on `dune_add_test` to handle exclusion. See dune-common#21 for details. See merge request !27
-
- Feb 22, 2016
-
-
Dominic Kempf authored
The signature of `dune_add_test`, that takes the `TARGET` from the user produced excluded targets if added in a directory that has the directory property `EXCLUDE_FROM_ALL` set. The correct solution IMO is to not use that property on test subdirectories anymore (it is a relic from the old testing magic), because we rely on `dune_add_test` to handle exclusion. See core/dune-common#21 for details.
-
- Feb 21, 2016
-
-
Oliver Sander authored
I had removed it by accident in one of the previous commits.
-
Oliver Sander authored
All blocks have the same size, therefore 'block' is not actually needed. This is the first step towards getting rid of it.
-
Oliver Sander authored
-
Oliver Sander authored
The recent changes to VariableBlockVector broke the Matrix class -- shame on me for testing thoroughly enough before pushing. However, using VariableBlockVector internally in Matrix was a hack anyway. So, as a first step towards a cleaner solution, this patch copies the (old) VariableBlockVector class into the file, renames VariableBlockVector to DenseMatrixBase, and does some obvious cleanup. This is still not particularly pretty, but better than before.
-
- Feb 20, 2016
-
-
Oliver Sander authored
This fixes a valgrind warning in the test for VariableBlockVector, where the reference type is an internal proxy class.
-
Oliver Sander authored
Just as containers from the standard library do. These types are needed for proper interface testing of the dune-istl vector interface. For VariableBlockVector, in particular, the type used for references is *not* value_type&, and therefore the more general approach using a separate 'reference' type is needed.
-
Oliver Sander authored
-
Oliver Sander authored
-
Oliver Sander authored
Yes, strictly speaking this is an API change. But the VariableBlockVector code has been so buggy until the last few patches that I doubt anyone actually used it.
-
Oliver Sander authored
Previously, a method of the same name was inherited from the base class, which however returned bogus results.
-
- Feb 19, 2016
-
-
Oliver Sander authored
- much shorter code - makes the iterators pass the test suite
-
Oliver Sander authored
-
Oliver Sander authored
-
- Feb 18, 2016
-
-
Oliver Sander authored
The FieldVector class resides in dune-common, and is tested there. However, we also want to check it against the tests specifying the dune-istl vector interface in vectortest.hh, therefore we add a second test for FieldVector to the dune-istl module.
-
Oliver Sander authored
Previously, they were inherited from the base class, resulting in the wrong types.
-
Oliver Sander authored
So far, each dune-istl vector class had its own unit test. They all tested, among other things, for compliance with the dune-istl vector interface. This lead, or had the risk to lead, to subtle differences between the individual tests. Also, since there is no formal specification of the interface, it was somewhat unclear what the interface actually requires. This patch tries to improve the situation by providing a generic set of tests that should be passed by anything claiming to be a dune-istl vector. This will save work, because it allows to centralize tests that are now distributed across the different unit tests for the different dune-istl vectors. Also, it is my hope that these centralized tests can serve as some form of formalized specification of the dune-istl vector interface.
-