jaxrts.models.PeakCollection
- class jaxrts.models.PeakCollection(k_pos: Quantity, intensity: Array, peak_function: Callable[[Quantity], Array])[source]
A model for approximating \(S_\text{ii}\) as a sum of peaks. Can be used to model, e.g., ideal powder diffraction, where elastic signal would only be expected at certain values of \(k\).
- Parameters:
k_pos (Quantity) – The position of the peaks in \(k\) space.
intensity (jnp.ndarray) – The intensity of the peaks. Should have the same length as k_pos.
peak_function (Callable[[Quantity], jnp.ndarray]) –
A function defining the shape of a peak. The function must:
Be normalized such that its integral over all \(k\) equals 1.
Be centered at zero in \(k\)-space.
Accept exactly one argument: a position in \(k\)-space.
Return an array with shape (n, n), where n is the number of ion species (
jaxrts.PlasmaState.nions).
Methods
Rayleigh_weight(plasma_state, setup)This is the result from Wünsch [Wünsch, 2011], to calculate the Rayleigh weight for a plasma from multiple species.
S_ii(plasma_state, setup)__init__(k_pos, intensity, peak_function)check(plasma_state)Test if the model is applicable to the PlasmaState.
citation([style, comment])Return bibliographic information for the Model used.
evaluate(plasma_state, setup)prepare(plasma_state, key)Modify the plasma_state in place.
Attributes
A list of keywords where this model is adequate for
A list of bibtex keys.
Examples using
jaxrts.models.PeakCollectionLatticeDebyeModel for approximating diffuse scattering in crystals
LatticeDebyeModel for approximating diffuse scattering in crystals