clear # The units we assume we'll use. The kim-lammps-preprocessor # may swap this line out if running against a Simulator Model # whose units are not 'metal' units metal # Variables that can be adjusted by kim-lammps-preprocessor# to switch unit sets for Simulator Models variable _u_distance equal 1.0 variable _u_energy equal 1.0 variable _u_mass equal 1.0 variable _u_pressure equal 1.0 dimension 3 boundary p p p # This line may be swapped out by kim-lammps-preprocessor if # running against a Simulator Model whose atom_style is not # 'atomic' atom_style atomic # Adjust input variables for possible units changes with Simulator Models variable lattice_constant_converted equal 4.032082033157349*${_u_distance} variable xmin_converted equal 0.0*${_u_distance} variable xmax_converted equal 61.01647305902939*${_u_distance} variable ymin_converted equal -61.02050514106254*${_u_distance} variable ymax_converted equal 61.02050514106254*${_u_distance} variable zmin_converted equal 0.0*${_u_distance} variable zmax_converted equal 4.032082033157349*${_u_distance} lattice fcc ${lattice_constant_converted} region whole block ${xmin_converted} ${xmax_converted} ${ymin_converted} ${ymax_converted} ${zmin_converted} ${zmax_converted} units box create_box 2 whole region upper block INF INF 0.0 ${ymax_converted} INF INF units box lattice fcc ${lattice_constant_converted} orient x 15 -2 0 orient y 2 15 0 orient z 0 0 1 create_atoms 1 region upper group upper type 1 mass 1 26.981538*${_u_mass} displace_atoms upper move 6.8097356776897 0 0.3333333333333333 units lattice region lower block INF INF ${ymin_converted} 0.0 INF INF units box lattice fcc ${lattice_constant_converted} orient x 15 2 0 orient y -2 15 0 orient z 0 0 1 create_atoms 2 region lower group lower type 2 displace_atoms lower move -6.8097356776897 0 -0.3333333333333333 units lattice mass 2 26.981538*${_u_mass} pair_style kim EAM_Dynamo_ErcolessiAdams_1994_Al__MO_123629422045_005 pair_coeff * * Al Al variable neigh_skin_converted equal 2.0*${_u_distance} neighbor ${neigh_skin_converted} bin neigh_modify delay 10 check yes variable delete_distance equal 0.5*${lattice_constant_converted} delete_atoms overlap ${delete_distance} all all min_style cg minimize 1e-15 1e-15 5000 10000 fix 1 all box/relax x 0.0 z 0.0 couple none vmax 0.001 minimize 1.0e-25 1.0e-25 1000 10000 unfix 1 # Variables used to rescale the positions and energies so that the quantities # in the dumpfile are in the original metal units (angstrom and eV) # even if we're running with a Simulator Model that uses different units variable pe_metal equal "c_thermo_pe/v__u_energy" variable lx_metal equal lx/${_u_distance} variable ly_metal equal ly/${_u_distance} variable lz_metal equal lz/${_u_distance} variable press_metal equal "c_thermo_press/v__u_pressure" variable pxx_metal equal pxx/${_u_pressure} variable pyy_metal equal pyy/${_u_pressure} variable pzz_metal equal pzz/${_u_pressure} variable mass_metal atom mass/${_u_mass} compute csym all centro/atom fcc compute particle_eng all pe/atom compute particle_engsum all reduce sum c_particle_eng compute csymsum all reduce sum c_csym compute distance all pair/local dist compute mindist all reduce min c_distance # Isolated atom energy in eV (no unit conversion necessary) variable isolated_atom_energy equal 0.0 variable particle_eng_metal atom "c_particle_eng/v__u_energy - v_isolated_atom_energy" variable csym_metal atom c_csym/(${_u_distance}*${_u_distance}) variable csymsum_metal equal c_csymsum/(${_u_distance}*${_u_distance}) variable mindist_metal equal c_mindist/${_u_distance} reset_timestep 0 run 0 thermo 0 thermo_style custom step v_pe_metal c_particle_engsum v_lx_metal v_ly_metal v_lz_metal press v_press_metal v_pxx_metal v_pyy_metal v_pzz_metal v_mindist_metal v_csymsum_metal run 0 variable num_atoms equal "count(all)" print "${num_atoms}" file output/dump_015.1893/numatoms.out variable adjusted_pe_metal equal ${pe_metal}-${num_atoms}*${isolated_atom_energy} print "${adjusted_pe_metal} eV" file output/dump_015.1893/energy.out print "${mindist_metal} Angstroms" file output/dump_015.1893/mindistance.out write_dump all cfg output/dump_015.1893/dump_post.cfg mass type xs ys zs id v_mass_metal v_csym_metal v_particle_eng_metal modify element Al Al print "This indicates that LAMMPS ran successfully" file output/dump_015.1893/success.out