[cig-commits] commit: Make solveCoarsestLevel work with p and v.

Mercurial hg at geodynamics.org
Fri Feb 25 14:14:18 PST 2011


changeset:   38:36404d272d27
user:        Walter Landry <wlandry at caltech.edu>
date:        Sat Jan 08 06:27:14 2011 -0800
files:       StokesFACOps/solveCoarsestLevel.C
description:
Make solveCoarsestLevel work with p and v.


diff -r a5e49569deb4 -r 36404d272d27 StokesFACOps/solveCoarsestLevel.C
--- a/StokesFACOps/solveCoarsestLevel.C	Sat Jan 08 06:23:52 2011 -0800
+++ b/StokesFACOps/solveCoarsestLevel.C	Sat Jan 08 06:27:14 2011 -0800
@@ -40,65 +40,52 @@
 #include "SAMRAI/xfer/RefineSchedule.h"
 #include "SAMRAI/xfer/PatchLevelFullFillPattern.h"
 
-namespace SAMRAI {
-  namespace solv {
-
-    /*
+/*
 ********************************************************************
 * FACOperatorStrategy virtual solveCoarsestLevel             *
 * function                                                         *
 ********************************************************************
 */
 
-    int StokesFACOps::solveCoarsestLevel(
-                                         SAMRAIVectorReal<double>& data,
-                                         const SAMRAIVectorReal<double>& residual,
-                                         int coarsest_ln) {
+int SAMRAI::solv::StokesFACOps::solveCoarsestLevel
+(SAMRAIVectorReal<double>& data,
+ const SAMRAIVectorReal<double>& residual,
+ int coarsest_ln)
+{
+  t_solve_coarsest->start();
 
-      t_solve_coarsest->start();
+  checkInputPatchDataIndices();
 
-      checkInputPatchDataIndices();
+  int return_value = 0;
 
-      int return_value = 0;
+  if (d_coarse_solver_choice == "redblack") {
+    d_residual_tolerance_during_smoothing = d_coarse_solver_tolerance;
+    smoothError(data,
+                residual,
+                coarsest_ln,
+                d_coarse_solver_max_iterations);
+    d_residual_tolerance_during_smoothing = -1.0;
+  } else if (d_coarse_solver_choice == "hypre") {
+#ifndef HAVE_HYPRE
+    TBOX_ERROR(d_object_name << ": Coarse level solver choice '"
+               << d_coarse_solver_choice
+               << "' unavailable in "
+               << "scapStokesOps::solveCoarsestLevel.");
+#else
+    return_value = solveCoarsestLevel_HYPRE(data, residual, coarsest_ln);
+#endif
+  } else {
+    TBOX_ERROR(
+               d_object_name << ": Bad coarse level solver choice '"
+               << d_coarse_solver_choice
+               <<
+               "' in scapStokesOps::solveCoarsestLevel.");
+  }
 
-      if (d_coarse_solver_choice == "jacobi") {
-        d_residual_tolerance_during_smoothing = d_coarse_solver_tolerance;
-        smoothError(data,
-                    residual,
-                    coarsest_ln,
-                    d_coarse_solver_max_iterations);
-        d_residual_tolerance_during_smoothing = -1.0;
-      } else if (d_coarse_solver_choice == "redblack") {
-        d_residual_tolerance_during_smoothing = d_coarse_solver_tolerance;
-        smoothError(data,
-                    residual,
-                    coarsest_ln,
-                    d_coarse_solver_max_iterations);
-        d_residual_tolerance_during_smoothing = -1.0;
-      } else if (d_coarse_solver_choice == "hypre") {
-#ifndef HAVE_HYPRE
-        TBOX_ERROR(d_object_name << ": Coarse level solver choice '"
-                   << d_coarse_solver_choice
-                   << "' unavailable in "
-                   << "scapStokesOps::solveCoarsestLevel.");
-#else
-        return_value = solveCoarsestLevel_HYPRE(data, residual, coarsest_ln);
-#endif
-      } else {
-        TBOX_ERROR(
-                   d_object_name << ": Bad coarse level solver choice '"
-                   << d_coarse_solver_choice
-                   <<
-                   "' in scapStokesOps::solveCoarsestLevel.");
-      }
+  xeqScheduleGhostFillNoCoarse(data.getComponentDescriptorIndex(0),
+                               data.getComponentDescriptorIndex(1),
+                               coarsest_ln);
+  t_solve_coarsest->stop();
 
-      // xeqScheduleGhostFillNoCoarse(data.getComponentDescriptorIndex(0),
-      //                              coarsest_ln);
-      abort();
-      t_solve_coarsest->stop();
-
-      return return_value;
-    }
-
-  }
+  return return_value;
 }



More information about the CIG-COMMITS mailing list