[cig-commits] commit: Use geometric interpolation for edge viscosity instead of harmonic. Seems to improve convergence.

Mercurial hg at geodynamics.org
Wed Apr 20 16:56:06 PDT 2011


changeset:   182:757a9abc214f
tag:         tip
user:        Walter Landry <wlandry at caltech.edu>
date:        Wed Apr 20 16:54:56 2011 -0700
files:       FACStokes/fix_viscosity.C
description:
Use geometric interpolation for edge viscosity instead of harmonic.  Seems to improve convergence.


diff -r 6f94da5f348e -r 757a9abc214f FACStokes/fix_viscosity.C
--- a/FACStokes/fix_viscosity.C	Wed Apr 20 10:34:35 2011 -0700
+++ b/FACStokes/fix_viscosity.C	Wed Apr 20 16:54:56 2011 -0700
@@ -131,10 +131,8 @@ void SAMRAI::FACStokes::fix_viscosity()
               cell_viscosity(c-jp);
               cell_viscosity(c-ip-jp);
               edge_viscosity(e)=
-                1/(1/cell_viscosity(c)
-                   + 1/cell_viscosity(c-ip)
-                   + 1/cell_viscosity(c-jp)
-                   + 1/cell_viscosity(c-ip-jp));
+                pow(cell_viscosity(c)*cell_viscosity(c-ip)
+                    *cell_viscosity(c-jp)*cell_viscosity(c-ip-jp),0.25);
             }
         }
       else
@@ -149,14 +147,14 @@ void SAMRAI::FACStokes::fix_viscosity()
                   pdat::EdgeIndex e=ni();
                   pdat::CellIndex c(e);
                   edge_viscosity(e)=
-                    1/(1/cell_viscosity(c)
-                       + 1/cell_viscosity(c-ip)
-                       + 1/cell_viscosity(c-jp)
-                       + 1/cell_viscosity(c-ip-jp)
-                       + 1/cell_viscosity(c-kp)
-                       + 1/cell_viscosity(c-ip-kp)
-                       + 1/cell_viscosity(c-jp-kp)
-                       + 1/cell_viscosity(c-ip-jp-kp));
+                    pow(cell_viscosity(c)
+                        *cell_viscosity(c-ip)
+                        *cell_viscosity(c-jp)
+                        *cell_viscosity(c-ip-jp)
+                        *cell_viscosity(c-kp)
+                        *cell_viscosity(c-ip-kp)
+                        *cell_viscosity(c-jp-kp)
+                        *cell_viscosity(c-ip-jp-kp),0.125);
                 }
             }
         }



More information about the CIG-COMMITS mailing list