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_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 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
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"}
.