]> https://gitweb.dealii.org/ - dealii.git/commit
fix DynamicSparsityPattern::begin(row) performance, add IndexSet::at
authorTimo Heister <timo.heister@gmail.com>
Fri, 17 Jun 2016 21:58:10 +0000 (14:58 -0700)
committerTimo Heister <timo.heister@gmail.com>
Tue, 21 Jun 2016 18:30:27 +0000 (14:30 -0400)
commit65cb5e67fcefa1b99a9172e4edd56e98013f6b5f
tree893716292324388e1e994849004f9256c3023651
parenta57fc6672e6188ffecafc8d71f89b6f87ad52bbc
fix DynamicSparsityPattern::begin(row) performance, add IndexSet::at

begin(row) and end(row) would search through all empty rows leading to
quadratic complexity when iterating row by row as it is done in the
construction of PETSc's SparseMatrix.
Fix this by finding the closest locally owned row using a binary search
and then only iterate over the locally owned set.
doc/news/changes.h
include/deal.II/base/index_set.h
include/deal.II/lac/dynamic_sparsity_pattern.h
source/lac/dynamic_sparsity_pattern.cc
tests/base/index_set_iterate_02.cc [new file with mode: 0644]
tests/base/index_set_iterate_02.output [new file with mode: 0644]
tests/bits/dynamic_sparsity_pattern_iterator_05.cc [new file with mode: 0644]
tests/bits/dynamic_sparsity_pattern_iterator_05.output [new file with mode: 0644]
tests/bits/dynamic_sparsity_pattern_iterator_06.cc [new file with mode: 0644]
tests/bits/dynamic_sparsity_pattern_iterator_06.output [new file with mode: 0644]

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.