#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
for(j=0;j<NR_ATOMS;j++) {
run=1;
while(run) {
- r.x=1.0/8.0*ALBE_LC_SI;
+ // tetrahedral
+ /*
+ r.x=0.0;
+ r.y=0.0;
+ r.z=0.0;
+ */
+ // hexagonal
+ //
+ r.x=-1.0/8.0*ALBE_LC_SI;
r.y=-1.0/8.0*ALBE_LC_SI;
- r.z=-1.0/8.0*ALBE_LC_SI;
- //r.x=(rand_get_double(&(md->random))-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;
d=v3_absolute_square(&dist);
/* reject coordinates */
if(d<R_C) {
+ //printf("atom %d - %f\n",i,d);
run=1;
break;
}
set_pbc(&md,TRUE,TRUE,TRUE);
/* create the lattice / place atoms */
+ //
#ifdef ALBE
create_lattice(&md,DIAMOND,ALBE_LC_SI,SI,M_SI,
//create_lattice(&md,DIAMOND,ALBE_LC_C,C,M_C,
// ATOM_ATTR_2BP|ATOM_ATTR_HB,
0,LCNTX,LCNTY,LCNTZ,NULL);
// 1,LCNTX,LCNTY,LCNTZ,NULL);
+ //
/* create zinkblende structure */
/*