]> https://gitweb.dealii.org/ - dealii-svn.git/commit
Make the local_to_global functions in the ConstraintMatrix even more efficient by...
authorkronbichler <kronbichler@0785d39b-7218-0410-832d-ea1e28bc413d>
Wed, 25 Mar 2009 16:55:27 +0000 (16:55 +0000)
committerkronbichler <kronbichler@0785d39b-7218-0410-832d-ea1e28bc413d>
Wed, 25 Mar 2009 16:55:27 +0000 (16:55 +0000)
commit51d384a489d3258f9cd30dd9c52bafcde0138d94
tree7eba7a118012b13b8f1cd2a99468d29c18acf02f
parentcce158ed5fc6a9837db337d695cfef08b78d42d7
Make the local_to_global functions in the ConstraintMatrix even more efficient by pre-sorting all the rows and columns that are going to be written into the sparsity pattern / sparse matrix. This makes the values added for each element really unique, which is faster. Moreover, the matrix and sparsity pattern classes can now take an additional argument sorted when adding many elements, and some of them already make use of the sorted-ness. For block matrices, the sortedness is used in an even more clever way by writing directly into the blocks (even though I had to introduce a lot of duplicate code to be in line with the templates).

git-svn-id: https://svn.dealii.org/trunk@18512 0785d39b-7218-0410-832d-ea1e28bc413d
13 files changed:
deal.II/lac/include/lac/block_matrix_base.h
deal.II/lac/include/lac/compressed_set_sparsity_pattern.h
deal.II/lac/include/lac/compressed_simple_sparsity_pattern.h
deal.II/lac/include/lac/compressed_sparsity_pattern.h
deal.II/lac/include/lac/constraint_matrix.templates.h
deal.II/lac/include/lac/petsc_matrix_base.h
deal.II/lac/include/lac/sparse_matrix.h
deal.II/lac/include/lac/sparse_matrix_ez.h
deal.II/lac/include/lac/sparsity_pattern.h
deal.II/lac/include/lac/trilinos_sparse_matrix.h
deal.II/lac/include/lac/trilinos_sparsity_pattern.h
deal.II/lac/source/sparsity_pattern.cc
deal.II/lac/source/trilinos_sparse_matrix.cc

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.