From 02746c338fe5cf201451e81a5acc38ddd06b0df4 Mon Sep 17 00:00:00 2001 From: Martin Kronbichler Date: Sat, 10 Jun 2017 12:25:11 +0200 Subject: [PATCH] Simplify step() in PreconditionChebyshev. --- include/deal.II/lac/precondition.h | 24 ++++++------------------ 1 file changed, 6 insertions(+), 18 deletions(-) diff --git a/include/deal.II/lac/precondition.h b/include/deal.II/lac/precondition.h index 723078a450..4b39bb9ec9 100644 --- a/include/deal.II/lac/precondition.h +++ b/include/deal.II/lac/precondition.h @@ -2221,15 +2221,9 @@ PreconditionChebyshev if (is_initialized == false) estimate_eigenvalues(src); - if (!dst.all_zero()) - { - matrix_ptr->vmult (update2, dst); - internal::PreconditionChebyshev::vector_updates - (src, *data.preconditioner, false, 0., 1./theta, update1, update2, update3, dst); - } - else - internal::PreconditionChebyshev::vector_updates - (src, *data.preconditioner, true, 0., 1./theta, update1, update2, update3, dst); + matrix_ptr->vmult (update2, dst); + internal::PreconditionChebyshev::vector_updates + (src, *data.preconditioner, false, 0., 1./theta, update1, update2, update3, dst); do_chebyshev_loop(dst, src); } @@ -2247,15 +2241,9 @@ PreconditionChebyshev if (is_initialized == false) estimate_eigenvalues(src); - if (!dst.all_zero()) - { - matrix_ptr->Tvmult (update2, dst); - internal::PreconditionChebyshev::vector_updates - (src, *data.preconditioner, false, 0., 1./theta, update1, update2, update3, dst); - } - else - internal::PreconditionChebyshev::vector_updates - (src, *data.preconditioner, true, 0., 1./theta, update1, update2, update3, dst); + matrix_ptr->Tvmult (update2, dst); + internal::PreconditionChebyshev::vector_updates + (src, *data.preconditioner, false, 0., 1./theta, update1, update2, update3, dst); do_transpose_chebyshev_loop(dst, src); } -- 2.39.5