t_lj_params lj;
t_ho_params ho;
+ t_tersoff_params tp;
/*
* moldyn init
* - random init
*
*/
- moldyn_init(&md,argc,argv);
+ a=moldyn_init(&md,argc,argv);
+ if(a<0) return a;
/*
* the following overrides possibly set interaction methods by argv !!
lj.sigma12=lj.sigma6*lj.sigma6;
lj.epsilon4=4.0*LJ_EPSILON_SI;
ho.equilibrium_distance=0.25*sqrt(3.0)*LC_SI;
- ho.spring_constant=1.0;
+ ho.spring_constant=1;
/* assignement */
md.potential_force_function=lennard_jones;
//md.potential_force_function=harmonic_oscillator;
printf("created silicon lattice (#atoms = %d)\n",md.count);
#else
md.count=2;
- moldyn->atom=malloc(2*sizeof(t_atom));
- moldyn->atom[0].r.x=0.13*sqrt(3.0)*LC_SI/2.0;
- moldyn->atom[0].r.y=0;
- moldyn->atom[0].r.z=0;
- moldyn->atom[0].element=SI;
- moldyn->atom[0].mass=M_SI;
- moldyn->atom[1].r.x=-si[0].r.x;
- moldyn->atom[1].r.y=0;
- moldyn->atom[1].r.z=0;
- moldyn->atom[1].element=SI;
- moldyn->atom[1].mass=M_SI;
+ md.atom=malloc(md.count*sizeof(t_atom));
+ md.atom[0].r.x=0.23*sqrt(3.0)*LC_SI/2.0;
+ md.atom[0].r.y=0;
+ md.atom[0].r.z=0;
+ md.atom[0].element=SI;
+ md.atom[0].mass=M_SI;
+ md.atom[1].r.x=-md.atom[0].r.x;
+ md.atom[1].r.y=0;
+ md.atom[1].r.z=0;
+ md.atom[1].element=SI;
+ md.atom[1].mass=M_SI;
+
+ //md.atom[2].r.x=0.5*(a-1)*LC_SI;
+ //md.atom[2].r.y=0.5*(b-1)*LC_SI;
+ //md.atom[2].r.z=0;
+ //md.atom[2].element=C;
+ //md.atom[2].mass=M_C;
+
+ //md.atom[3].r.x=0.5*(a-1)*LC_SI;
+ //md.atom[3].r.y=0;
+ //md.atom[3].r.z=0;
+ //md.atom[3].element=SI;
+ //md.atom[3].mass=M_SI;
#endif
/* initial thermal fluctuations of particles */
printf("setting thermal fluctuations (T=%f K)\n",md.t);
thermal_init(&md);
#else
- for(a=0;a<md.count;a++) v3_zero(&(si[0].v));
+ for(a=0;a<md.count;a++) v3_zero(&(md.atom[0].v));
+ md.atom[2].v.x=-320;
+ md.atom[2].v.y=-320;
#endif
/* check kinetic energy */
printf("estimated accurate time step: %.30f [s]\n",
estimate_time_step(&md,3.0,md.t));
- /* initialize linked list / cell method */
- printf("initializing linked cells\n");
- link_cell_init(&md);
-
/*
* let's do the actual md algorithm now
*