Trisurf Monte Carlo simulator
Samo Penic
2014-03-08 1ab449a2d9d4433794736566014f5c311d5a9317
commit | author | age
d7639a 1 #ifndef _IO_H
SP 2 #define _IO_H
3
083e03 4 /** @ Global variables for I/O operations like filenames etc. */
SP 5 /*static char mastername[1024];
6 static char prefixname[1024];
7 static ts_bool restore=0;
8 static char tape[1024]; */
9 char path[1024];
10 int force_from_tape;
11
12 ts_bool parse_args(int argc, char **argv);
13
14
15
d7639a 16 /** @brief Prints the position of vertices for the whole list
SP 17  *  
18  *  The function is meant more or less as a debug tool, but can be used in production
19  *  environment aswell.
20  *  the output is in form of idx: x y z
21  *      @param *vlist is a structure holding information on vertex list.
22  *    @returns TS_SUCCESS on successful execution, TS_FAIL otherwise.
23 */
24
25 ts_bool print_vertex_list(ts_vertex_list *vlist);
26
27 /** @brief Prints the neighbours of all the vertices
28  *  
29  *  The function is meant more or less as a debug tool, but can be used in production
30  *  environment aswell.
31  *  the output is in form of idx(number of neighbours): (x1,y1,z1) (x2,y2,z2) ...
32  *      @param *vlist is a structure holding information on vertex list.
33  *    @returns TS_SUCCESS on successful execution, TS_FAIL otherwise.
34 */
35 ts_bool print_vertex_neighbours(ts_vertex_list *vlist);
36
37
38 /** @brief Function outputs the vetex list file to comply to old fortran format
39  *  
40  *      @param *vlist is a list of vertices
41  *      @param *filename is a name of the output file to be created (note that if the file already
42  *  exists it will be overwritten.
43  */
44 ts_bool write_vertex_fcompat_file(ts_vertex_list *vlist,ts_char *filename);
45 ts_bool fprint_vertex_list(FILE *fh,ts_vertex_list *vlist);
46 ts_bool fprint_tristar(FILE *fh, ts_vesicle *vesicle);
47 ts_bool fprint_triangle_list(FILE *fh, ts_vesicle *vesicle);
48 ts_bool fprint_vertex_data(FILE *fh,ts_vertex_list *vlist);
49 ts_bool fprint_bonds(FILE *fh,ts_vesicle *vesicle);
50 ts_bool write_dout_fcompat_file(ts_vesicle *vesicle, ts_char *filename);
51 ts_bool read_tape_fcompat_file(ts_vesicle *vesicle, ts_char *filename);
52
53
54 /** @brief Outputs file in vtk format, compatible with paraview.
55  *
56  *    @param *vlist is a list of vertices
57  *    @param *filename is a name of the output file. If exists, it will be overwritten
58  *    @param *text is a description line (max. 255 characters) to be included in the file
59  */
60 ts_bool write_vertex_vtk_file(ts_vesicle *vesicle,ts_char *filename, ts_char *text);
a6b1b5 61 ts_bool write_vertex_xml_file(ts_vesicle *vesicle, ts_uint timestepno);
SP 62 ts_bool write_master_xml_file(ts_char *filename);
1ab449 63 ts_tape *parsetape(char *filename);
SP 64 ts_bool tape_free(ts_tape *tape);
d7639a 65
1ab449 66 ts_bool dump_state(ts_vesicle *vesicle, ts_uint iteration);
SP 67 ts_vesicle *restore_state(ts_uint *iteration);
d7639a 68 #endif