simtools-plot-trigger-patches#
simtools-plot-trigger-patches creates a static report from a telescope model’s
camera geometry and trigger-patch membership. It does not run pixled,
sim_telarray, or CORSIKA, and it does not test trigger firing or thresholds.
The first PDF page is the existing patch configuration map, colored by the
number of configured patches containing each camera pixel. The second page maps
each pixel’s median physical distance to the other members of each patch it
belongs to, then takes the median across its patches. Distances use the camera
model’s coordinate units (cm). Pixels with no patch membership or no peer in a
patch are shown as undefined. Their distance_status in the pixel table
distinguishes no patch membership from no other members in patch; uncovered
pixel IDs also appear in the page summary.
Group summaries include patch size, median and maximum pairwise distances, and connected-component counts based on the camera’s neighbor geometry. These are screening diagnostics: patch layouts can differ by camera, so the report does not apply a universal distance threshold or decide that uncovered pixels are misconfigured. Trigger eligibility needs an explicit design/model role. The page-two panel lists only groups with an unusually large maximum span (above the Tukey upper fence, calculated within each group kind) or with disconnected components. Distances are rounded to the displayed precision before outlier detection, so harmless floating-point variation does not create extra entries. These entries are review candidates, not automatic failures.
Example#
simtools-plot-trigger-patches --site North --telescope LSTN-design \
--model_version 7.0.0 --output_path trigger-patch-report
The output directory contains a two-page PDF, per-pixel and per-group ECSV
tables, and a JSON summary. Both pages place the camera map at the same position;
page one reserves the summary-panel area used on page two. The page-two group
and coverage summary is also written to the application log for terminal review.
Both places list every pixel ID for each group shown; the ECSV tables retain the
full configuration. The JSON includes model identifiers, a configuration
digest, coverage status, and a runtime-trigger status marked not tested. A
pass membership coverage status means every camera pixel appears in at least
one patch; it does not validate firing or trigger eligibility. Use
--output_file to set the shared file-name base.
Create an offline camera trigger-patch configuration report.
- simtools.applications.plot_trigger_patches.run(app_context)[source]#
Write a configuration-only PDF and machine-readable diagnostics.
options#
- –help
show this help message and exit
- –output_file
Base name output files; defaults: trigger-patches-<telescope>.
simulation model#
- –model_version
Simulation production model version(s). Use –show_options model_version.
Required.
- –overwrite_model_parameters
JSON string with model parameters to overwrite
- –site
Observatory site (e.g., North, South). Use –show_options site.
Required.
- –telescope
telescope model name (e.g., LSTN-01, SSTS-design, …)
Required.
model repository#
- –simulation_models_path
Path containing the simulation-model repository to read.
- –simulation_models_git_path
Path to a local normal, bare, or mirror Git repository containing simulation models.
- –simulation_models_git_revision
Git tag, ref, or commit to read from the simulation-model repository.
application#
- –show_options
Print available values for a supported option and exit.
Plot the LST trigger-patch configuration#
Check camera trigger-patch coverage and spatial layout from model configuration without running simulations.
Application: simtools-plot-trigger-patches
Integration test: plot_trigger_patches.yml
Command
simtools-plot-trigger-patches --config tests/integration_tests/config/plot_trigger_patches.yml
Configuration
model_version: 7.0.0
output_path: simtools-output
site: North
telescope: LSTN-design