From b5b47daaa3718c4dec2056fe5147668023575b8e Mon Sep 17 00:00:00 2001 From: hackbard Date: Tue, 13 Nov 2007 17:48:43 +0100 Subject: [PATCH] isecurity checkin .. .we have the diffs anyways! --- Makefile | 1 + moldyn.c | 10 ++++++++-- potentials/albe.c | 26 ++++++++++++++------------ run | 2 +- sic.c | 38 +++++++++++++++++++++++++++++++------- 5 files changed, 55 insertions(+), 22 deletions(-) diff --git a/Makefile b/Makefile index 70f4a5d..0e7b122 100644 --- a/Makefile +++ b/Makefile @@ -7,6 +7,7 @@ CFLAGS += -g CFLAGS += -DALBE #CFLAGS += -DDEBUG +CFLAGS += -DDSTART=400 -DDEND=600 #CFLAGS += -DVDEBUG #CFLAGS += -DTERSOFF_ORIG diff --git a/moldyn.c b/moldyn.c index 258985e..997c32c 100644 --- a/moldyn.c +++ b/moldyn.c @@ -1469,7 +1469,7 @@ int moldyn_integrate(t_moldyn *moldyn) { /* calculate initial forces */ potential_force_calc(moldyn); #ifdef DEBUG -return 0; +//return 0; #endif /* some stupid checks before we actually start calculating bullshit */ @@ -1911,7 +1911,13 @@ int potential_force_calc(t_moldyn *moldyn) { } #ifdef DEBUG - printf("\nATOM 0: %f %f %f\n\n",itom->f.x,itom->f.y,itom->f.z); + //printf("\nATOM 0: %f %f %f\n\n",itom->f.x,itom->f.y,itom->f.z); + if(moldyn->time>DSTART&&moldyn->timeatom[5832].f.x); + printf(" y: %0.40f\n",moldyn->atom[5832].f.y); + printf(" z: %0.40f\n",moldyn->atom[5832].f.z); + } #endif /* calculate global virial */ diff --git a/potentials/albe.c b/potentials/albe.c index 688712d..fea7ba8 100644 --- a/potentials/albe.c +++ b/potentials/albe.c @@ -81,6 +81,8 @@ int albe_mult_3bp_j1(t_moldyn *moldyn,t_atom *ai,t_atom *aj,u8 bc) { moldyn->run3bp=0; return 0; } +//if(ai==&(moldyn->atom[5832])) +// printf(" %d: %d (%f)\n",ai->tag,aj->tag,moldyn->time); /* d_ij */ d_ij=sqrt(d_ij2); @@ -191,14 +193,6 @@ int albe_mult_3bp_k1(t_moldyn *moldyn, exchange->zeta_ij+=f_c_ik*g; } -#ifdef DEBUG - if((ai==&(moldyn->atom[0]))| - (aj==&(moldyn->atom[864]))| - (ak==&(moldyn->atom[1003]))) { - printf(" -> %f %f %f\n",exchange->ci2di2,frac,h_cos); - } -#endif - /* store even more data for second k loop */ exchange->g[kcount]=g; exchange->dg[kcount]=dg; @@ -290,7 +284,8 @@ int albe_mult_3bp_j2(t_moldyn *moldyn,t_atom *ai,t_atom *aj,u8 bc) { v3_sub(&(aj->f),&(aj->f),&force); // dri rij = - drj rij #ifdef DEBUG - if((ai==&(moldyn->atom[0]))|(aj==&(moldyn->atom[0]))) { +if(moldyn->time>DSTART&&moldyn->timeatom[5832]))|(aj==&(moldyn->atom[5832]))) { printf("force 3bp (j2): [%d %d sum]\n",ai->tag,aj->tag); printf("adding %f %f %f\n",force.x,force.y,force.z); if(ai==&(moldyn->atom[0])) @@ -301,6 +296,7 @@ int albe_mult_3bp_j2(t_moldyn *moldyn,t_atom *ai,t_atom *aj,u8 bc) { f_c,b,f_a,f_r); printf(" %f %f %f\n",exchange->zeta_ij,.0,.0); } +} #endif /* virial */ @@ -406,11 +402,13 @@ int albe_mult_3bp_k2(t_moldyn *moldyn, v3_add(&(ai->f),&(ai->f),&force); #ifdef DEBUG - if(ai==&(moldyn->atom[0])) { +if(moldyn->time>DSTART&&moldyn->timeatom[5832])) { printf("force 3bp (k2): [%d %d %d]\n",ai->tag,aj->tag,ak->tag); printf("adding %f %f %f\n",force.x,force.y,force.z); printf("total i: %f %f %f\n",ai->f.x,ai->f.y,ai->f.z); } +} #endif /* virial */ @@ -423,11 +421,13 @@ int albe_mult_3bp_k2(t_moldyn *moldyn, v3_add(&(aj->f),&(aj->f),&force); #ifdef DEBUG - if(aj==&(moldyn->atom[0])) { +if(moldyn->time>DSTART&&moldyn->timeatom[5832])) { printf("force 3bp (k2): [%d %d %d]\n",ai->tag,aj->tag,ak->tag); printf("adding %f %f %f\n",force.x,force.y,force.z); printf("total j: %f %f %f\n",aj->f.x,aj->f.y,aj->f.z); } +} #endif /* virial */ @@ -444,11 +444,13 @@ int albe_mult_3bp_k2(t_moldyn *moldyn, v3_add(&(ak->f),&(ak->f),&force); #ifdef DEBUG - if(ak==&(moldyn->atom[0])) { +if(moldyn->time>DSTART&&moldyn->timeatom[5832])) { printf("force 3bp (k2): [%d %d %d]\n",ai->tag,aj->tag,ak->tag); printf("adding %f %f %f\n",force.x,force.y,force.z); printf("total k: %f %f %f\n",ak->f.x,ak->f.y,ak->f.z); } +} #endif /* virial */ diff --git a/run b/run index bd72bc2..34b75bd 100755 --- a/run +++ b/run @@ -5,7 +5,7 @@ if [ "$?" == "0" ]; then #./perms if [ "$1" ] ; then #./visualize -w 640 -h 480 -d $1 - ./visualize -w 640 -h 480 -d $1 -nll -2.4 -2.4 -2.4 -fur 3.8 3.8 3.8 -b -2.03 -2.03 -2.03 3.39 3.39 3.39 -r 0.6 -c 1.5 -15.0 1.5 + ./visualize -w 640 -h 480 -d $1 -nll -2.4 -2.4 -2.4 -fur 3.8 3.8 3.8 -b -2.03 -2.03 -2.03 3.39 3.39 3.39 -r 0.6 -c 1.5 -15.0 1.5 -B 0.1 #rasmol -32 -nodisplay < $1/visualize.scr > /dev/null 2>&1 ./ppm2avi $1 fi diff --git a/sic.c b/sic.c index 20c80d1..05de728 100644 --- a/sic.c +++ b/sic.c @@ -39,8 +39,8 @@ #define LCNTX 9 #define LCNTY 9 #define LCNTZ 9 -#define PRERUN 10 -#define POSTRUN 4000 +#define PRERUN 40 +#define POSTRUN 3000 #define R_TITLE "Silicon self-interstitial" #define LOG_E 10 @@ -110,14 +110,35 @@ int hook_add_atom(void *moldyn,void *hook_params) { for(j=0;jrandom))-0.5)*INJ_LENX; + r.z=1.0/8.0*ALBE_LC_SI; + // + // 110 dumbbell + /* + r.x=(-0.5+0.25+0.125)*ALBE_LC_SI; + r.y=(-0.5+0.25+0.125)*ALBE_LC_SI; + r.z=(-0.5+0.25)*ALBE_LC_SI; + md->atom[4372].r.x=(-0.5+0.125+0.125)*ALBE_LC_SI; + md->atom[4372].r.y=(-0.5+0.125+0.125)*ALBE_LC_SI; + */ + // random + /* + r.x=(rand_get_double(&(md->random))-0.5)*INJ_LENX; + r.y=(rand_get_double(&(md->random))-0.5)*INJ_LENY; + r.z=(rand_get_double(&(md->random))-0.5)*INJ_LENZ; + */ + // offset r.x+=INJ_OFFSET; - //r.y=(rand_get_double(&(md->random))-0.5)*INJ_LENY; r.y+=INJ_OFFSET; - //r.z=(rand_get_double(&(md->random))-0.5)*INJ_LENZ; r.z+=INJ_OFFSET; /* assume valid coordinates */ run=0; @@ -127,6 +148,7 @@ int hook_add_atom(void *moldyn,void *hook_params) { d=v3_absolute_square(&dist); /* reject coordinates */ if(d