43 #include <grass/gis.h>
45 static void print_volume(
int dimension,
double volume)
47 fprintf(stdout,
"\t%.6f, /* dimension %3d */\n", volume, dimension);
52 double log_gamma, log_volume;
54 log_gamma = gamma(dimension / 2.0 + 1);
55 log_volume = dimension / 2.0 *
log(M_PI) - log_gamma;
56 return exp(log_volume);
59 extern int main(
int argc,
char *argv[])
61 int dim, max_dims = 9;
64 max_dims = atoi(argv[1]);
66 fprintf(stdout,
"static const double sphere_volumes[] = {\n");
67 for (dim = 0; dim < max_dims + 1; dim++)
69 fprintf(stdout,
"};\n");