tfix include errors - granular - granular dynamics simulation
(HTM) git clone git://src.adamsgaard.dk/granular
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) README
(DIR) LICENSE
---
(DIR) commit 7dd9725c18d77d9d8284980f7d952a58d03f4ca0
(DIR) parent 8562f7577153f279b2ce74b35a9016690ec9b7f1
(HTM) Author: Anders Damsgaard <anders@adamsgaard.dk>
Date: Fri, 19 Mar 2021 22:05:36 +0100
fix include errors
Diffstat:
M arrays.h | 2 --
M grain.c | 26 ++++++++++----------------
M grain.h | 28 ++++++++++++----------------
M granular2vtu.c | 7 ++++---
M packing.h | 3 ---
M simulation.c | 8 +++++---
M simulation.h | 4 ----
7 files changed, 31 insertions(+), 47 deletions(-)
---
(DIR) diff --git a/arrays.h b/arrays.h
t@@ -1,5 +1,3 @@
-#include <stdio.h>
-
#ifndef ARRAYS_
#define ARRAYS_
(DIR) diff --git a/grain.c b/grain.c
t@@ -23,7 +23,7 @@ grain_defaults(struct grain *g)
size_t i;
g->radius = 1.0;
- for (i = 0; i < ND; i++) {
+ for (i = 0; i < 3; i++) {
g->pos[i]
= g->vel[i]
= g->acc[i]
t@@ -57,11 +57,8 @@ print_padded_nd_double(FILE *stream, const double *arr)
{
size_t i;
- for (i = 0; i < ND; i++)
- if (i < ND)
- fprintf(stream, "%.*g\t", FLOATPREC, arr[i]);
- else
- fprintf(stream, "0.0\t");
+ for (i = 0; i < 3; i++)
+ fprintf(stream, "%.*g\t", FLOATPREC, arr[i]);
}
static void
t@@ -69,11 +66,8 @@ print_padded_nd_int(FILE *stream, const size_t *arr)
{
size_t i;
- for (i = 0; i < ND; i++)
- if (i < ND)
- fprintf(stream, "%zu\t", arr[i]);
- else
- fprintf(stream, "0.0\t");
+ for (i = 0; i < 3; i++)
+ fprintf(stream, "%zu\t", arr[i]);
}
void
t@@ -183,7 +177,7 @@ grain_check_values(const struct grain *g)
check_float_positive("grain->radius", g->radius, &status);
- for (i = 0; i < ND; i++) {
+ for (i = 0; i < 3; i++) {
check_float("grain->pos", g->pos[i], &status);
check_float("grain->vel", g->vel[i], &status);
check_float("grain->acc", g->acc[i], &status);
t@@ -220,7 +214,7 @@ grain_check_values(const struct grain *g)
g->fracture_toughness,
&status);
- for (i = 0; i < ND; i++)
+ for (i = 0; i < 3; i++)
if (g->gridpos[i] > 1)
warn_parameter_value("grain->gridpos is not 0 or 1",
(double)g->gridpos[i], &status);
t@@ -253,7 +247,7 @@ grain_zero_kinematics(struct grain *g)
{
size_t i;
- for (i = 0; i < ND; i++) {
+ for (i = 0; i < 3; i++) {
g->vel[i] = 0.0;
g->acc[i] = 0.0;
g->force[i] = 0.0;
t@@ -267,13 +261,13 @@ grain_zero_kinematics(struct grain *g)
double
grain_translational_kinetic_energy(const struct grain *g)
{
- return 0.5 * grain_mass(g) * euclidean_norm(g->vel, ND);
+ return 0.5 * grain_mass(g) * euclidean_norm(g->vel, 3.0);
}
double
grain_rotational_kinetic_energy(const struct grain *g)
{
- return 0.5 * grain_moment_of_inertia(g) * euclidean_norm(g->angvel, ND);
+ return 0.5 * grain_moment_of_inertia(g) * euclidean_norm(g->angvel, 3.0);
}
double
(DIR) diff --git a/grain.h b/grain.h
t@@ -1,23 +1,19 @@
#ifndef GRANULAR_GRAIN_
#define GRANULAR_GRAIN_
-#include <stdio.h>
-#include <stdlib.h>
-#include "granular.h"
-
struct grain {
double radius;
- double pos[ND];
- double vel[ND];
- double acc[ND];
- double force[ND];
- double angpos[ND];
- double angvel[ND];
- double angacc[ND];
- double torque[ND];
- double disp[ND];
- double forceext[ND];
+ double pos[3];
+ double vel[3];
+ double acc[3];
+ double force[3];
+ double angpos[3];
+ double angvel[3];
+ double angacc[3];
+ double torque[3];
+ double disp[3];
+ double forceext[3];
double density;
size_t fixed;
size_t rotating;
t@@ -28,9 +24,9 @@ struct grain {
double tensile_strength;
double shear_strength;
double fracture_toughness;
- size_t gridpos[ND];
+ size_t gridpos[3];
size_t ncontacts;
- double contact_stress[ND];
+ double contact_stress[3];
double thermal_energy;
size_t color;
};
(DIR) diff --git a/granular2vtu.c b/granular2vtu.c
t@@ -1,6 +1,8 @@
+#define _POSIX_C_SOURCE 200809L
#include <stdio.h>
+#include <stdlib.h>
#include <unistd.h>
-#include "grain.c"
+#include "grain.h"
#include "simulation.h"
#include "arrays.h"
#include "util.h"
t@@ -18,8 +20,7 @@ main(void)
while ((linelen = getline(&line, &linesize, stdin)) > 0)
add_grain(&sim, grain_read(line));
- /* if (sim.np > 0) */
- print_grains_vtk(stdout, sim.grains, sim.np);
+ print_grains_vtk(stdout, sim.grains, sim.np);
free_sim(&sim);
free(line);
(DIR) diff --git a/packing.h b/packing.h
t@@ -1,9 +1,6 @@
#ifndef GRANULAR_PACKING_
#define GRANULAR_PACKING_
-#include "grain.h"
-#include "simulation.h"
-
size_t rectangular_packing(struct grain *grains[],
size_t n[3],
double radius_min, double radius_max,
(DIR) diff --git a/simulation.c b/simulation.c
t@@ -1,5 +1,7 @@
#include <stdio.h>
+#include <stdlib.h>
#include <err.h>
+#include "grain.h"
#include "simulation.h"
#include "arrays.h"
#include "util.h"
t@@ -9,9 +11,9 @@ init_sim(struct simulation *sim)
{
snprintf(sim->name, sizeof(sim->name), DEFAULT_SIMULATION_NAME);
sim->np = 0;
- sim->gravacc = zeros(ND);
- sim->origo = zeros(ND);
- sim->L = ones(ND);
+ sim->gravacc = zeros(3);
+ sim->origo = zeros(3);
+ sim->L = ones(3);
sim->t = 0.0;
sim->t_end = 0.0;
sim->dt = 0.0;
(DIR) diff --git a/simulation.h b/simulation.h
t@@ -1,10 +1,6 @@
#ifndef GRANULAR_SIMULATION_
#define GRANULAR_SIMULATION_
-#include <stdio.h>
-#include "granular.h"
-#include "grain.h"
-
#define DEFAULT_SIMULATION_NAME "unnamed_simulation"
extern struct simulation sim;