tput tests in separate folder - 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 faa21e62b93f6998ea8a3108b8b58629a8ed8d5d
 (DIR) parent c3e0b8d528cae8ad2e8b04ff4ea49ca565c50504
 (HTM) Author: Anders Damsgaard <anders.damsgaard@geo.au.dk>
       Date:   Wed, 23 Mar 2016 13:01:08 -0700
       
       put tests in separate folder
       
       Diffstat:
         M .gitignore                          |       1 -
         M Makefile                            |      17 ++++-------------
         A slidergrid/constants.h              |       6 ++++++
         M slidergrid/main.c                   |       3 +--
         M slidergrid/simulation.c             |       3 +++
         D test.c                              |      46 -------------------------------
         A tests/Makefile                      |      34 +++++++++++++++++++++++++++++++
         A tests/twograins.c                   |      46 +++++++++++++++++++++++++++++++
       
       8 files changed, 94 insertions(+), 62 deletions(-)
       ---
 (DIR) diff --git a/.gitignore b/.gitignore
       t@@ -1,4 +1,3 @@
       -slidergrid
        .*.swp
        *.o
        tags
 (DIR) diff --git a/Makefile b/Makefile
       t@@ -2,28 +2,19 @@ CC=gcc
        #CFLAGS=-Wall -O3 -march=native
        CFLAGS=-Wall -g -pg
        LDLIBS=-lm
       -SRCFOLDER=slidergrid
       +SRCFOLDER=../slidergrid
        ESSENTIALOBJS=$(SRCFOLDER)/main.o \
                                  $(SRCFOLDER)/slider.o \
                                  $(SRCFOLDER)/grid.o \
                                  $(SRCFOLDER)/vector_math.o \
                                  $(SRCFOLDER)/simulation.o
       -BIN=test
       +BIN=example
        
       -default: run-test
       +default: example
        
       -run-test: test
       -        ./$< --verbose
       -        @#python postprocessing.py --plot-sliders $<-output
       -        @#rsync -rav test-output /var/www/html/
       -
       -test: test.o $(ESSENTIALOBJS)
       +example: example.o $(ESSENTIALOBJS)
                $(CC) $(LDLIBS) $^ -o $@
        
       -profile: $(BIN)
       -        @gprof $< > $<-profile.txt
       -        @less $<-profile.txt
       -
        debug: $(BIN)
                @gdb $<
        
 (DIR) diff --git a/slidergrid/constants.h b/slidergrid/constants.h
       t@@ -0,0 +1,6 @@
       +#ifndef CONSTANTS_H_
       +#define CONSTANTS_H_
       +
       +const char* VERSION = "beta-0.1";
       +
       +#endif
 (DIR) diff --git a/slidergrid/main.c b/slidergrid/main.c
       t@@ -8,8 +8,7 @@
        #include "grid.h"
        #include "simulation.h"
        #include "debug.h"
       -
       -const char* VERSION = "beta-0.1";
       +#include "constants.h"
        
        void print_usage(char* argv0)
        {
 (DIR) diff --git a/slidergrid/simulation.c b/slidergrid/simulation.c
       t@@ -2,6 +2,7 @@
        #include <math.h>
        #include "slider.h"
        #include "simulation.h"
       +#include "constants.h"
        
        simulation create_simulation()
        {
       t@@ -129,6 +130,8 @@ int save_general_state_to_file(const simulation* sim, const char* filename)
                return 1;
            }
        
       +    fprintf(f, "version = %s\n", VERSION);
       +    fprintf(f, "id = %s\n", sim->id);
            fprintf(f, "id = %s\n", sim->id);
            fprintf(f, "N = %d\n", sim->N);
            fprintf(f, "time = %f\n", sim->time);
 (DIR) diff --git a/test.c b/test.c
       t@@ -1,46 +0,0 @@
       -#include "slidergrid/simulation.h"
       -#include "slidergrid/grid.h"
       -#include "slidergrid/slider.h"
       -
       -#include <stdio.h>
       -
       -// test a regular, 2d, orthogonal grid of sliders
       -simulation setup_simulation()
       -{
       -    // create empty simulation structure with default values
       -    simulation sim = create_simulation();
       -    sim.id = "test";
       -
       -    // initialize grid of sliders
       -    //int nx = 10;
       -    int nx = 2;
       -    int ny = 1;
       -    int nz = 1;
       -    sim.N = nx*ny*nz;
       -    sim.sliders = create_regular_slider_grid(nx, ny, nz, 1.0, 1.0, 1.0);
       -
       -    sim.bond_length_limit = 1.5;
       -
       -    // set slider masses and moments of inertia
       -    int i;
       -    for (i=0; i<sim.N; i++) {
       -
       -        // set default values
       -        initialize_slider_values(&sim.sliders[i]);
       -
       -        // set custom values for certain parameters
       -        sim.sliders[i].mass = 1.0;
       -        sim.sliders[i].moment_of_inertia = 1.0e3;
       -        sim.sliders[i].bond_parallel_stiffness = 1.0e5;
       -        //sim.sliders[i].bond_parallel_viscosity = 1.0e2;
       -    }
       -
       -    sim.sliders[0].vel.x = 0.01;
       -
       -    // set temporal parameters
       -    sim.time = 0.0;
       -    sim.time_end = 10.0;
       -    sim.file_interval = 0.1;
       -
       -    return sim;
       -}
 (DIR) diff --git a/tests/Makefile b/tests/Makefile
       t@@ -0,0 +1,34 @@
       +CC=gcc
       +#CFLAGS=-Wall -O3 -march=native
       +CFLAGS=-Wall -g -pg
       +LDLIBS=-lm
       +SRCFOLDER=../slidergrid
       +ESSENTIALOBJS=$(SRCFOLDER)/main.o \
       +                          $(SRCFOLDER)/slider.o \
       +                          $(SRCFOLDER)/grid.o \
       +                          $(SRCFOLDER)/vector_math.o \
       +                          $(SRCFOLDER)/simulation.o
       +BIN=test
       +
       +default: run-test
       +
       +run-test: twograins
       +        ./$< --verbose
       +        @#python postprocessing.py --plot-sliders $<-output
       +        @#rsync -rav test-output /var/www/html/
       +
       +twograins: twograins.o $(ESSENTIALOBJS)
       +        $(CC) $(LDLIBS) $^ -o $@
       +
       +profile: $(BIN)
       +        @gprof $< > $<-profile.txt
       +        @less $<-profile.txt
       +
       +debug: $(BIN)
       +        @gdb $<
       +
       +clean:
       +        @$(RM) $(BIN)
       +        @$(RM) -r $(BIN)-output
       +        @$(RM) *.o
       +        @$(RM) $(SRCFOLDER)/*.o
 (DIR) diff --git a/tests/twograins.c b/tests/twograins.c
       t@@ -0,0 +1,46 @@
       +#include "../slidergrid/simulation.h"
       +#include "../slidergrid/grid.h"
       +#include "../slidergrid/slider.h"
       +
       +#include <stdio.h>
       +
       +// test a regular, 2d, orthogonal grid of sliders
       +simulation setup_simulation()
       +{
       +    // create empty simulation structure with default values
       +    simulation sim = create_simulation();
       +    sim.id = "test";
       +
       +    // initialize grid of sliders
       +    //int nx = 10;
       +    int nx = 2;
       +    int ny = 1;
       +    int nz = 1;
       +    sim.N = nx*ny*nz;
       +    sim.sliders = create_regular_slider_grid(nx, ny, nz, 1.0, 1.0, 1.0);
       +
       +    sim.bond_length_limit = 1.5;
       +
       +    // set slider masses and moments of inertia
       +    int i;
       +    for (i=0; i<sim.N; i++) {
       +
       +        // set default values
       +        initialize_slider_values(&sim.sliders[i]);
       +
       +        // set custom values for certain parameters
       +        sim.sliders[i].mass = 1.0;
       +        sim.sliders[i].moment_of_inertia = 1.0e3;
       +        sim.sliders[i].bond_parallel_stiffness = 1.0e5;
       +        //sim.sliders[i].bond_parallel_viscosity = 1.0e2;
       +    }
       +
       +    sim.sliders[0].vel.x = 0.01;
       +
       +    // set temporal parameters
       +    sim.time = 0.0;
       +    sim.time_end = 10.0;
       +    sim.file_interval = 0.1;
       +
       +    return sim;
       +}