Trisurf Monte Carlo simulator
Miha
2016-07-15 8108947140ecfc116f4e1c9090499c1b4ad4c3b7
Mean curvature averaged over vesicle area added.
3 files modified
20 ■■■■ changed files
src/tspoststat.c 7 ●●●●● patch | view | raw | blame | history
src/vesicle.c 12 ●●●●● patch | view | raw | blame | history
src/vesicle.h 1 ●●●● patch | view | raw | blame | history
src/tspoststat.c
@@ -105,11 +105,11 @@
    ts_uint tstep,n;
        ts_char *number;
    struct dirent **list;
    ts_double l1,l2,l3;
    ts_double l1,l2,l3,hbar;
    int count;
    ts_fprintf(stderr,"TRISURF-NG v. %s, compiled on: %s %s.\n", TS_VERSION, __DATE__, __TIME__);
    fprintf(stdout, "OuterLoop Volume Area lamdba1 lambda2 lambda3 Nbw/Nb\n");
    fprintf(stdout, "OuterLoop Volume Area lamdba1 lambda2 lambda3 Nbw/Nb hbar\n");
    count=scandir(".",&list,0,alphasort);
@@ -136,7 +136,8 @@
            vesicle_volume(vesicle);
            vesicle_area(vesicle);
            gyration_eigen(vesicle,&l1,&l2,&l3);
            fprintf(stdout,"%d %.17e %.17e %.17e %.17e %.17e %.17e\n",atoi(number),vesicle->volume, vesicle->area,l1,l2,l3, (ts_double)count_bonds_with_energy(vesicle->blist)/(ts_double)vesicle->blist->n),
            hbar=vesicle_meancurvature(vesicle)/vesicle->area;
            fprintf(stdout,"%d %.17e %.17e %.17e %.17e %.17e %.17e %.17e\n",atoi(number),vesicle->volume, vesicle->area,l1,l2,l3, (ts_double)count_bonds_with_energy(vesicle->blist)/(ts_double)vesicle->blist->n,hbar);
                        tstep++;
            write_histogram_data(atoi(number), vesicle);
                    free(number);
src/vesicle.c
@@ -79,3 +79,15 @@
    vesicle->area=area;
    return TS_SUCCESS;
}
ts_double vesicle_meancurvature(ts_vesicle *vesicle){
// Integrates (H dA) over vesicle area A, where H=(C1+C2)/2.
// (To be devided by A outside of function)
    ts_double mc;
    ts_uint i;
    mc=0;
    for(i=0;i<vesicle->vlist->n;i++){
        mc=mc+vesicle->vlist->vtx[i]->curvature;
    }
    return mc/2.0;
}
src/vesicle.h
@@ -7,4 +7,5 @@
ts_bool vesicle_free(ts_vesicle *vesicle);
ts_bool vesicle_volume(ts_vesicle *vesicle);
ts_bool vesicle_area(ts_vesicle *vesicle);
ts_double vesicle_meancurvature(ts_vesicle *vesicle);
#endif