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

Stephane Popinet popinet at users.sourceforge.net
Fri May 15 02:51:14 UTC 2009


The following commit has been merged in the upstream branch:
commit a395394cb31e09039e8b305375775cebb29fd6cc
Author: Stephane Popinet <popinet at users.sourceforge.net>
Date:   Wed Oct 13 06:01:45 2004 +1000

    Checks for periodic bc in interpolations (gerris--mainline--0.5--patch-4)
    
    gerris--mainline--0.5--patch-4
    Keywords:
    
    Periodic boundary conditions do not work yet with interpolations for
    solid boundary fluxes and for corner values.
    
    darcs-hash:20041012200145-aabb8-94af51bca6252342adf5edb3ed02a0025e62d5cf.gz

diff --git a/src/fluid.c b/src/fluid.c
index 27ea217..703d4c4 100644
--- a/src/fluid.c
+++ b/src/fluid.c
@@ -819,6 +819,7 @@ static gboolean face_bilinear (const FttCellFace * face,
     (*cell_pos) (n[i + 1], &cm);
     cm.x = (cm.x - o->x)/size;
     cm.y = (cm.y - o->y)/size;
+    g_assert (fabs (cm.x) <= 5./2. && fabs (cm.y) <= 5./2.);
     m[i][0] = cm.x;
     m[i][1] = cm.y; 
     m[i][2] = cm.x*cm.y;
@@ -870,6 +871,8 @@ static gboolean face_bilinear (const FttCellFace * face,
     cm.x = (cm.x - o->x)/size;
     cm.y = (cm.y - o->y)/size;
     cm.z = (cm.z - o->z)/size;
+    if (fabs (cm.x) > 4. || fabs (cm.y) > 4. || fabs (cm.z) > 4.)
+      output_error_mesh (n);
     m[i][0] = cm.x;
     m[i][1] = cm.y; 
     m[i][2] = cm.z;
@@ -2446,6 +2449,7 @@ void gfs_cell_corner_interpolator (FttCell * cell,
 	gdouble a;
 	FttVector cm;
 	(*cell_pos) (n[i], &cm);
+	/* fixme: what about periodic boundaries? */
 	a = 1./((cm.x - c.x)*(cm.x - c.x) + (cm.y - c.y)*(cm.y - c.y)
 #if (!FTT_2D)
 		+ (cm.z - c.z)*(cm.z - c.z)

-- 
Gerris Flow Solver



More information about the debian-science-commits mailing list