]> https://gitweb.dealii.org/ - dealii-svn.git/commit
When eliminating boundary values from a matrix, we only have to eliminate the respect...
authorwolf <wolf@0785d39b-7218-0410-832d-ea1e28bc413d>
Wed, 17 May 2000 12:22:49 +0000 (12:22 +0000)
committerwolf <wolf@0785d39b-7218-0410-832d-ea1e28bc413d>
Wed, 17 May 2000 12:22:49 +0000 (12:22 +0000)
commit922d903b5051eff2cb418fad521532756f6802e8
tree7d0c54de42569ee51006979c615f66e9fa75b73d
parent4db6096f73ff32e98fb63efebb897bc7cc68e819
When eliminating boundary values from a matrix, we only have to eliminate the respective element from the other rows for which we know that they have a nonzero element in that column. Previously, we searched all rows for this, but if the sparsity pattern is symmetric then we can do better than that by checking the nonzero elements of the present row and only visiting the respective columns. This reduces the complexity from N*log(m) to m*log(m), where N=size of the matrix and m=number of elements per row, i.e. from O(N) to O(1). In the case of non-symmetric sparsity patterns, it might not be worth to eliminate the respective row, since we have to use a solver for nonsymmetric problems anyway, and that can then eliminate the respective column iteratively.

git-svn-id: https://svn.dealii.org/trunk@2874 0785d39b-7218-0410-832d-ea1e28bc413d
deal.II/deal.II/include/dofs/dof_tools.h
deal.II/deal.II/include/numerics/matrices.h
deal.II/deal.II/source/numerics/base.cc
deal.II/deal.II/source/numerics/matrices.cc
deal.II/deal.II/source/numerics/vectors.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.