The nearest-neighbor model consist of considering that each Li atom makes
a particular contribution to the total chemical shift spectra. The ansatz
chosen to locate the center of the peak was inspired by a comment from
Ket et al. [1], who stated that if a Li atom is near a bonded Si, then
the center of its peak is at 18ppm, whereas if it is near an isolated Si
atom, the center should be at 6ppm. To take into account intermediate
contributions that appears in the spectra we define the peak position of
each Li atom as follow,
where the sum is considered over all first nearest-neighbors (NN) Si atoms
(\(N_{Si}\)) and \(\delta_{Key}\) is the shift value of 18ppm or
6ppm depending of the Si type.
Parameters:
universe (MDAnalysis.core.universe.Universe) – a MDAnalysis Universe with the box defined
start (int, default=None) – start frame of analysis
stop (int, default=None) – stop frame of analysis
step (int, default=None) – number of frames to skip between each analyzed one
Plot the Li chemical shift spectra once you have the centers and width.
Parameters:
csc (macchiato.chemical_shift.ChemicalShiftCenters or numpy.ndarray) – a ChemicalShiftCenters object already fitted or a numpy array with the
centers
csw (macchiato.chemical_shift.ChemicalShiftWidth or numpy.ndarray) – a ChemicalShiftWidth object already fitted or numpy.ndarray with
sigma, gamma and heigth params of each voigt peak per Li atom
Delta of a splitting in a two-contribution peak in Mössbauer spectra.
We define a \(z\)-value as the minimum between Li and Si
concentrations in the first coordination shell of each Si atom, i.e.,
\(0 \leq z \leq 0.5\). Then, there is a linear relationship between
\(\Delta\) of each Si atom with its \(z\)-value. This was inspired
by Li et al. work [2].
Parameters:
universe (MDAnalysis.core.universe.Universe) – a MDAnalysis Universe with the box defined
start (int, default=None) – start frame of analysis
stop (int, default=None) – stop frame of analysis
step (int, default=None) – number of frames to skip between each analyzed one
X-ray Pair Distribution Function (PDF or \(G(r)\)).
PDF can be computed from Radial Distribution Function (RDF) by considering
the contribution of each interaccion (Si-Si, Si-Li, Si-Si) given its
scattering factor. Then, a measurement that has a mixture of alloys can be
fitted to determine the weight factor of each one to predict the
experiment.
Parameters:
universes (list of MDAnalysis.core.universe.Universe) – a list of universes with the box defined per alloy to be considered
X (array-like of shape (n_ppm, 1)) – chemical shift ppm points to evaluate the spectra
ax (matplotlib.axes.Axes, default=None) – the current axes
**kwargs – additional keyword arguments that are passed and are documented in
matplotlib.axes.Axes.plot for the predictions values.
Returns:
ax – the current axes
Return type:
matplotlib.axes.Axes
versus_data(X, y, ax=None, true_kws=None, pred_kws=None)
Plot the predicted spectra against the true data.
Parameters:
X (array-like of shape (n_ppm, 1)) – chemical shift ppm points
y (array-like of shape (n_ppm,)) – true intensity
ax (matplotlib.axes.Axes, default=None) – the current axes
true_kws (dict, default=None) – additional keyword arguments that are passed and are documented in
matplotlib.axes.Axes.scatter for the true values.
pred_kws (dict, default=None) – additional keyword arguments that are passed and are documented in
matplotlib.axes.Axes.plot for the predictions values.
versus_data(X, y, ax=None, true_kws=None, pred_kws=None)
Plot the predicted PDF against the true data.
Parameters:
X (array-like of shape (rvalues, 1)) – r values
y (array-like of shape (rvalues,)) – target intensity of the total PDF
ax (matplotlib.axes.Axes, default=None) – the current axes
true_kws (dict, default=None) – additional keyword arguments that are passed and are documented in
matplotlib.axes.Axes.scatter for the true values.
pred_kws (dict, default=None) – additional keyword arguments that are passed and are documented in
matplotlib.axes.Axes.plot for the predictions values.