tadd debug information for total slider force balance - slidergrid - grid of elastic sliders on a frictional surface
 (HTM) git clone git://src.adamsgaard.dk/slidergrid
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 75d805810911e239896f6865ab9af0dc10b2f2ed
 (DIR) parent f592a85d991ec58487fb39ba92a7eb3f32b39f75
 (HTM) Author: Anders Damsgaard <anders.damsgaard@geo.au.dk>
       Date:   Tue, 22 Mar 2016 11:28:12 -0700
       
       add debug information for total slider force balance
       
       Diffstat:
         M slidergrid/debug.h                  |       4 ++++
         M slidergrid/main.c                   |      17 ++++++++++++++++-
         M test.c                              |      10 ++++++++++
       
       3 files changed, 30 insertions(+), 1 deletion(-)
       ---
 (DIR) diff --git a/slidergrid/debug.h b/slidergrid/debug.h
       t@@ -5,4 +5,8 @@
        // slider-bond initialization function
        //#define DEBUG_FIND_AND_BOND_TO_NEIGHBORS
        
       +// if defined, verbose information to stdout will be shown before the slider 
       +// integration
       +#define DEBUG_SLIDER_FORCE_TORQUE_AND_NEIGHBORS
       +
        #endif
 (DIR) diff --git a/slidergrid/main.c b/slidergrid/main.c
       t@@ -41,7 +41,7 @@ void print_status(simulation sim)
        
        int main(int argc, char** argv)
        {
       -    int i;
       +    int i, j;
        
            // default values of command-line flags
            int verbose = 0;
       t@@ -137,6 +137,21 @@ int main(int argc, char** argv)
                            sim.N,
                            sim.iteration);
        
       +#ifdef DEBUG_SLIDER_FORCE_TORQUE_AND_NEIGHBORS
       +            printf("Slider %d: F = %f %f %f, T = %f %f %f, neighbors = ",
       +                    i,
       +                    sim.sliders[i].force.x,
       +                    sim.sliders[i].force.y,
       +                    sim.sliders[i].force.z,
       +                    sim.sliders[i].torque.x,
       +                    sim.sliders[i].torque.y,
       +                    sim.sliders[i].torque.z);
       +            for (j=0; j<MAX_NEIGHBORS; j++)
       +                if (sim.sliders[i].neighbors[j] >= 0)
       +                    printf("%d ", sim.sliders[i].neighbors[j]);
       +            puts("");
       +#endif
       +
                    // update slider kinematics
                    update_kinematics(sim.sliders[i], sim.dt, sim.iteration);
                }
 (DIR) diff --git a/test.c b/test.c
       t@@ -2,6 +2,8 @@
        #include "slidergrid/grid.h"
        #include "slidergrid/slider.h"
        
       +#include <stdio.h>
       +
        // test a regular, 2d, orthogonal grid of sliders
        simulation setup_simulation()
        {
       t@@ -33,5 +35,13 @@ simulation setup_simulation()
            sim.time_end = 1.0;
            sim.file_interval = 0.1;
        
       +    if (write_simulation_output(&sim, ".")) {
       +        fprintf(stderr, "\nFatal error: Could not write one or more "
       +                "output files.\n");
       +    }
       +
       +
       +
       +
            return sim;
        }