- Nov 19, 2013
-
-
Steffen Müthing authored
notbuilt) and building Right now, some build modes reuse the same build stage value across several actual stages. This patch splits the notbuilt stage into notAllocated and building, avoiding that ambiguity.
-
Steffen Müthing authored
-
Steffen Müthing authored
- Introduce new exception BCRSMatrixError and use it throughout BCRSMatrix - Introduce new exception ImplicitModeOverflowExhausted, which is thrown by compress() for the implicit build mode. Also improve the error message for that exception to really help the user understand the problem signalled by this exception and how to remedy the situation.
-
Steffen Müthing authored
-
Steffen Müthing authored
This patch adds checks to make sure the user has actually set valid parameters before trying to allocate the matrix in implicit mode. We use a negative value for the overflow fraction as an indicator for this. As part of the cleanup, this patch also makes sure that avg and overflowsize are always initialized to a well-defined value.
-
Steffen Müthing authored
This was obviously never tested - don't try to assign the overflow fraction to the map holding the overflow entries...
-
Steffen Müthing authored
We iterate over all rows anyway, so avoid the additional loop.
-
Steffen Müthing authored
compress() uses iterators that are off to enable a *(++it) = ... idiom, which already confuses me right now. That confusion will only be worse when I look at the code again in half a year, so let's clean that up right now.
-
Steffen Müthing authored
ImplicitMatrixBuilder now has some more documentation and a second constructor that takes all required arguments for setting up a matrix in implicit build mode. So you can now create an ImplicitMatrixBuilder directly on top of a default-constructed BCRSMatrix.
-
Steffen Müthing authored
- Don't needlessly specialize the wrapper, we can still do that we we encounter the need for it. - Add some doxygen documentation. - Clean up formatting.
-
Steffen Müthing authored
-
Steffen Müthing authored
This one slipped through the cracks when renaming the build mode...
-
Steffen Müthing authored
-
- Nov 15, 2013
-
-
Dominic Kempf authored
The sparsity pattern of the matrix is defined implicitly while assembling the matrix.
-
Dominic Kempf authored
call the matrix "Matrix" instead.
-
Dominic Kempf authored
The given implementation only makes sense for a BCRSMAtrix, thus it should only be used for such. This is in line with ISTLs general coding style. Also added bit of doc.
-
Dominic Kempf authored
This wrapper allows code to use the BCRSMode in implicit build mode with the default operator[][] API during the initial build stage.
-
Dominic Kempf authored
-
Dominic Kempf authored
-
Dominic Kempf authored
-
Dominic Kempf authored
-
Dominic Kempf authored
-
Dominic Kempf authored
-
Dominic Kempf authored
-
- Oct 30, 2013
-
-
Dominic Kempf authored
Mpi flags were not added to pamgtest if parmetis was not present. This is of course unwanted behaviour. The patch adds pamgtest to the mpi tests (in addition to being part of the parmetis tests)
-
Dominic Kempf authored
The config.h entry for ENABLE_UMFPACK should be in the same module as the test for UMFPack, to avoid future conflicts with multiple modules running the test for umfpack.
-
- Oct 29, 2013
-
-
Markus Blatt authored
It is not needed here and does not compile with g++-4.4
-
- Oct 28, 2013
-
-
Dominic Kempf authored
The current ISTL test system relies heavily on test problems generated with setupAnisotropic2d() from dune/istl/paamg/anisotropic.hh . The code there was written in a fashion that forbid the use of an allocator different than std::allocator on the BcrsMatrix. This patch fixes this issue by giving the matrix type as template parameter to the matrix setup instead of blocksize and fieldtype. This also makes code easier to read. All (hopefully) tests in ISTL are adpated to the change.
-
Dominic Kempf authored
-
Dominic Kempf authored
-
Dominic Kempf authored
Restores the old twolevelmethodtest and adds a new one to test multithreaded computation. Fixes the autotools build system to run the multithreaded tests too. Furthermore introduces multithreaded test with superlu/umfpack.
-
- Oct 27, 2013
-
-
Oliver Sander authored
- Oct 24, 2013
-
-
Markus Blatt authored
There was a typename used outside of template which caused failed compilation of twolevelmethodest (at least for gcc-4.4). This patch removes the bogus typename.
-
Tobias Malkmus authored
-
- Oct 23, 2013
-
-
Markus Blatt authored
This was a left over from resolving the conflicts from rebasing the feature/twolevel branch.
-
Markus Blatt authored
This patch fixes a memory leak when using AMG as a coarse level solver for the two level method. As there was no need to store the solver as a pointer (it was copied anyway), we now simply store it by value.
-
Markus Blatt authored
[twolevelmethod][bugfix] Copy coarse level solver for thread safety. (2nd tparam of TwolevelMethod changed!) Previously all copies of the twolevel method used the same coarse level solver. In the case of AMG this resulted in wrong results as it stores internal data across several applications. This patch now always copies the internal coarse level data. In addition the left hand side given to AMG as a coarse level solver is copied to use it for the post method in the constructor. Note that the meaning of the template parameters of TwolevelMethod is changed. Its second parameter is now the type of the coarse level solver rather than the coarse level linear operator. The latter is deduced from the previous now. This was needed to supportt copying of the coarse level solver.
-
-
-