From: bangerth Date: Thu, 20 Mar 2008 13:45:46 +0000 (+0000) Subject: Teach SolverQMRS how to deal with block vectors. X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=243013f3c1541f1abca53b44ab04b5a6445a4067;p=dealii-svn.git Teach SolverQMRS how to deal with block vectors. git-svn-id: https://svn.dealii.org/trunk@15920 0785d39b-7218-0410-832d-ea1e28bc413d --- diff --git a/deal.II/doc/news/changes.h b/deal.II/doc/news/changes.h index 06d213e89e..b5d2f34ae4 100644 --- a/deal.II/doc/news/changes.h +++ b/deal.II/doc/news/changes.h @@ -214,6 +214,12 @@ an integer id of the current thread.

lac

    +
  1. Fixed: The SolverQMRS class could not deal with block vectors +and block matrices. This is now fixed. +
    +(WB 2008/3/20) +
  2. +
  3. Fixed: The implementation of SparseILU::decompose was rather inefficient in that it accessed random elements of the matrix in its inner loop. It has been replaced by the algorithm given in the book diff --git a/deal.II/lac/include/lac/solver_qmrs.h b/deal.II/lac/include/lac/solver_qmrs.h index 28b401fad0..da6676615a 100644 --- a/deal.II/lac/include/lac/solver_qmrs.h +++ b/deal.II/lac/include/lac/solver_qmrs.h @@ -2,7 +2,7 @@ // $Id$ // Version: $Name$ // -// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 by the deal.II authors +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 by the deal.II authors // // This file is subject to QPL and may not be distributed // without copyright and license information. Please refer @@ -270,10 +270,10 @@ SolverQMRS::solve (const MATRIX &A, // resize the vectors, but do not set // the values since they'd be overwritten // soon anyway. - Vv->reinit(x.size(), true); - Vp->reinit(x.size(), true); - Vq->reinit(x.size(), true); - Vt->reinit(x.size(), true); + Vv->reinit(x, true); + Vp->reinit(x, true); + Vq->reinit(x, true); + Vt->reinit(x, true); step = 0;