]> https://gitweb.dealii.org/ - dealii.git/commitdiff
minlevel nonzero documented and second defect vector added
authorGuido Kanschat <dr.guido.kanschat@gmail.com>
Fri, 11 Mar 2005 00:56:34 +0000 (00:56 +0000)
committerGuido Kanschat <dr.guido.kanschat@gmail.com>
Fri, 11 Mar 2005 00:56:34 +0000 (00:56 +0000)
git-svn-id: https://svn.dealii.org/trunk@10092 0785d39b-7218-0410-832d-ea1e28bc413d

deal.II/deal.II/include/multigrid/multigrid.h

index 64498b443f136f709bb7bdc386ba1128a23160e2..ef909a42d8c0fe991b683275a1e7eb323090ed67 100644 (file)
@@ -203,6 +203,16 @@ class Multigrid : public Subscriptor
                                      * of levels used, that is, it
                                      * sets #minlevel to
                                      * #maxlevel-<tt>level</tt>.
+                                     *
+                                     * @note The mesh on the coarsest
+                                     * level must cover the whole
+                                     * domain. There may not be
+                                     * hanging nodes on #minlevel.
+                                     *
+                                     * @note If #minlevel is set to a
+                                     * nonzero value, do not forget
+                                     * to adjust your coarse grid
+                                     * solver!
                                      */
     void set_minlevel(unsigned int level,
                      bool relative = false);
@@ -220,12 +230,6 @@ class Multigrid : public Subscriptor
                                      */
     void set_debug(unsigned int);
     
-                                    /**
-                                     * Exception.
-                                     */
-    DeclException2(ExcSwitchedLevels, int, int,
-                  << "minlevel and maxlevel switched, should be: "
-                  << arg1 << "<=" << arg2);
   private:
     
                                     /**
@@ -292,6 +296,13 @@ class Multigrid : public Subscriptor
                                      */
     MGLevelObject<VECTOR> t;    
 
+                                    /**
+                                     * Auxiliary vector for W- and
+                                     * F-cycles. Left uninitialized
+                                     * in V-cycle.
+                                     */
+    MGLevelObject<VECTOR> defect2;
+
 
                                     /**
                                      * The matrix for each level.
@@ -451,6 +462,7 @@ Multigrid<VECTOR>::Multigrid (const MGDoFHandler<dim>& mg_dof_handler,
                defect(minlevel,maxlevel),
                solution(minlevel,maxlevel),
                t(minlevel,maxlevel),
+               defect2(minlevel,maxlevel),
                matrix(&matrix),
                coarse(&coarse),
                transfer(&transfer),

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.