[cig-commits] [commit] master: set initial guess for inner solvers to zero (44716eb)
cig_noreply at geodynamics.org
cig_noreply at geodynamics.org
Fri Jan 16 11:08:25 PST 2015
Repository : https://github.com/geodynamics/aspect
On branch : master
Link : https://github.com/geodynamics/aspect/compare/3f763d389177ff99232a1c757ea52153b3f81be0...a402e9ee11ecde97fdd49aecc0a7604d514d446a
>---------------------------------------------------------------
commit 44716eb73999c6f12adcfc9e241c86ac0549d37b
Author: Timo Heister <timo.heister at gmail.com>
Date: Fri Jan 16 08:16:25 2015 -0500
set initial guess for inner solvers to zero
>---------------------------------------------------------------
44716eb73999c6f12adcfc9e241c86ac0549d37b
doc/modules/changes.h | 5 +++++
source/simulator/solver.cc | 4 +++-
2 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/doc/modules/changes.h b/doc/modules/changes.h
index 01b1eb8..1607308 100644
--- a/doc/modules/changes.h
+++ b/doc/modules/changes.h
@@ -6,6 +6,11 @@
*
*
* <ol>
+ * <li> Fixed: the inner solvers for the Stokes block preconditioner now start
+ * with a zero initial guess. This should make the solvers more robust.
+ * <br>
+ * (Timo Heister, 2015/01/16)
+
* <li> ASPECT now requires deal.II version 8.2 or later.
* <br>
* (Timo Heister, 2015/01/13)
diff --git a/source/simulator/solver.cc b/source/simulator/solver.cc
index fe76c5b..71e6412 100644
--- a/source/simulator/solver.cc
+++ b/source/simulator/solver.cc
@@ -280,10 +280,11 @@ namespace aspect
// convergence without
// iterating. We simply skip
// solving in this case.
- if (src.block(1).l2_norm() > 1e-50 || dst.block(1).l2_norm() > 1e-50)
+ if (src.block(1).l2_norm() > 1e-50)
{
try
{
+ dst.block(1) = 0.0;
solver.solve(stokes_preconditioner_matrix.block(1,1),
dst.block(1), src.block(1),
mp_preconditioner);
@@ -328,6 +329,7 @@ namespace aspect
#endif
try
{
+ dst.block(0) = 0.0;
solver.solve(stokes_matrix.block(0,0), dst.block(0), utmp,
a_preconditioner);
n_iterations_A_ += solver_control.last_step();
More information about the CIG-COMMITS
mailing list