| [a0bcf1] | 1 | #ifndef NANOCREATOR_H_ | 
|---|
|  | 2 | #define NANOCREATOR_H_ | 
|---|
|  | 3 |  | 
|---|
|  | 4 | #define MYEPSILON 1e-13 | 
|---|
|  | 5 |  | 
|---|
|  | 6 | struct Atoms | 
|---|
|  | 7 | { | 
|---|
|  | 8 | char name[3]; | 
|---|
|  | 9 | double x[3]; | 
|---|
|  | 10 | }; | 
|---|
|  | 11 |  | 
|---|
|  | 12 | // file stuff | 
|---|
|  | 13 | char * ReadBuffer (char *filename, int *bufferlength); | 
|---|
|  | 14 | void AddAtomicNumber(char *filename, int atomicnumber, double **Vector, double **Recivector); | 
|---|
|  | 15 | void AddSheetInfo(char *filename, int *axis, int *chiral, int *factors, int seed, int numbercell, double *randomness); | 
|---|
|  | 16 | int GetNextline(char *buffer, char *line); | 
|---|
|  | 17 |  | 
|---|
|  | 18 | // matrix stuff | 
|---|
|  | 19 | void MatrixInversion(double **matrix1ref, double **matrix2ref); | 
|---|
|  | 20 | void MatrixInversion(double **matrix1ref, double **matrix2ref); | 
|---|
|  | 21 | double Determinant(double **matrix); | 
|---|
|  | 22 | void PrintMatrix(FILE *file, double **matrix); | 
|---|
|  | 23 |  | 
|---|
|  | 24 | // vector stuff | 
|---|
|  | 25 | double * MatrixTrafo(double **matrixref, double *vectorref); | 
|---|
|  | 26 | double * VectorAdd(double *vector1, double *vector2); | 
|---|
|  | 27 | void Orthogonalize(double **orthvector, int *axis); | 
|---|
|  | 28 | double Projection(double *vector1, double *vector2); | 
|---|
|  | 29 | double ScalarProduct(double *vector1, double *vector2); | 
|---|
|  | 30 | double Norm(double *vector); | 
|---|
|  | 31 | void PrintVector(FILE *file, double *vector); | 
|---|
|  | 32 |  | 
|---|
|  | 33 | double DetermineBiggestDiameter(double **matrix, int *axis, int *factors); | 
|---|
|  | 34 | double * CenterOfGravity(char *bufptr, int number); | 
|---|
|  | 35 | void Debug(char *msg); | 
|---|
|  | 36 |  | 
|---|
|  | 37 | #endif /*NANOCREATOR_H_*/ | 
|---|