- create_lattice(&md,CUBIC,LC_SI,SI,M_SI,
- //create_lattice(&md,FCC,LC_SI,SI,M_SI,
- //create_lattice(&md,DIAMOND,LC_SI,SI,M_SI,
- // ATOM_ATTR_1BP|ATOM_ATTR_2BP|ATOM_ATTR_3BP|ATOM_ATTR_HB,
- ATOM_ATTR_2BP|ATOM_ATTR_HB,
- 0,6,6,6);
+
+ // diamond
+#ifdef ALBE
+ #ifdef INIT_SI
+ create_lattice(&md,DIAMOND,ALBE_LC_SI,SI,M_SI,
+ ATOM_ATTR_1BP|ATOM_ATTR_2BP|ATOM_ATTR_3BP|ATOM_ATTR_HB,
+ 0,LCNTX,LCNTY,LCNTZ,NULL);
+ #endif
+ #ifdef INIT_C
+ create_lattice(&md,DIAMOND,ALBE_LC_C,C,M_C,
+ ATOM_ATTR_1BP|ATOM_ATTR_2BP|ATOM_ATTR_3BP|ATOM_ATTR_HB,
+ 1,LCNTX,LCNTY,LCNTZ,NULL);
+ #endif
+#else
+ #ifdef INIT_SI
+ create_lattice(&md,DIAMOND,LC_SI,SI,M_SI,
+ ATOM_ATTR_1BP|ATOM_ATTR_2BP|ATOM_ATTR_3BP|ATOM_ATTR_HB,
+ 0,LCNTX,LCNTY,LCNTZ,NULL);
+ #endif
+ #ifdef INIT_C
+ create_lattice(&md,DIAMOND,LC_C,SI,M_SI,
+ ATOM_ATTR_1BP|ATOM_ATTR_2BP|ATOM_ATTR_3BP|ATOM_ATTR_HB,
+ 1,LCNTX,LCNTY,LCNTZ,NULL);
+ #endif
+#endif
+
+ // zinkblende
+#ifdef INIT_3CSIC
+ #ifdef ALBE
+ r.x=0.5*0.25*ALBE_LC_SIC; r.y=r.x; r.z=r.x;
+ create_lattice(&md,FCC,ALBE_LC_SIC,SI,M_SI,
+ ATOM_ATTR_1BP|ATOM_ATTR_2BP|ATOM_ATTR_3BP|ATOM_ATTR_HB,
+ 0,LCNTX,LCNTY,LCNTZ,&r);
+ r.x+=0.25*ALBE_LC_SIC; r.y=r.x; r.z=r.x;
+ create_lattice(&md,FCC,ALBE_LC_SIC,C,M_C,
+ ATOM_ATTR_1BP|ATOM_ATTR_2BP|ATOM_ATTR_3BP|ATOM_ATTR_HB|ATOM_ATTR_VB,
+ 1,LCNTX,LCNTY,LCNTZ,&r);
+ #else
+ r.x=0.5*0.25*TM_LC_SIC; r.y=r.x; r.z=r.x;
+ create_lattice(&md,FCC,TM_LC_SIC,SI,M_SI,
+ ATOM_ATTR_1BP|ATOM_ATTR_2BP|ATOM_ATTR_3BP|ATOM_ATTR_HB,
+ 0,LCNTX,LCNTY,LCNTZ,&r);
+ r.x+=0.25*TM_LC_SIC; r.y=r.x; r.z=r.x;
+ create_lattice(&md,FCC,TM_LC_SIC,C,M_C,
+ ATOM_ATTR_1BP|ATOM_ATTR_2BP|ATOM_ATTR_3BP|ATOM_ATTR_HB,
+ 1,LCNTX,LCNTY,LCNTZ,&r);
+ #endif
+#endif
+
+ /* check for right atom placing */