[SCM] Gerris Flow Solver branch, upstream, updated. b3aa46814a06c9cb2912790b23916ffb44f1f203

Stephane Popinet popinet at users.sf.net
Fri May 15 02:55:26 UTC 2009


The following commit has been merged in the upstream branch:
commit ee4ea46ae0f213e4315dcb80b935178698b61beb
Author: Stephane Popinet <popinet at users.sf.net>
Date:   Thu Jun 19 07:35:51 2008 +1000

    VariableFiltered defines values on all levels
    
    This should fix bugs when using a filtered variable within alpha (alpha needs
    to be defined on all levels for the viscous terms).
    
    darcs-hash:20080618213551-d4795-2ff7127a96a0c45ddd3fefeebaa4f969b2223ca2.gz

diff --git a/src/variable.c b/src/variable.c
index 95099b3..7628b89 100644
--- a/src/variable.c
+++ b/src/variable.c
@@ -388,10 +388,16 @@ static void variable_filtered_write (GtsObject * o, FILE * fp)
 static void variable_filtered_event_half (GfsEvent * event, GfsSimulation * sim)
 {
   guint n = GFS_VARIABLE_FILTERED (event)->niter;
+  GfsDomain * domain = GFS_DOMAIN (sim);
+  GfsVariable * v = GFS_VARIABLE1 (event);
 
-  gfs_domain_filter (GFS_DOMAIN (sim), GFS_VARIABLE_FILTERED (event)->v, GFS_VARIABLE1 (event));
+  gfs_domain_filter (domain, GFS_VARIABLE_FILTERED (event)->v, v);
   while (--n)
-    gfs_domain_filter (GFS_DOMAIN (sim), GFS_VARIABLE1 (event), NULL);
+    gfs_domain_filter (domain, v, NULL);
+  gfs_domain_cell_traverse (domain,
+			    FTT_POST_ORDER, FTT_TRAVERSE_NON_LEAFS, -1,
+			    (FttCellTraverseFunc) v->fine_coarse, v);
+  gfs_domain_bc (domain, FTT_TRAVERSE_NON_LEAFS, -1, v);
 }
 
 static gboolean variable_filtered_event (GfsEvent * event, GfsSimulation * sim)

-- 
Gerris Flow Solver



More information about the debian-science-commits mailing list