Files
Jungfraujoch/docs/TOOLS.md
T
leonarski_fandClaude Opus 4.8 8e27f9f727 jfjoch_azint: CPU azimuthal integration tool
Add jfjoch_azint, a multi-threaded tool that runs CPU azimuthal
integration (AzIntEngineCPU) on a Jungfraujoch HDF5 file and writes the
result to <prefix>_process.h5, mirroring jfjoch_process output.

Azimuthal integration settings (min/max Q, Q spacing, azimuthal bins,
polarization and solid-angle corrections), geometry (beam center,
detector distance, wavelength, PONI rot1/rot2) and the polarization
factor default to the values stored in the input file and can be
overridden from the command line.

Set az_int_phi_bin_count on the StartMessage so the writer sizes the
azimuthal dimension correctly for multi-azimuthal-bin output.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-17 16:17:42 +02:00

3.3 KiB

Tools

jfjoch_pcie_status

Prints detailed status information about the card. Execute by adding device path, e.g.:

./jfjoch_pcie_status /dev/jfjoch0

The program is safe to execute during a running data collection.

jfjoch_pcie_clear_net_counters

Network counters in the card give information about Ethernet, UDP and ICMP packets encountered by the network stack prior to Jungfraujoch logic. These counters are running from the moment card is powered on. They can be reset by running the program with device name, e.g.:

./jfjoch_pcie_clear_net_counters /dev/jfjoch0

jfjoch_pcie_net_cfg

Network configuration can be retrieved and modified with jfjoch_pcie_net_cfg tool. Usage:

jfjoch_pcie_net_cfg <device name>
     Read configuration for all network interface 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 counter for a particular network interface / internal frame generator

jfjoch_hdf5_tools

Tool to test single threaded HDF5 writer performance

jfjoch_offline_process

Tool to run offline processing on existing HDF5 dataset

jfjoch_udp_simulator

UDP simulator to test Jungfraujoch FPGA

jfjoch_pcie_read_register

Tool to read verbatim Jungfraujoch FPGA registers

jfjoch_azint

Runs CPU azimuthal integration on an existing Jungfraujoch HDF5 file using N threads and writes the result to <prefix>_process.h5. Example:

./jfjoch_azint -o output -N 8 input.h5

The integration settings and geometry default to the values stored in the input file; any of them can be overridden on the command line:

jfjoch_azint {<options>} <input.h5>
   -o, --output-prefix <txt>           Output file prefix (default: output)
   -N, --threads <num>                 Number of threads (default: 1)
   -s, --start-image <num>             Start image number (default: 0)
   -e, --end-image <num>               End image number (default: all)
   -t, --stride <num>                  Image stride (default: 1)
   -v, --verbose                       Verbose output

  Azimuthal integration:
   --min-q <num>                       Minimum Q for integration (1/A)
   --max-q <num>                       Maximum Q for integration (1/A)
   --q-spacing <num>                   Q bin spacing (1/A)
   --azimuthal-bins <num>              Number of azimuthal bins (default: 1)
   --polarization-correction <on|off>  Enable/disable polarization correction
   --solid-angle-correction <on|off>   Enable/disable solid angle correction

  Geometry overrides:
   --beam-x <num>                      Beam center X (pixel)
   --beam-y <num>                      Beam center Y (pixel)
   --detector-distance <num>           Detector distance (mm)
   --wavelength <num>                  Wavelength (A)
   --rot1 <num>                        PONI rotation 1 (rad)
   --rot2 <num>                        PONI rotation 2 (rad)
   --polarization <num>                Polarization factor