]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Rename PETScWrappers::PreconditionerBase to PETScWrappers::PreconditionBase for consi... 11670/head
authorPasquale Africa <pasqualeclaudio.africa@polimi.it>
Wed, 3 Feb 2021 12:29:07 +0000 (12:29 +0000)
committerPasquale Africa <pasqualeclaudio.africa@polimi.it>
Wed, 3 Feb 2021 17:07:30 +0000 (17:07 +0000)
doc/news/changes/minor/20210203PasqualeAfrica [new file with mode: 0644]
include/deal.II/lac/petsc_precondition.h
include/deal.II/lac/petsc_solver.h
source/lac/petsc_precondition.cc
source/lac/petsc_solver.cc
tests/slepc/step-36_parallel.cc
tests/slepc/step-36_parallel_02.cc
tests/slepc/step-36_parallel_03.cc

diff --git a/doc/news/changes/minor/20210203PasqualeAfrica b/doc/news/changes/minor/20210203PasqualeAfrica
new file mode 100644 (file)
index 0000000..42d6305
--- /dev/null
@@ -0,0 +1,4 @@
+Update: class PETScWrappers::PreconditionerBase renamed to
+PETScWrappers::PreconditionBase for consistency.
+<br>
+(Pasquale Claudio Africa, 2021/02/03)
index 7e46a63658eaf6e07b275ef022f802aa166f7ada..c5a27bbc62a33aa7ddc70dfbda439a5e8c02c03f 100644 (file)
@@ -53,18 +53,18 @@ namespace PETScWrappers
    *
    * @ingroup PETScWrappers
    */
