pyextal.jaxMultipole.settings¶
Settings of a multipole fit, and the ladder of nested models it runs.
A fit is defined by four things: the crystal (the .dat the Bloch
refinements used), the data, how each site is modelled (AtomSpec fields) and
which parameters each step of the ladder refines (SiteRefine fields).
The default ladder adds one physical ingredient per step and is judged by Hamilton’s test at each one:
IAM+ADP symmetry-allowed U_ij only, neutral spherical atoms
+Pv valence populations (one eliminated by electroneutrality)
+kappa valence expansion/contraction
+Plm the symmetry-allowed multipoles (kappa' fixed)
+kappa_p kappa' (only when ``ladder_kappa_p`` is set)
A site whose spec has lmax = -1 never gets multipoles; fix_kappa names
sites whose kappa stays at 1 throughout (Sr in Friis et al. 2004).
Classes¶
Everything a jaxMultipole.cli run needs. |
Functions¶
|
The nested sequence of refinements described in the module docs. |
Module Contents¶
- class pyextal.jaxMultipole.settings.FitSettings¶
Everything a jaxMultipole.cli run needs.
- Variables:
dat (str) – Crystal
.dat(cell, atoms, space group, voltage).h5 (list) – Dataset HDF5 files, or glob patterns, for the per-scan runs.
notes (str) – Notes prefix selecting the runs (
'geo': per-scan).run (str) –
'latest'or a run key.method (str) –
'robust'or'mean'aggregation (data.from_scan_runs).clip (float) – Robust rejection threshold, sigma.
sigma (str) –
'std'or'sem'.min_n (int) – Minimum measurements per family.
floor (tuple) –
(absolute, relative)sigma floor.joint_json (str, optional) – Take central values from this joint run, sigmas from the scans.
tables (list[dict]) – Extra data,
dict(path=..., kind='xray').exclude (list) – Families to leave out, as
[h, k, l].smax (float, optional) – Leave out reflections beyond this s.
sites (dict) –
label -> AtomSpeckeyword dict.fix_kappa (list[str]) – Sites whose kappa is never refined.
ladder (list, optional) –
[(name, {label: SiteRefine kwargs})]; default_ladder when None.ladder_kappa_p (bool) – Append a kappa’ step to the default ladder.
restraints (list[dict]) –
dict(name='Ti1.kappa_p', target=1, sigma=0.05).start (dict) – Physical starting values,
{'O1.Pv': 6.5}.dependent (str, optional) – Population eliminated by electroneutrality.
out (str) – Output prefix (
<out>.json,<out>.txt, maps).maps (list[dict]) – Deformation-density planes:
dict(name, origin, u, v, extent=(-2, 2, -2, 2), n=121)in fractional / lattice units.
- dat: str = None¶
- h5: list = []¶
- notes: str = 'geo'¶
- run: str = 'latest'¶
- method: str = 'robust'¶
- clip: float = 4.0¶
- sigma: str = 'std'¶
- min_n: int = 3¶
- floor: tuple = (2e-05, 0.0)¶
- joint_json: str = None¶
- tables: list = []¶
- exclude: list = []¶
- smax: float = None¶
- sites: dict¶
- fix_kappa: list = []¶
- ladder: list = None¶
- ladder_kappa_p: bool = False¶
- restraints: list = []¶
- start: dict¶
- dependent: str = None¶
- out: str = 'multipole_fit'¶
- maps: list = []¶
- pyextal.jaxMultipole.settings.default_ladder(model, fix_kappa=(), kappa_p=False)¶
The nested sequence of refinements described in the module docs.