Trisurf Monte Carlo simulator
Samo Penic
2014-03-24 144784496550cccc927607be8edc487af7aa851f
Fix.
4 files modified
40 ■■■■■ changed files
src/io.c 33 ●●●●● patch | view | raw | blame | history
src/io.h 2 ●●●●● patch | view | raw | blame | history
src/main.c 2 ●●● patch | view | raw | blame | history
src/timestep.c 3 ●●●●● patch | view | raw | blame | history
src/io.c
@@ -918,6 +918,39 @@
ts_bool write_pov_file(ts_vesicle *vesicle, char *filename){
    FILE *fh;
    ts_uint i;
    fh=fopen(filename, "w");
    if(fh==NULL){
        err("Cannot open file %s for writing");
        return TS_FAIL;
    }
    for(i=0;i<vesicle->tlist->n;i++){
    fprintf(fh,"\ttriangle {");
    fprintf(fh,"\t<%e,%e,%e> <%e,%e,%e> <%e,%e,%e> }\n",
    vesicle->tlist->tria[i]->vertex[0]->x,
    vesicle->tlist->tria[i]->vertex[0]->y,
    vesicle->tlist->tria[i]->vertex[0]->z,
    vesicle->tlist->tria[i]->vertex[1]->x,
    vesicle->tlist->tria[i]->vertex[1]->y,
    vesicle->tlist->tria[i]->vertex[1]->z,
    vesicle->tlist->tria[i]->vertex[2]->x,
    vesicle->tlist->tria[i]->vertex[2]->y,
    vesicle->tlist->tria[i]->vertex[2]->z
    );
    }
    fclose(fh);
    return TS_SUCCESS;
}
ts_tape *parsetape(char *filename){
  //  long int nshell=17,ncxmax=60, ncymax=60, nczmax=60, npoly=10, nmono=20, pswitch=0;  // THIS IS DUE TO CONFUSE BUG!
    ts_tape *tape=(ts_tape *)calloc(1,sizeof(ts_tape));
src/io.h
@@ -98,6 +98,8 @@
ts_bool write_vertex_vtk_file(ts_vesicle *vesicle,ts_char *filename, ts_char *text);
ts_bool write_vertex_xml_file(ts_vesicle *vesicle, ts_uint timestepno);
ts_bool write_master_xml_file(ts_char *filename);
ts_bool write_pov_file(ts_vesicle *vesicle, char *filename);
ts_tape *parsetape(char *filename);
ts_bool tape_free(ts_tape *tape);
src/main.c
@@ -49,7 +49,7 @@
        vesicle->dmax=tape->dmax*tape->dmax;
        poly_assign_filament_xi(vesicle,tape);
        if(command_line_args.reset_iteration_count) start_iteration=tape->inititer-1;
        if(command_line_args.reset_iteration_count) start_iteration=tape->inititer;
        else start_iteration++;
        if(start_iteration>=tape->iterations){
src/timestep.c
@@ -11,6 +11,7 @@
ts_bool run_simulation(ts_vesicle *vesicle, ts_uint mcsweeps, ts_uint inititer, ts_uint iterations, ts_uint start_iteration){
    ts_uint i, j;
     char filename[255];
    centermass(vesicle);
    cell_occupation(vesicle);
@@ -25,6 +26,8 @@
            dump_state(vesicle,i);
        if(i>=inititer){
            write_vertex_xml_file(vesicle,i-inititer);
        //    sprintf(filename,"timestep-%05d.pov",i-inititer);
            write_pov_file(vesicle,filename);
        }
    }
    return TS_SUCCESS;