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

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


The following commit has been merged in the upstream branch:
commit 4034d517723d81b14c6d1fc9e74d0c04ab982979
Author: Stephane Popinet <popinet at users.sf.net>
Date:   Sun Apr 19 17:24:50 2009 +1000

    Fix for dimensioning of GfsSurfaceBc
    
    darcs-hash:20090419072450-d4795-ee8c62f72cac6fa214e13e3ec4959e22b387c5bb.gz

diff --git a/src/timestep.c b/src/timestep.c
index 001c90f..4d9dc16 100644
--- a/src/timestep.c
+++ b/src/timestep.c
@@ -975,15 +975,16 @@ static void gfs_surface_bc_write (GtsObject * o, FILE * fp)
 static void gfs_surface_bc_bc (FttCell * cell, GfsSurfaceGenericBc * b)
 {
   GfsSurfaceBc * bc = GFS_SURFACE_BC (b);
-  gdouble val = gfs_function_value (bc->val, cell);
 
   if (gfs_function_value (bc->type, cell) > 0.) {
     cell->flags |= GFS_FLAG_DIRICHLET;
-    GFS_STATE (cell)->solid->fv = val;
+    gfs_function_set_units (bc->val, GFS_SURFACE_GENERIC_BC (bc)->v->units);
+    GFS_STATE (cell)->solid->fv = gfs_function_value (bc->val, cell);
   }
   else {
     cell->flags &= ~GFS_FLAG_DIRICHLET;
-    GFS_STATE (cell)->solid->fv = val; /* fixme: scaling is probably wrong */
+    gfs_function_set_units (bc->val, GFS_SURFACE_GENERIC_BC (bc)->v->units - 1.);
+    GFS_STATE (cell)->solid->fv = gfs_function_value (bc->val, cell);
   }
 }
 

-- 
Gerris Flow Solver



More information about the debian-science-commits mailing list