[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