From 59c7f5f163b6d8997df61dc393e195cd3ee47ff1 Mon Sep 17 00:00:00 2001 From: Miha <mihaf@beti.(none)> Date: Fri, 13 Jul 2012 15:56:06 +0000 Subject: [PATCH] nmax added to counting. --- src/spherical_trisurf.c | 52 +++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 37 insertions(+), 15 deletions(-) diff --git a/src/spherical_trisurf.c b/src/spherical_trisurf.c index f266c11..46a2582 100644 --- a/src/spherical_trisurf.c +++ b/src/spherical_trisurf.c @@ -19,11 +19,14 @@ */ ts_bool saveAvgUlm2(ts_vesicle *vesicle); int main(int argv, char *argc[]){ -ts_uint i,j; +ts_uint i,j,k; ts_vesicle *vesicle; ts_double r0; vesicle=initial_distribution_dipyramid(17,60,60,60,0.15); //parsetape(vesicle,&i); + +//similar to nmax in fortran code +ts_uint nmax; //these four must come from parsetype! vesicle->dmax=1.67*1.67; @@ -32,6 +35,22 @@ vesicle->bending_rigidity=25.0; //fprintf(stderr,"xk=%f",vesicle->bending_rigidity); + centermass(vesicle); +cell_occupation(vesicle); + +//test if the structure is internally organized into cells correctly +ts_uint cind; +for(i=0;i<vesicle->vlist->n;i++){ + cind=vertex_self_avoidance(vesicle, vesicle->vlist->vtx[i]); + + if(vesicle->clist->cell[cind]==vesicle->vlist->vtx[i]->cell){ + //fprintf(stdout,"(T) Idx match!\n"); + } else { + fprintf(stderr,"(T) ***** Idx don't match!\n"); + + } +} +//end test vesicle->sphHarmonics=sph_init(vesicle->vlist, 21); vesicle_volume(vesicle); @@ -41,27 +60,30 @@ calculateYlmi(vesicle); calculateUlm(vesicle); - - -for(i=0;i<10000;i++){ - centermass(vesicle); - cell_occupation(vesicle); - for(j=0;j<1000;j++){ +nmax=1000; +for(i=0;i<nmax;i++){ + for(j=0;j<200;j++){ + cell_occupation(vesicle); + for(k=0;k<5;k++){ single_timestep(vesicle); + } + centermass(vesicle); } -vesicle_volume(vesicle); -r0=getR0(vesicle); + vesicle_volume(vesicle); + r0=getR0(vesicle); -preparationSh(vesicle,r0); -calculateYlmi(vesicle); -calculateUlm(vesicle); + preparationSh(vesicle,r0); + calculateYlmi(vesicle); + calculateUlm(vesicle); -storeUlm2(vesicle); -saveAvgUlm2(vesicle); + storeUlm2(vesicle); + saveAvgUlm2(vesicle); write_vertex_xml_file(vesicle,i); - fprintf(stderr, "Loop %d completed.\n",i+1); + fprintf(stderr, "Loop %d out of %d completed.\n",i+1,nmax); + } + write_master_xml_file("test.pvd"); write_dout_fcompat_file(vesicle,"dout"); vesicle_free(vesicle); -- Gitblit v1.9.3