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

Stephane Popinet popinet at users.sf.net
Fri May 15 02:54:33 UTC 2009


The following commit has been merged in the upstream branch:
commit 0b7d65fd1e3b3a6d80e41442af8054ebb1dae5e9
Author: Stephane Popinet <popinet at users.sf.net>
Date:   Mon Sep 3 13:36:26 2007 +1000

    Dependency fix for order of variables when writing simulation files
    
    Physical parameters can depend on defined variables. The incorrect order
    could prevent from restarting a simulation.
    
    darcs-hash:20070903033626-d4795-d994e9a90be14c208cdcf3be169185f0eb890862.gz

diff --git a/src/simulation.c b/src/simulation.c
index 556e708..7bf8f85 100644
--- a/src/simulation.c
+++ b/src/simulation.c
@@ -67,22 +67,22 @@ static void simulation_write (GtsObject * object, FILE * fp)
     (object, fp);
 
   fputs (" {\n", fp);
+
+  i = sim->modules;
+  while (i) {
+    fprintf (fp, "  GModule %s\n", g_module_name (i->data));
+    i = i->next;
+  }
+
   i = sim->globals;
   while (i) {
     fputs ("  ", fp);
     (* GTS_OBJECT (i->data)->klass->write) (i->data, fp);
     i = i->next;
   }
+
   fputs ("  GfsTime ", fp);
   gfs_time_write (&sim->time, fp);
-  fputs ("\n  GfsPhysicalParams ", fp);
-  gfs_physical_params_write (&sim->physical_params, fp);
-  fputs ("\n  GfsAdvectionParams ", fp);
-  gfs_advection_params_write (&sim->advection_params, fp);
-  fputs ("\n  GfsApproxProjectionParams ", fp);
-  gfs_multilevel_params_write (&sim->approx_projection_params, fp);
-  fputs ("\n  GfsProjectionParams ", fp);
-  gfs_multilevel_params_write (&sim->projection_params, fp);
   fputc ('\n', fp);
 
   i = sim->variables;
@@ -93,12 +93,6 @@ static void simulation_write (GtsObject * object, FILE * fp)
     i = i->next;
   }
 
-  i = sim->modules;
-  while (i) {
-    fprintf (fp, "  GModule %s\n", g_module_name (i->data));
-    i = i->next;
-  }
-
   i = GFS_DOMAIN (sim)->variables;
   while (i) {
     v = i->data;
@@ -137,6 +131,16 @@ static void simulation_write (GtsObject * object, FILE * fp)
     i = i->next;
   }
 
+  fputs ("  GfsPhysicalParams ", fp);
+  gfs_physical_params_write (&sim->physical_params, fp);
+  fputs ("\n  GfsAdvectionParams ", fp);
+  gfs_advection_params_write (&sim->advection_params, fp);
+  fputs ("\n  GfsApproxProjectionParams ", fp);
+  gfs_multilevel_params_write (&sim->approx_projection_params, fp);
+  fputs ("\n  GfsProjectionParams ", fp);
+  gfs_multilevel_params_write (&sim->projection_params, fp);
+  fputc ('\n', fp);
+
   fputc ('}', fp);
 }
 

-- 
Gerris Flow Solver



More information about the debian-science-commits mailing list