Trisurf Monte Carlo simulator
Samo Penic
2016-06-07 45c708286ecd53ef5db3c76f4d0eb1e1379d628d
Added spontaneous curv.
3 files modified
40 ■■■■■ changed files
src/io.c 32 ●●●●● patch | view | raw | blame | history
src/tape 2 ●●● patch | view | raw | blame | history
src/timestep.c 6 ●●●● patch | view | raw | blame | history
src/io.c
@@ -886,7 +886,37 @@
        }
    }
    fprintf(fh,"</DataArray>\n</PointData>\n<CellData>\n</CellData>\n<Points>\n<DataArray type=\"Float64\" Name=\"Koordinate tock\" NumberOfComponents=\"3\" format=\"ascii\">\n");
        fprintf(fh,"</DataArray>\n");
    //here comes additional data as needed. Currently only spontaneous curvature
    fprintf(fh,"<DataArray type=\"Float64\" Name=\"spontaneous_curvature\" format=\"ascii\">");
    for(i=0;i<vlist->n;i++){
        fprintf(fh,"%.17e ",vtx[i]->c);
    }
        //polymeres
        if(poly){
            poly_idx=vlist->n;
            for(i=0;i<vesicle->poly_list->n;i++){
                for(j=0;j<vesicle->poly_list->poly[i]->vlist->n;j++,poly_idx++){
                    fprintf(fh,"%.17e ", vesicle->poly_list->poly[i]->vlist->vtx[j]->c);
                }
            }
        }
        //filaments
        if(fil){
            poly_idx=vlist->n+monono*polyno;
            for(i=0;i<vesicle->filament_list->n;i++){
                for(j=0;j<vesicle->filament_list->poly[i]->vlist->n;j++,poly_idx++){
        //    fprintf(stderr,"was here\n");
                    fprintf(fh,"%.17e ",  vesicle->filament_list->poly[i]->vlist->vtx[j]->c);
                }
            }
        }
    fprintf(fh,"</DataArray>\n");
    fprintf(fh,"</PointData>\n<CellData>\n</CellData>\n<Points>\n<DataArray type=\"Float64\" Name=\"Koordinate tock\" NumberOfComponents=\"3\" format=\"ascii\">\n");
    for(i=0;i<vlist->n;i++){
        fprintf(fh,"%.17e %.17e %.17e\n",vtx[i]->x,vtx[i]->y, vtx[i]->z);
    }
src/tape
@@ -12,7 +12,7 @@
# Pressure calculations
# (pswitch=1: calc. p*dV energy contribution)
pswitch = 1
pswitch = 0
# pressure difference: p_inside - p_outside (in units kT/l_min^3):
pressure=-10.0
src/timestep.c
@@ -60,7 +60,11 @@
/* RANDOM SEED SET BY CURRENT TIME */
    epochtime=get_epoch();            
    srand48(epochtime);
/*Nir Gov: randomly add spontaneous curvature for some vertices */
    for(i=0;i<200;i++){
        int b=rand() % vesicle->vlist->n;
        vesicle->vlist->vtx[b]->c=-0.1;
    }
    centermass(vesicle);
    cell_occupation(vesicle);
    vesicle_volume(vesicle); //needed for constant volume at this moment