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 \(N\). 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_modeargs.norm (number) – normalisation factor
args.label (string) – module label (optional)
- Returns:
instance of intermediate scattering function module
The argument
density_modeis an instance or a table of up to 2 instances ofhalmd.observables.density_modeyielding the partial density modes \(\rho_\alpha(\vec k, t)\) and \(\rho_\beta(\vec k, t)\). They must have been constructed with the same instance ofhalmd.observables.utility.wavevector. Passing only one instance implies \(\alpha = \beta\).The optional argument
labeldefaults 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
locationspecifies a path in a structured file format like H5MD given as a table of strings. It defaults to{"dynamics", self.label, "intermediate_scattering_function"}.