Intermediate scattering function¶
The module computes the intermediate scattering function
from the Fourier modes of a given pair of (partial) density fields,
and the total number of particles . The result is averaged over
wavevectors of similar magnitude according to the shells defined by
halmd.observables.utility.wavevector
.
For details see, e.g., Hansen & McDonald: Theory of simple liquids, chapter 7.4.
-
class
halmd.observables.dynamics.
intermediate_scattering_function
(args)¶ Construct instance of
halmd.observables.dynamics.intermediate_scattering_function
.Parameters: - args (table) – keyword arguments
- args.density_mode (table) – instance(s) of
halmd.observables.density_mode
- args.norm (number) – normalisation factor
- args.label (string) – module label (optional)
Returns: instance of intermediate scattering function module
The argument
density_mode
is an instance or a table of up to 2 instances ofhalmd.observables.density_mode
yielding the partial density modesand
. They must have been constructed with the same instance of
halmd.observables.utility.wavevector
. Passing only one instance implies.
The optional argument
label
defaults todensity_mode[1].label .. "/" .. density_mode[2].label
.-
disconnect
()¶ Disconnect module from profiler.
-
acquire
()¶ Acquire density mode sample.
Returns: density mode sample
-
label
¶ The module label passed upon construction or derived from the density modes.
-
desc
¶ Module description.
-
class
writer
(args)¶ Construct file writer and output wavenumbers.
Parameters: - args (table) – keyword arguments
- args.file – instance of file writer
- args.location (string table) – location within file (optional)
Returns: file writer as returned by
file:writer()
.The argument
location
specifies a path in a structured file format like H5MD given as a table of strings. It defaults to{"dynamics", self.label, "intermediate_scattering_function"}
.