From 58230a2591414fb38b9ec8d3a76439b290cb0a6f Mon Sep 17 00:00:00 2001 From: mihaf <miha.fosnaric@gmail.com> Date: Tue, 18 Mar 2014 13:09:23 +0000 Subject: [PATCH] Adding ending energy to filaments. In progress. Continue in single_filament_vertex_move --- src/co_test.c | 51 +++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 47 insertions(+), 4 deletions(-) diff --git a/src/co_test.c b/src/co_test.c index cf08f6f..61a6a3a 100644 --- a/src/co_test.c +++ b/src/co_test.c @@ -1,10 +1,13 @@ #include "general.h" #include "sh.h" +#include <stdlib.h> #include "vesicle.h" #include "initial_distribution.h" +#include "frame.h" +#include <math.h> int main(){ -ts_vesicle *vesicle=initial_distribution_dipyramid(4,60,60,60,0.15); +ts_vesicle *vesicle=initial_distribution_dipyramid(17,60,60,60,0.15); //parsetape(vesicle,&i); //these four must come from parsetype! @@ -14,16 +17,56 @@ vesicle->bending_rigidity=25.0; fprintf(stderr,"xk=%f\n",vesicle->bending_rigidity); -vesicle->sphHarmonics=sph_init(vesicle->vlist, 10); +centermass(vesicle); +vesicle->sphHarmonics=sph_init(vesicle->vlist, 21); int i,j; +ts_double area; +for(i=1;i<=vesicle->sphHarmonics->l;i++){ + for(j=1;j<=2*i+1;j++){ + fprintf(stderr,"co(%d,%d)=%e\n",i,j,vesicle->sphHarmonics->co[i][j]); + } +} +ts_double r0; +vesicle_volume(vesicle); +fprintf(stderr,"Volume=%e\n",vesicle->volume); +r0=getR0(vesicle); +fprintf(stderr,"r0=%e\n",r0); +area=0; +for(i=0;i<vesicle->tlist->n;i++){ + area+=vesicle->tlist->tria[i]->area; +} +fprintf(stderr,"area_dipyramid=%e\n",area); +fprintf(stderr,"Centroid=(%e,%e,%e)\n", vesicle->cm[0],vesicle->cm[1],vesicle->cm[2]); + +preparationSh(vesicle,r0); +calculateYlmi(vesicle); +/* +ts_coord *coord=(ts_coord *)malloc(sizeof(ts_coord)); +ts_double fi, theta; + + for(i=0;i<vesicle->vlist->n;i++){ + + cart2sph(coord,vesicle->vlist->vtx[i]->x, vesicle->vlist->vtx[i]->y, vesicle->vlist->vtx[i]->z); + fi=coord->e2; + theta=coord->e3; + + + fprintf(stderr,"VTX(x,y,z,fi,theta)=%e,%e,%e,%e,%e ---> Ylmi(2,-2,%d)=%9.7e <---- data: omega=%e, r0=%e, plgndr(2,abs(-2),cos(theta))=%e, co(2,-2)=%e cos((m-l-1)*fi)=%e\n",vesicle->vlist->vtx[i]->x, vesicle->vlist->vtx[i]->y, vesicle->vlist->vtx[i]->z,fi,theta,i+1,vesicle->sphHarmonics->Ylmi[2][0][i], vesicle->vlist->vtx[i]->solAngle, vesicle->vlist->vtx[i]->relR, plgndr(2,abs(-2),cos(theta)), vesicle->sphHarmonics->co[2][1], cos(-2*fi)); + + } + +free(coord); +*/ +calculateUlm(vesicle); for(i=0;i<vesicle->sphHarmonics->l;i++){ for(j=0;j<2*i+1;j++){ - fprintf(stderr,"co(%d,%d)=%f\n",i,j,vesicle->sphHarmonics->co[i][j]); + fprintf(stderr,"ulm(%d,%d)=%e\n",i,j+1,vesicle->sphHarmonics->ulm[i][j]); } } +storeUlm2(vesicle); sph_free(vesicle->sphHarmonics); -//vesicle_free(vesicle); +vesicle_free(vesicle); return 0; } -- Gitblit v1.9.3