Quick Start

The pySED workflow is a post-processing workflow. First run molecular dynamics to produce a trajectory with coordinates and velocities, then run pySED to compress the trajectory, construct commensurate q-points, calculate SED, plot the result, and optionally fit Lorentzian peaks.

GPUMD Trajectory

For GPUMD users, the production run should write an extended XYZ trajectory with positions and velocities. A minimal production block is:

ensemble       nve
dump_exyz      10     1
run            500000

The first number after dump_exyz is the output stride in MD steps. Use the same value for output_data_stride in input_SED.in. For details, see the GPUMD manual page for dump_exyz.

In input_SED.in, use:

file_format = 'gpumd'
dump_xyz_file = '../gpumd_run/dump.xyz'

LAMMPS Trajectory

LAMMPS writes position and velocity trajectories separately. The required dump format is sorted by atom id:

dump            vels  all  custom  ${dt_dump}  vels.dat  id  type  vx  vy  vz
dump_modify     vels  format  line "%d  %d  %0.8g  %0.8g  %0.8g"
dump_modify     vels  sort  id
dump            pos   all  custom  ${dt_dump}  pos.dat   id  type  x  y  z
dump_modify     pos   format  line "%d  %d  %0.8g  %0.8g  %0.8g"
dump_modify     pos   sort  id

run             2097152

In input_SED.in, use:

file_format = 'lammps'
pos_file = '../lammps_run/pos.dat'
vels_file = '../lammps_run/vels.dat'
lammps_unit = 'metal'

Use lammps_unit = 'metal' for velocities in Angstrom/ps and lammps_unit = 'real' for velocities in Angstrom/fs.

What to Check Before Running pySED

  • num_atoms equals the number of atoms in the trajectory and the maximum atom id in basis.in.

  • total_num_steps, time_step, and output_data_stride match the MD production run.

  • prim_unitcell and supercell_dim reconstruct the MD supercell.

  • basis_lattice_file points to the correct basis.in file.

  • q_path_name has num_qpaths + 1 labels.

  • q_path contains num_qpaths + 1 reduced-coordinate triples.

  • The trajectory contains coordinates and velocities for every saved frame.