dynasor – Correlations for everyone
dynasor is a tool for calculating total and partial dynamic structure factors as well as related correlation functions from molecular dynamics (MD) simulations. Analysis of these functions enables one to access the dynamics of a system without resorting to perturbative approaches. By combining in particular the structure factor with the cross sections (or form factors) of, e.g., neutrons, X-rays or electrons, it is also possible to directly predict experimental spectra.
Specifically dynasor can be used to calculate the following quantities
Partial van Hove functions
Partial intermediate scattering functions
Partial dynamic structure factors, including the incoherent (or self) part
Longitudinal and transversal partial current correlations
Spectral energy densities
The main input consists of a trajectory from a MD simulation, i.e., a file containing snapshots of the particle coordinates, and optionally velocities that correspond to consecutively and equally spaced points in (simulation) time. The following snippet illustrates how one can calculate dynamic structure factors from such a trajectory
traj = Trajectory('dump.xyz', trajectory_format='extxyz')
q_points = generate_spherical_qpoints(traj.cell, q_max=20)
sample = compute_dynamic_structure_factors(traj, q_points=q_points, dt=5, window_size=100)
sample.write_to_npz('test.npz')
dynasor has been developed at Chalmers University of Technology in Gothenburg, Sweden, in the Condensed Matter and Materials Theory division at the Department of Physics. Please consult the credits page for information on how to cite dynasor.
For questions and help please use the dynasor discussion forum on matsci.org. dynasor and its development are hosted on gitlab.