# Define looping variables variable loopcount loop 42 variable latticeconst index 15.964900 14.895199 14.232242 13.750568 13.372030 13.060158 12.794949 12.564240 12.360079 12.176982 12.011006 11.859222 11.719392 11.589771 11.468967 11.355859 11.249523 11.149195 11.054232 10.964088 10.878299 10.796463 10.718231 10.643300 10.592288 10.538600 10.481940 10.421959 10.358244 10.290297 10.217519 10.139167 10.054318 9.961794 9.860070 9.747110 9.620121 9.475118 9.306131 9.103622 8.850919 8.514640 # Define unit set and class of atomic model units metal atom_style atomic # Periodic boundary conditions along all three dimensions boundary p p p # Create a diamond lattice using a single conventional (orthogonal) # unit cell with a lattice constant from the 'latticeconst' variable defined on line 3 above lattice diamond ${latticeconst} region box block 0 1 0 1 0 1 units lattice create_box 1 box create_atoms 1 box mass 1 39.0983 # Specify which KIM Model to use pair_style kim Sim_LAMMPS_EIM_Zhou_2010_BrClCsFIKLiNaRb__SM_259779394709_000 pair_coeff * * K # Set what thermodynamic information to print to log thermo_style custom step atoms xlo xhi ylo yhi zlo zhi pe press pxx pyy pzz pxy pxz pyz thermo 10 # Print every 10 steps # Set what information to write to dump file dump id all custom 10 output/lammps.dump id type x y z fx fy fz dump_modify id format line "%d %d %16.7f %16.7f %16.7f %16.7f %16.7f %16.7f" # Compute the energy and forces for this lattice spacing run 0 # Define auxiliary variables to contain cohesive energy and equilibrium lattice constant variable poteng equal "c_thermo_pe" variable natoms equal "count(all)" variable ecohesive equal "v_poteng/v_natoms" # Output cohesive energy and equilibrium lattice constant print "Cohesive energy = ${ecohesive} eV/atom" # Queue next loop clear # Clear existing atoms, variables, and allocated memory next latticeconst # Increment latticeconst to next value next loopcount # Increment loopcount to next value jump SELF # Reload this input script with the new variable values