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

Stephane Popinet popinet at users.sf.net
Fri May 15 02:56:18 UTC 2009


The following commit has been merged in the upstream branch:
commit 35acbf6978b200605e2a0014158acab5f66f399e
Author: Stephane Popinet <popinet at users.sf.net>
Date:   Thu Apr 30 18:35:23 2009 +1000

    New function gfs_advance_tracers()
    
    Ignore-this: f10337647b9c268b72a5e2995ff3c44f
    
    darcs-hash:20090430083523-d4795-dc5815f19ca678ba3144191df6940eb406b73802.gz

diff --git a/src/simulation.c b/src/simulation.c
index 2803474..3731cd9 100644
--- a/src/simulation.c
+++ b/src/simulation.c
@@ -348,8 +348,16 @@ static void simulation_read (GtsObject ** object, GtsFile * fp)
   sim->modules = g_slist_reverse (sim->modules);
 }
 
-static void advance_tracers (GfsDomain * domain, gdouble dt)
+/**
+ * gfs_advance_tracers:
+ * @domain: a #GfsDomain.
+ *
+ * Performs advection/difussion of tracers associated with @domain.
+ */
+void gfs_advance_tracers (GfsDomain * domain, gdouble dt)
 {
+  g_return_if_fail (domain != NULL);
+
   GSList * i = domain->variables;
   while (i) {
     if (GFS_IS_VARIABLE_TRACER_VOF (i->data)) {
@@ -414,7 +422,7 @@ static void simulation_run (GfsSimulation * sim)
 				&sim->advection_params,
 				p, sim->physical_params.alpha, res, g);
     gfs_simulation_set_timestep (sim);
-    advance_tracers (domain, sim->advection_params.dt/2.);
+    gfs_advance_tracers (domain, sim->advection_params.dt/2.);
   }
   else if (sim->advection_params.gc)
     gfs_update_gradients (domain, p, sim->physical_params.alpha, g);
@@ -466,7 +474,7 @@ static void simulation_run (GfsSimulation * sim)
     sim->time.i++;
 
     gfs_simulation_set_timestep (sim);
-    advance_tracers (domain, sim->advection_params.dt);
+    gfs_advance_tracers (domain, sim->advection_params.dt);
 
     gts_range_add_value (&domain->timestep, gfs_clock_elapsed (domain->timer) - tstart);
     gts_range_update (&domain->timestep);
@@ -1586,7 +1594,7 @@ static void advection_run (GfsSimulation * sim)
 
     gfs_simulation_set_timestep (sim);
 
-    advance_tracers (domain, sim->advection_params.dt);
+    gfs_advance_tracers (domain, sim->advection_params.dt);
 
     gts_container_foreach (GTS_CONTAINER (sim->events), (GtsFunc) gfs_event_half_do, sim);
 
diff --git a/src/simulation.h b/src/simulation.h
index 62ce32a..8a5de07 100644
--- a/src/simulation.h
+++ b/src/simulation.h
@@ -96,6 +96,8 @@ struct _GfsSimulationClass {
 #define GFS_IS_SIMULATION(obj)         (gts_object_is_from_class (obj,\
 						   gfs_simulation_class ()))
 
+void                 gfs_advance_tracers         (GfsDomain * domain, 
+						  gdouble dt);
 GfsSimulationClass * gfs_simulation_class        (void);
 GfsSimulation *      gfs_simulation_new          (GfsSimulationClass * klass);
 void                 gfs_simulation_init         (GfsSimulation * sim);

-- 
Gerris Flow Solver



More information about the debian-science-commits mailing list