-
Notifications
You must be signed in to change notification settings - Fork 6
/
fundamental_domain.c
70 lines (59 loc) · 1.67 KB
/
fundamental_domain.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#error THIS FILE IS NOT USED
#include "typedef.h"
#include "matrix.h"
#include "symm.h"
#include "getput.h"
#include "bravais.h"
#include "sort.h"
#include "polyeder.h"
#include "presentation.h"
#include "tools.h"
#include "tietzetrans.h"
#include "datei.h"
int main (int argc, char *argv[])
{
bravais_TYP *G;
matrix_TYP *vec;
matrix_TYP *Form;
polyeder_TYP *Pol;
read_header(argc, argv);
if(FILEANZ != 3)
{
printf("\n");
printf("Usage\n");
printf(" %s file1 file2 file3 \n", argv[0]);
printf(" \n");
printf(" where file1 contains a bravais_TYP describing\n");
printf(" a set of affine matrices generating a space group.\n");
printf(" \n");
printf(" where file2 contains a matrix_TYP describing\n");
printf(" an affine vector which is a starting point for the algorithm\n");
printf(" \n");
printf(" where file3 contains a matrix_TYP describing a positive definite,\n");
printf(" invariant form for R \n");
printf(" \n");
printf(" Calculates a fundamental polyhedron for the group in file1,\n");
printf(" and writes it to the stdout.\n");
printf(" \n");
printf(" The options are:\n");
printf("\n");
printf(" -h : Gives you this help.\n");
printf("\n");
if (is_option('h')){
exit(0);
}
else{
exit(31);
}
}
G = get_bravais(FILENAMES[0]);
vec = get_mat(FILENAMES[1]);
Form = get_mat(FILENAMES[2]);
Pol = fub(vec, G, Form);
put_polyeder(Pol);
free_polyeder(Pol);
free_bravais(G);
free_mat(vec); vec = NULL;
free_mat(Form); Form = NULL;
printf("\n");
}