docs: bring the stills geometry and live merge pages in step with rc183

- Stills geometry refinement is on by default for all stills and, without a
  reference cell, anchors on the cell the sampled frames index to; the
  distance is then a hypothesis too (CPU_DATA_ANALYSIS_IMAGE 1.4, overview,
  the -C row of the model/reference table).
- The live serial merge is made in the consensus cell of the frames indexed
  by the first merge, not the dataset settings' cell (JFJOCH_BROKER).
- The CCD inactive-area mask, and the beam-stop finder reading those pixels
  as data, described in CPU_DATA_ANALYSIS_IMAGE 1.6.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UqXYdL4qBGYRiSXSGXfCLu
This commit is contained in:
leonarski_fandClaude Opus 5.5 committed 2026-11-05 15:59:49 +01:00
1 parent e87a17b075
commit 0ee71f1971
4 files changed
+24 -9

No files matched your search

+18 -4
View File
@@ -294,8 +294,8 @@ sample of frames spread over the run, and three centres are tried: the file's, t
measurement above, and the point-symmetry capture (a second estimator, because the background one is
biased where a shadow - a sample-delivery tape, say - covers part of the scattering). Each re-indexes the
same spots and is scored by how many land on their frame's lattice; the file's centre is kept unless
another puts at least 1/0.9 as many there. Where a reference cell is given, the detector distance is a
hypothesis too. The spots of the sample are found without resolution limits (a d-spacing depends on the
another puts at least 1/0.9 as many there. Where a reference cell is given, or the stills geometry
refinement has fitted one de novo (below), the detector distance is a hypothesis too. The spots of the sample are found without resolution limits (a d-spacing depends on the
distance being checked) and spots piled up at one radius - a powder ring - are left out. A scan over
30-3000 mm in 2.5 % steps at every centre candidate finds the peaks, the strongest are looked at more
closely and a finer step about the best decides against the file's distance, which is kept unless the best
@@ -304,8 +304,11 @@ The range is in millimetres, not in multiples of the file's value, so a stated c
nominal or wrong does not limit where the search looks, and an input that states no distance (an XTC) is
searched too. A distance given with `--detector-distance` is held: it is neither searched nor refined.
Without a cell nothing is searched in distance: on its own a wrong distance indexes as a wrong cell, not
as fewer indexed spots. The stills geometry refinement, `--refine-geometry`, then bundle-adjusts the
centre and the distance together with the cell over strongly indexed frames (§7.7); it is on by default where a reference cell is given.
as fewer indexed spots. The stills geometry refinement, `--refine-geometry`, bundle-adjusts the
centre and the distance together with the cell over strongly indexed frames (§7.7); it is on by default for
all stills. Without a reference cell it anchors on the cell most of the sampled frames index to de novo
(the frames on it are the ones fitted), and that cell serves the geometry steps only: the run itself is
still indexed de novo.
**What ends up in the output.** The report's `BEAM_CENTRE` (the PONI) and `DIRECT_BEAM` are the
geometry the result was integrated at, and so is `JFJOCH_DATASET_SETTINGS`; `POSTREFINE_BEAM_CENTRE`
@@ -447,6 +450,17 @@ value on most frames (already invalid on every frame, but not in the static mask
them. A CCD (no sensor depth: read with an offset, not Poisson) is left alone. One log line says how
many pixels were masked and why.
**Outside a CCD's active area.** An input in detector units whose background shows no photon peaks (a
CCD, an image plate or another integrating detector read through an amplifier) has read noise on every
live pixel, so no live pixel reads the same value on all 16 frames the detector gain is
measured on. A pixel that does lies outside the active area - the corners of a round CCD, a border or seam
the detector's corrections leave at zero - and is masked as dead (bit 1) before the run starts. A test that
compares a pixel with its own resolution ring cannot see such an area: beyond the circle of
a round CCD the whole ring reads zero. It is not made where the pixels that do vary read zero on 1 % or
more of their readings (counted photons, or a file cut at a threshold), since a pixel at zero on every
frame may then simply have had nothing to record. The beam-stop finder (§1.5) reads these pixels as the
input has them, because a CCD reads the deep shadow of a beam stop at one value too.
### 1.7 The saturation level
A detector that saturates clips every value beyond its ceiling down to it, so on a frame's bright tail -
+3 -2
View File
@@ -283,8 +283,9 @@ mask in use. Where the start message cannot be sent after the pre-pass (no write
cannot be set up, the collection ends with that error, reported by `/status` and `/wait_till_done`, and the
next `/start` runs as usual.
The indexed frames are also merged, as `rugnux --mode scale` merges stills, in memory - in the cell of the
dataset settings (else the consensus cell of the frames indexed by then) and their space group (else P1).
The indexed frames are also merged, as `rugnux --mode scale` merges stills, in memory - in the consensus cell
of the frames indexed by the first merge (the cell of the dataset settings only picks the frames that are
merged) and the space group of the dataset settings (else P1).
At half and at three quarters of the images the frames so far are merged beside the analysis, on 8 threads, and
the result is reported as a provisional step note: crystals, resolution, CC1/2, R_split, completeness and
⟨I/σ⟩. The first of these merges scales and post-refines every crystal so far and decides the indexing
+1 -1
View File
@@ -58,7 +58,7 @@ the rest walks through a run step by step.
| `--reference-column <label>` | An MTZ column label | Which column of the reference is read | Through `-z` only |
| `--free-flags <file>` | Merged data carrying an R-free set: an MTZ, or a structure-factor mmCIF - typically the deposited reflections of the `--model` | Its R-free set and nothing else: the model is validated and refined against it, on the model's axes, where the merge matches the file's intensities (`R_FREE_FLAGS= FILE`) | The free flags only |
| `-S, --space-group` | A space group | Fixes it: no space-group search | **Yes**: the group is yours (a fitting model may still relabel its hand) |
| `-C, --unit-cell` | A cell | Indexing looks for this cell (within tolerance); the FFT search range is widened to cover it; on stills it turns on the shared-geometry refinement and, with `-S` and `--model`, the per-image use of the model | **Yes**: the cell, and the axis order the files are written in |
| `-C, --unit-cell` | A cell | Indexing looks for this cell (within tolerance); the FFT search range is widened to cover it; on stills the shared-geometry refinement anchors on it (without it, on the cell the frames index to) and, with `-S` and `--model`, the per-image use of the model | **Yes**: the cell, and the axis order the files are written in |
| `--force-rotation-lattice` | Nine numbers: a lattice | Skips the first-pass indexing and uses this lattice | **Yes**: the lattice |
| `--report-resolution <dmin>[,<dmax>]` | Another program's resolution range | A second statistics table at that range (`REFRES_*`) | No — report only |
+2 -2
View File
@@ -100,8 +100,8 @@ the merge is written in. Either way a crystal whose own refined cell already tel
keeps its indexing ([Advanced ▸ the indexing ambiguity](RUGNUX_ADVANCED.md#the-indexing-ambiguity)). The input may be
several files given together - Jungfraujoch masters, or the files an XFEL pipeline writes, read without
a geometry file ([Serial XFEL inputs](RUGNUX_FORMATS.md#serial-xfel-inputs)). Before the images are
processed the beam centre is decided on a sample of frames, the file's against the measured ones, and a
given unit cell also decides the detector distance there; the cell is a starting point the frames
processed the beam centre is decided on a sample of frames, the file's against the measured ones, and the
detector distance is refined there too, on a given unit cell or, without one, on the cell the frames index to; the cell is a starting point the frames
refine, and only the frames of its crystal form are merged. With a cell, the geometry refinement places
each detector module as well ([§1.4](CPU_DATA_ANALYSIS_IMAGE.md#14-the-beam-centre),
[§7.7](CPU_DATA_ANALYSIS_INDEXING.md#77-stills-a-given-cell-and-the-detector-modules)). The report adds