The 1274-line page becomes a landing page (quick start, the page map, where it fits) plus seven pages a reader can answer one question from: installing, what rugnux reads, running it, integration with other programs, the results report, advanced usage, and powder calibration. Content is moved, not rewritten - only the connective sentences at each page top are new. Every internal anchor is remapped to its new page and every inbound link (DEPLOYMENT, TOOLS, HDF5, CPU_DATA_ANALYSIS) updated; the built site has zero Sphinx warnings and an anchor check over the rendered HTML finds no dead link. index.rst leads with the rugnux group, then acquisition, FPGA, reference and project. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EFEJG6WBQv8th4UJFNe53N
72 lines
3.0 KiB
Markdown
72 lines
3.0 KiB
Markdown
# Tools
|
|
|
|
Besides the main services ([`jfjoch_broker`](JFJOCH_BROKER.md),
|
|
[`jfjoch_writer`](JFJOCH_WRITER.md), [`jfjoch_viewer`](JFJOCH_VIEWER.md)), the repository ships a
|
|
number of command-line tools. Each prints its own usage when run with `-h` or without arguments.
|
|
|
|
## Data analysis
|
|
|
|
### rugnux
|
|
Offline CLI tool that runs the full crystallographic analysis pipeline (spot finding, indexing,
|
|
integration, scaling/merging) on a stored HDF5 dataset, producing a `_process.h5` file and, when
|
|
merging, reflection files. Merging is on by default (`--no-merge` disables it). `--mode` picks what a
|
|
run does: `mx` (the above, the default), `azint` (only azimuthal integration, no spot
|
|
finding/indexing), `scale` (re-scale/merge the already-integrated reflections in a `_process.h5`
|
|
without re-integrating) or `calibration` (detector geometry from a calibrant's powder rings, written
|
|
as a `.poni` file). See [rugnux](RUGNUX.md).
|
|
|
|
`rugnux` installs on its own, as the `rugnux` package or as a standalone archive — see
|
|
[Installing rugnux](RUGNUX_INSTALL.md).
|
|
|
|
### jfjoch_extract_hkl
|
|
Extracts reflections (HKL list) from a Jungfraujoch master file; can sum the same HKL across
|
|
neighbouring images and compare against an XDS `INTEGRATE.HKL` reference. A developer utility: it is
|
|
built from source but, like `jfjoch_recompress`, is not installed into any package.
|
|
|
|
## FPGA / PCIe card management
|
|
|
|
### jfjoch_pcie_status
|
|
Prints detailed status information about the card. Safe to run during data collection:
|
|
```
|
|
./jfjoch_pcie_status /dev/jfjoch0
|
|
```
|
|
|
|
### jfjoch_pcie_net_cfg
|
|
Reads and modifies the network configuration of the card's interfaces:
|
|
```
|
|
jfjoch_pcie_net_cfg <device name>
|
|
Read configuration for all network interfaces of a device
|
|
jfjoch_pcie_net_cfg <device name> <if number>|fgen
|
|
Read configuration for a particular network interface / internal frame generator
|
|
jfjoch_pcie_net_cfg <device name> <if number>|fgen ipv4 <IPv4 address>
|
|
Set IPv4 address for a particular network interface / internal frame generator
|
|
jfjoch_pcie_net_cfg <device name> <if number>|fgen direct 0|1
|
|
Set direct mode for a particular network interface / internal frame generator
|
|
jfjoch_pcie_net_cfg <device name> <if number>|fgen clear
|
|
Clear Ethernet counters for a particular network interface / internal frame generator
|
|
```
|
|
|
|
### jfjoch_pcie_clear_net_counters
|
|
Resets the card's Ethernet, UDP and ICMP packet counters (which otherwise run from power-on):
|
|
```
|
|
./jfjoch_pcie_clear_net_counters /dev/jfjoch0
|
|
```
|
|
|
|
## Testing, benchmarking and simulation
|
|
|
|
### jfjoch_udp_simulator
|
|
UDP packet simulator used to test the Jungfraujoch FPGA receiver.
|
|
|
|
### jfjoch_fpga_test
|
|
Exercises and benchmarks the FPGA data path and receiver. With `-H` it runs the high-level
|
|
synthesis C model on the CPU, so no FPGA device is required.
|
|
|
|
### jfjoch_lite_perf_test
|
|
Performance test of the lite (CPU/GPU) analysis path — indexing, integration and optional file
|
|
writing.
|
|
|
|
### jfjoch_hdf5_test
|
|
Tests single-threaded HDF5 writer performance.
|
|
|
|
### jfjoch_simplon_test
|
|
Minimal test client for a DECTRIS SIMPLON detector API. |