Key concepts

Asymmetry organises an analysis around a small number of objects. They map onto the physics of a muon experiment rather than onto files or windows, and the same objects appear whether you drive the program from the graphical interface or script against the asymmetry.core API. This page introduces them once, so that the rest of the documentation can refer to them without ceremony. For the underlying physics, see Muon-spin spectroscopy: a primer.

Runs and datasets

A run is the raw output of one measurement: a set of per-detector time histograms together with the metadata that describes how they were collected — temperature, applied field, detector geometry, time-zero, the good-bin range, and so on. Loading a file with load() returns a dataset (a MuonDataset), which wraps the run and carries the reduction choices applied to it; the raw histograms themselves live on ds.run. A multi-period measurement loads as a list of datasets, one per period. Provenance travels with the dataset — every correction is recorded rather than baked into the histograms, so a saved analysis reproduces the same numbers when it is reopened.

Detector grouping

The individual detectors are rarely analysed one at a time. Grouping combines them into a few channels — most often a forward and a backward group on opposite sides of the initial muon spin — by summing the histograms of the detectors assigned to each group. The grouping is a property of the analysis, not of the data: detectors can be regrouped, excluded, or arranged into the named groups a particular instrument expects, and the raw histograms are never altered. See Detector Grouping and Layout.

The asymmetry

The quantity of interest is the asymmetry, the normalised difference between two opposed groups. For a forward count \(F(t)\) and a backward count \(B(t)\),

\[A(t) = \frac{F(t) - \alpha B(t)}{F(t) + \alpha B(t)},\]

where \(\alpha\) is a calibration constant that corrects for the unequal counting efficiency and solid angle of the two groups. Forming the asymmetry divides out the exponential muon decay and leaves the time evolution of the muon spin polarisation — the signal that every downstream fit and transform works on. \(\alpha\) is usually calibrated once, from a transverse-field run in which the asymmetry is known to oscillate symmetrically about zero; see Grouping and calibration walkthrough.

The reduction order

The corrections that take raw histograms to an asymmetry are applied in a fixed order — deadtime → background → grouping → asymmetry — because each step assumes the previous one has been done. Deadtime correction restores the true count rate where the instantaneous rate is high (PSI and ROOT histograms need it; ISIS NeXus data arrive already corrected); background subtraction removes the time-independent floor; only then are the detectors grouped and the asymmetry formed. The reduction layer is documented in Data reduction.

Representations

Most analyses look at the same run in more than one way: as a forward–backward asymmetry, as a set of individual detector groups, or as a frequency spectrum. Asymmetry calls these representations, and they are first-class — a fit, its parameters, and any resulting trend all belong to the representation they were made in, and switching representation switches the analysis that goes with it. The parameter-trend panel, for example, shows the series for whichever representation is active.

Fits, models, and components

A fit describes a representation with a model and a set of fitted parameters. Models are assembled from components — normalised building blocks such as Exponential, Gaussian, or an oscillation — combined with arithmetic and fraction groups in an expression like Gaussian * Exponential + Constant. Component names are the ones used inside expressions; the standalone single-component models in the MODELS registry carry longer names, a distinction that matters mainly when scripting and is spelled out in the API cookbook. Fitting is covered in Fitting engine.

Projects

A complete session — the loaded datasets, their grouping and reduction choices, the fits, the trends, and the state of the browser and plot — saves to a single .asymp project file and reopens exactly as it was left. See Project files.