-  class PreconditionerBase
+  class PreconditionBase
   {
   public:
     /**
      * Constructor.
      */
-    PreconditionerBase();
+    PreconditionBase();
 
     /**
      * Destructor.
      */
-    virtual ~PreconditionerBase();
+    virtual ~PreconditionBase();
 
     /**
      * Destroys the preconditioner, leaving an object like just after having
@@ -129,12 +129,12 @@ namespace PETScWrappers
    * preconditioner.
    *
    * See the comment in the base class
-   * @ref PreconditionerBase
+   * @ref PreconditionBase
    * for when this preconditioner may or may not work.
    *
    * @ingroup PETScWrappers
    */
-  class PreconditionJacobi : public PreconditionerBase
+  class PreconditionJacobi : public PreconditionBase
   {
   public:
     /**
@@ -212,12 +212,12 @@ namespace PETScWrappers
    * the relevant section of the PETSc manual, but is not implemented here.
    *
    * See the comment in the base class
-   * @ref PreconditionerBase
+   * @ref PreconditionBase
    * for when this preconditioner may or may not work.
    *
    * @ingroup PETScWrappers
    */
-  class PreconditionBlockJacobi : public PreconditionerBase
+  class PreconditionBlockJacobi : public PreconditionBase
   {
   public:
     /**
@@ -285,7 +285,7 @@ namespace PETScWrappers
    *
    * @ingroup PETScWrappers
    */
-  class PreconditionSOR : public PreconditionerBase
+  class PreconditionSOR : public PreconditionBase
   {
   public:
     /**
@@ -345,7 +345,7 @@ namespace PETScWrappers
    *
    * @ingroup PETScWrappers
    */
-  class PreconditionSSOR : public PreconditionerBase
+  class PreconditionSSOR : public PreconditionBase
   {
   public:
     /**
@@ -403,12 +403,12 @@ namespace PETScWrappers
    * each processor.
    *
    * See the comment in the base class
-   * @ref PreconditionerBase
+   * @ref PreconditionBase
    * for when this preconditioner may or may not work.
    *
    * @ingroup PETScWrappers
    */
-  class PreconditionEisenstat : public PreconditionerBase
+  class PreconditionEisenstat : public PreconditionBase
   {
   public:
     /**
@@ -469,7 +469,7 @@ namespace PETScWrappers
    *
    * @ingroup PETScWrappers
    */
-  class PreconditionICC : public PreconditionerBase
+  class PreconditionICC : public PreconditionBase
   {
   public:
     /**
@@ -529,7 +529,7 @@ namespace PETScWrappers
    *
    * @ingroup PETScWrappers
    */
-  class PreconditionILU : public PreconditionerBase
+  class PreconditionILU : public PreconditionBase
   {
   public:
     /**
@@ -587,14 +587,14 @@ namespace PETScWrappers
    * (depending on the settings) performs an exact factorization of the
    * matrix, so it is not necessary to wrap it in an iterative solver. This
    * class is typically used with SolverPreOnly to get a direct
-   * solver. Alternatively, you can use PreconditionerBase::vmult() directly.
+   * solver. Alternatively, you can use PreconditionBase::vmult() directly.
    *
    * @note This is not a parallel preconditioner so it only works in serial
    * computations with a single processor.
    *
    * @ingroup PETScWrappers
    */
-  class PreconditionLU : public PreconditionerBase
+  class PreconditionLU : public PreconditionBase
   {
   public:
     /**
@@ -673,7 +673,7 @@ namespace PETScWrappers
    *
    * @ingroup PETScWrappers
    */
-  class PreconditionBoomerAMG : public PreconditionerBase
+  class PreconditionBoomerAMG : public PreconditionBase
   {
   public:
     /**
@@ -803,7 +803,7 @@ namespace PETScWrappers
    *
    * @ingroup PETScWrappers
    */
-  class PreconditionParaSails : public PreconditionerBase
+  class PreconditionParaSails : public PreconditionBase
   {
   public:
     /**
@@ -913,7 +913,7 @@ namespace PETScWrappers
    *
    * @ingroup PETScWrappers
    */
-  class PreconditionNone : public PreconditionerBase
+  class PreconditionNone : public PreconditionBase
   {
   public:
     /**
@@ -954,6 +954,12 @@ namespace PETScWrappers
      */
     AdditionalData additional_data;
   };
+
+  /**
+   * Alias for backwards-compatibility.
+   * @deprecated Use PETScWrappers::PreconditionBase instead.
+   */
+  using PreconditionerBase DEAL_II_DEPRECATED_EARLY = PreconditionBase;
 } // namespace PETScWrappers
 
 
index 8bd7aa7675bd23feec6088a08f3b0e783446775e..46e7a7eea747773014d06e81068e1f5675588dcc 100644 (file)
@@ -51,7 +51,7 @@ namespace PETScWrappers
 #    ifndef DOXYGEN
   class MatrixBase;
   class VectorBase;
-  class PreconditionerBase;
+  class PreconditionBase;
 #    endif
 
 
@@ -136,10 +136,10 @@ namespace PETScWrappers
      * performance reasons. See class Documentation.
      */
     void
-    solve(const MatrixBase &        A,
-          VectorBase &              x,
-          const VectorBase &        b,
-          const PreconditionerBase &preconditioner);
+    solve(const MatrixBase &      A,
+          VectorBase &            x,
+          const VectorBase &      b,
+          const PreconditionBase &preconditioner);
 
 
     /**
@@ -169,7 +169,7 @@ namespace PETScWrappers
      * intended for use with SLEPc spectral transformation class.
      */
     void
-    initialize(const PreconditionerBase &preconditioner);
+    initialize(const PreconditionBase &preconditioner);
 
   protected:
     /**
index de93af0f36d87fc101305c61f27b50fa2ab2d72e..13aa14efb9134de4626fec4d3bdaa57c34cc1b12 100644 (file)
@@ -33,12 +33,12 @@ DEAL_II_NAMESPACE_OPEN
 
 namespace PETScWrappers
 {
-  PreconditionerBase::PreconditionerBase()
+  PreconditionBase::PreconditionBase()
     : pc(nullptr)
     , matrix(nullptr)
   {}
 
-  PreconditionerBase::~PreconditionerBase()
+  PreconditionBase::~PreconditionBase()
   {
     try
       {
@@ -49,7 +49,7 @@ namespace PETScWrappers
   }
 
   void
-  PreconditionerBase::clear()
+  PreconditionBase::clear()
   {
     matrix = nullptr;
 
@@ -63,7 +63,7 @@ namespace PETScWrappers
 
 
   void
-  PreconditionerBase::vmult(VectorBase &dst, const VectorBase &src) const
+  PreconditionBase::vmult(VectorBase &dst, const VectorBase &src) const
   {
     AssertThrow(pc != nullptr, StandardExceptions::ExcInvalidState());
 
@@ -73,7 +73,7 @@ namespace PETScWrappers
 
 
   void
-  PreconditionerBase::Tvmult(VectorBase &dst, const VectorBase &src) const
+  PreconditionBase::Tvmult(VectorBase &dst, const VectorBase &src) const
   {
     AssertThrow(pc != nullptr, StandardExceptions::ExcInvalidState());
 
@@ -83,7 +83,7 @@ namespace PETScWrappers
 
 
   void
-  PreconditionerBase::create_pc()
+  PreconditionBase::create_pc()
   {
     // only allow the creation of the
     // preconditioner once
@@ -110,13 +110,13 @@ namespace PETScWrappers
 
 
   const PC &
-  PreconditionerBase::get_pc() const
+  PreconditionBase::get_pc() const
   {
     return pc;
   }
 
 
-  PreconditionerBase::operator Mat() const
+  PreconditionBase::operator Mat() const
   {
     return matrix;
   }
index 5462c3cb51e555a5f79d740a3e3fc2225ebf9a55..ad9d181573580eed97f56c170af65e7f80d8b6e0 100644 (file)
@@ -50,10 +50,10 @@ namespace PETScWrappers
 
 
   void
-  SolverBase::solve(const MatrixBase &        A,
-                    VectorBase &              x,
-                    const VectorBase &        b,
-                    const PreconditionerBase &preconditioner)
+  SolverBase::solve(const MatrixBase &      A,
+                    VectorBase &            x,
+                    const VectorBase &      b,
+                    const PreconditionBase &preconditioner)
   {
     /*
       TODO: PETSc duplicates communicators, so this does not work (you put
@@ -210,7 +210,7 @@ namespace PETScWrappers
   }
 
   void
-  SolverBase::initialize(const PreconditionerBase &preconditioner)
+  SolverBase::initialize(const PreconditionBase &preconditioner)
   {
     PetscErrorCode ierr;
 
index 22f10a2fc20a73867c4894827a8876a6878e2060..43745d78a93e891e8eb093372795a0a4f4a277ba 100644 (file)
@@ -217,7 +217,7 @@ test(std::string solver_name, std::string preconditioner_name)
 
   // test SLEPc by
   {
-    PETScWrappers::PreconditionerBase *preconditioner;
+    PETScWrappers::PreconditionBase *preconditioner;
 
     dealii::deallog << preconditioner_name << std::endl;
     if (preconditioner_name == "Jacobi")
index 503bcc5e60fb4177348ca482b057f69e70a9b163..bf0010d0b1e35b628fbc23a473cfce5708c7594b 100644 (file)
@@ -217,7 +217,7 @@ test(std::string solver_name, std::string preconditioner_name)
 
   // test SLEPc by
   {
-    PETScWrappers::PreconditionerBase *preconditioner;
+    PETScWrappers::PreconditionBase *preconditioner;
 
     dealii::deallog << preconditioner_name << std::endl;
     if (preconditioner_name == "Jacobi")
index 1a86c9284be106c022d400ec427898bd68736e9a..d2b63d94354271b72768c2dee909d384ffeeb685 100644 (file)
@@ -217,7 +217,7 @@ test(std::string solver_name, std::string preconditioner_name)
 
   // test SLEPc by
   {
-    PETScWrappers::PreconditionerBase *preconditioner;
+    PETScWrappers::PreconditionBase *preconditioner;
 
     dealii::deallog << preconditioner_name << std::endl;
     if (preconditioner_name == "Jacobi")

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.