From 42f07be4ae9aac3f4b4eaa58e2b014246e229035 Mon Sep 17 00:00:00 2001 From: bangerth Date: Mon, 6 Dec 2010 02:23:18 +0000 Subject: [PATCH] Remove a class that is now no longer needed. git-svn-id: https://svn.dealii.org/trunk@22926 0785d39b-7218-0410-832d-ea1e28bc413d --- deal.II/examples/step-32/step-32.cc | 56 ++--------------------------- 1 file changed, 3 insertions(+), 53 deletions(-) diff --git a/deal.II/examples/step-32/step-32.cc b/deal.II/examples/step-32/step-32.cc index 662a3879dc..5c2178cd25 100644 --- a/deal.II/examples/step-32/step-32.cc +++ b/deal.II/examples/step-32/step-32.cc @@ -300,52 +300,6 @@ namespace LinearSolvers const PreconditionerMp &mp_preconditioner; const PreconditionerA &a_preconditioner; }; - - template - class BlockSchurPreconditioner : public Subscriptor - { - public: - BlockSchurPreconditioner ( - const TrilinosWrappers::BlockSparseMatrix &S, - const PreconditionerMp &Mppreconditioner, - const PreconditionerA &Apreconditioner); - - void vmult (TrilinosWrappers::MPI::BlockVector &dst, - const TrilinosWrappers::MPI::BlockVector &src) const; - - private: - const SmartPointer stokes_matrix; - const PreconditionerMp &mp_preconditioner; - const PreconditionerA &a_preconditioner; - mutable TrilinosWrappers::MPI::Vector tmp; - }; - - - - template - BlockSchurPreconditioner:: - BlockSchurPreconditioner(const TrilinosWrappers::BlockSparseMatrix &S, - const PreconditionerMp &Mppreconditioner, - const PreconditionerA &Apreconditioner) - : - stokes_matrix (&S), - mp_preconditioner (Mppreconditioner), - a_preconditioner (Apreconditioner), - tmp (stokes_matrix->block(1,1).row_partitioner()) - {} - - - - template - void BlockSchurPreconditioner::vmult ( - TrilinosWrappers::MPI::BlockVector &dst, - const TrilinosWrappers::MPI::BlockVector &src) const - { - a_preconditioner.vmult (dst.block(0), src.block(0)); - stokes_matrix->block(1,0).residual(tmp, dst.block(0), src.block(1)); - tmp *= -1; - mp_preconditioner.vmult (dst.block(1), tmp); - } } @@ -2753,14 +2707,10 @@ void BoussinesqFlowProblem::solve () computing_timer.enter_section (" Solve Stokes system"); { - const LinearSolvers::BlockSchurPreconditioner - preconditioner (stokes_matrix, *Mp_preconditioner, *Amg_preconditioner); - const LinearSolvers::RightPrecond - preconditioner_right (stokes_matrix, stokes_preconditioner_matrix, - *Mp_preconditioner, *Amg_preconditioner); + preconditioner (stokes_matrix, stokes_preconditioner_matrix, + *Mp_preconditioner, *Amg_preconditioner); TrilinosWrappers::MPI::BlockVector distributed_stokes_solution (stokes_rhs); @@ -2785,7 +2735,7 @@ void BoussinesqFlowProblem::solve () solver(solver_control, mem, SolverFGMRES::AdditionalData(50, true)); solver.solve(stokes_matrix, distributed_stokes_solution, stokes_rhs, - preconditioner_right); + preconditioner); } stokes_constraints.distribute (distributed_stokes_solution); //stokes_solution = distributed_stokes_solution; -- 2.39.5