Model¶
The developer's by-kind index: where each CORA aggregate's P01 content lives, and the record of what is deliberately deferred. Design-phase scaffold.
For the aggregate shapes see the architecture model and the per-BC modules.
| Aggregate (BC) | Where at P01 |
|---|---|
| Asset (Equipment) | the stage pages: Source, Sample, Detector |
| Computed / virtual axes (Equipment) | Source (coupled mono energy) |
| Capability, Method (Recipe) | Techniques |
| Enclosure (Enclosure) | the index |
| Zone, Conduit, Policy (Trust); Actor (Access) | Governance |
| Procedure, Recipe, Caution, Supply, Subject, Run, Campaign, Dataset, Decision | deferred (design-phase; see below) |
What makes P01 new¶
P01 is a new Site's first beamline, and two things genuinely new at the modelling level. It is CORA's first PETRA III beamline and a further Tango / Sardana control floor (after MAX IV and ALBA). Its science is hard X-ray dynamics: nuclear resonant scattering in EH1, diffraction in EH2, and RIXS in EH3, across 2.5-80 keV.
- The control plane (
CTRL-1). PETRA III runs Tango with Sardana as the scan layer. P01 is the first deployment whose device handles were read from a DESY OnlineXML registry, the Tango analog of the ESRF BLISS Beacon config and the APS Guarneridevices.yml. The OnlineXML extractor that produced the candidate isscripts/reverse_engineer/(the--source onlinexmlpath). - The technique branch (
TECH-1). NRS and RIXS are new to CORA's catalog but reuse the IXS / RIXS slugs already carried pending across the fleet, so no Method is coined now.
No new families (the optics / motion spine reuses the fleet precedent)¶
P01 coins no new Family. The monochromators bind Monochromator and the coupled energy is a PseudoAxis; the mirrors (deflection and KB) bind Mirror; the slits bind Slit; the CRL binds Transfocator; the undulator binds InsertionDevice; the stages bind LinearStage / RotaryStage / Table; the EH2 sample circle binds Goniometer; the BPM / ion chamber / diamond monitor bind FluxMonitor. Nothing in the catalog changes.
The one binding worth calling out: the EH2 sample circle is modelled as a Goniometer Asset (the catalog Family), not the composed Diffractometer Assembly. The OnlineXML exposes only theta / two-theta; the Diffractometer Assembly requires a goniometer plus a detector arm plus a reciprocal-space layer, none of which the registry confirms. This follows the catalog's own guidance (the TARDIS E6C precedent) and is carried DIFF-1.
The control plane¶
P01 sits on the PETRA III Tango device floor with Sardana as the scan / motion SCADA layer (Pool / MacroServer / MeasurementGroup, Spock CLI, Taurus UIs). A motion axis is a Tango motor device (p01/motor/<hutch>.<n>), a coupled axis is a virtual-motor executor (p01/vmexecutor/<name>), and a scan is a Sardana macro. The handles are read from P01's public OnlineXML registry and carried confirm; the device servers live in tango-ds/deviceclasses, the Sardana fork in fsec-sardana (CTRL-1). The NRS / RIXS acquisition runs as a Sardana macro; that orchestration is the seam CORA's edge replaces or drives through over its ControlPort, conducting over the Tango floor rather than owning it. The NeXus file-writing (the nexdatas chain) is plumbing CORA observes, not data it owns.
Deliberately not here yet¶
- The detector devices (
DET-1). The OnlineXML carries detector positioning stages, not the detector device servers; the APD / RIXS / diffraction detectors are named, not bound. - The physical optics detail (
MONO-1,NRS-1,OPT-1). The DCM crystal cut, which HRM is in beam per isotope, the mirror coatings, the KB bend radii, and the CRL recipe are carried confirm-pending. - The goniometer geometry (
DIFF-1). The EH2 circle count beyond theta / two-theta, and whether it composes a Diffractometer Assembly, is pending. - The handle freshness (
CTRL-1). The OnlineXML branch isdebian/jessie; some handles may lag the live Tango database. - The NRS / RIXS Methods (
TECH-1). Whether these enter CORA's catalog is an owner decision; the Practices render unlinked, pending, reusing the IXS / RIXS slugs. - The PSS permit signals (
PSS-1). Not in the OnlineXML; carried pending, not invented. - The simulated devices and full asset-tree scenarios. No
test_p01_*.pyregisters the asset tree, and no vendor Models are bound. - Operations and experiment views. A runbook and live experiment view for a beamline CORA does not yet drive would be invention; see the note on the index.