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

Stephane Popinet popinet at users.sf.net
Fri May 15 02:53:11 UTC 2009


The following commit has been merged in the upstream branch:
commit d12c31cab05a105adf0fdb7683617f7d6428f113
Author: Stephane Popinet <popinet at users.sf.net>
Date:   Thu Mar 30 16:40:12 2006 +1100

    Cells with solid volume fraction of 0 are removed
    
    darcs-hash:20060330054012-d4795-ae76b5f80c5dc5674b9d9e70904c035ce0f29664.gz

diff --git a/src/solid.c b/src/solid.c
index 40ec980..bf17223 100644
--- a/src/solid.c
+++ b/src/solid.c
@@ -331,6 +331,8 @@ static void set_solid_fractions_from_surface (FttCell * cell,
     GFS_VARIABLE (cell, p->status->i) = 1.;
     p->thin++;
   }
+  else if (GFS_STATE (cell)->solid && GFS_STATE (cell)->solid->a == 0.)
+    GFS_VARIABLE (cell, p->status->i) = 1.;
 }
 
 /**
@@ -604,9 +606,10 @@ static void set_solid_fractions_from_surface (FttCell * cell, GtsSurface * s, In
   else {
     solid->cm = solid->ca;
     solid->a = 0.;
-    GFS_VARIABLE (cell, p->status->i) = 1.;
     p->thin++;
   }
+  if (solid->a == 0.)
+    GFS_VARIABLE (cell, p->status->i) = 1.;
 }
 
 /**
@@ -960,9 +963,9 @@ static gboolean check_area_fractions (const FttCell * root)
 
     ftt_cell_bbox (root, &bb);
     if (!gts_bbox_point_is_inside (&bb, &solid->cm)) {
-      g_warning ("file %s: line %d (%s): cm (%g,%g,%g) is not inside cell [(%g,%g,%g),(%g,%g,%g)]",
+      g_warning ("file %s: line %d (%s): cm (%g,%g,%g)/%d is not inside cell [(%g,%g,%g),(%g,%g,%g)]",
 		 __FILE__, __LINE__, G_GNUC_PRETTY_FUNCTION,
-		 solid->cm.x, solid->cm.y, solid->cm.z,
+		 solid->cm.x, solid->cm.y, solid->cm.z, ftt_cell_level (root),
 		 bb.x1, bb.y1, bb.z1, 
 		 bb.x2, bb.y2, bb.z2);
       ret = FALSE;
@@ -986,9 +989,9 @@ static gboolean check_area_fractions (const FttCell * root)
 	      1. - nsolid->s[FTT_OPPOSITE_DIRECTION (i)] >= 1e-10) {
 	    FttVector p;
 	    ftt_cell_pos (root, &p);
-	    g_warning ("file %s: line %d (%s): (%g,%g,%g): s[%d]: %g",		       
+	    g_warning ("file %s: line %d (%s): (%g,%g,%g)/%d: s[%d]: %g",
 		       __FILE__, __LINE__, G_GNUC_PRETTY_FUNCTION,
-		       p.x, p.y, p.z,
+		       p.x, p.y, p.z, ftt_cell_level (root),
 		       FTT_OPPOSITE_DIRECTION (i),
 		       nsolid->s[FTT_OPPOSITE_DIRECTION (i)]);
 	    ret = FALSE;
@@ -1000,9 +1003,9 @@ static gboolean check_area_fractions (const FttCell * root)
 		    nsolid->s[FTT_OPPOSITE_DIRECTION (i)]) >= 1e-10) {
 	    FttVector p;
 	    ftt_cell_pos (root, &p);
-	    g_warning ("file %s: line %d (%s): (%g,%g,%g): s[%d]: %g neighbor->s[%d]: %g",
+	    g_warning ("file %s: line %d (%s): (%g,%g,%g)/%d: s[%d]: %g neighbor->s[%d]: %g",
 		       __FILE__, __LINE__, G_GNUC_PRETTY_FUNCTION,
-		       p.x, p.y, p.z,
+		       p.x, p.y, p.z, ftt_cell_level (root),
 		       i, solid->s[i],		       
 		       FTT_OPPOSITE_DIRECTION (i),
 		       nsolid->s[FTT_OPPOSITE_DIRECTION (i)]);
@@ -1013,9 +1016,9 @@ static gboolean check_area_fractions (const FttCell * root)
 	else if (1. - solid->s[i] >= 1e-10) {
 	  FttVector p;
 	  ftt_cell_pos (root, &p);
-	  g_warning ("file %s: line %d (%s): (%g,%g,%g): s[%d]: %g",		     
+	  g_warning ("file %s: line %d (%s): (%g,%g,%g)/%d: s[%d]: %g",
 		     __FILE__, __LINE__, G_GNUC_PRETTY_FUNCTION,
-		     p.x, p.y, p.z,
+		     p.x, p.y, p.z, ftt_cell_level (root),
 		     i, solid->s[i]);
 	  ret = FALSE;
 	  solid->s[i] = 1.;
@@ -1026,9 +1029,9 @@ static gboolean check_area_fractions (const FttCell * root)
 	if (GFS_IS_FLUID (neighbor.c[i]) && GFS_IS_MIXED (root) && 1. - solid->s[i] >= 1e-10) {
 	  FttVector p;
 	  ftt_cell_pos (root, &p);
-	  g_warning ("file %s: line %d (%s): (%g,%g,%g): s[%d]: %g",
+	  g_warning ("file %s: line %d (%s): (%g,%g,%g)/%d: s[%d]: %g",
 		     __FILE__, __LINE__, G_GNUC_PRETTY_FUNCTION,
-		     p.x, p.y, p.z,
+		     p.x, p.y, p.z, ftt_cell_level (root),
 		     i, solid->s[i]);
 	  ret = FALSE;
 	  solid->s[i] = 1.;

-- 
Gerris Flow Solver



More information about the debian-science-commits mailing list