simtools-run-application#

Run several simtools applications using a configuration file.

Allows to run several simtools applications with a single configuration file, which includes both the name of the simtools application and the configuration for the application.

This application is used for model parameter setting workflows. Strong assumptions are applied on the directory structure for input and output files of applications, for details see the CTAO Simulation Model Parameter Setting repository.

Tip

Browse the CTAO Simulation Model Parameter Setting repository for a list of examples and templates for configuration files.

For simplified configuration, a placeholder called __SETTING_WORKFLOW__ can be used in the configuration file. This placeholder will be replaced with the directory below input (example: configuration file is in input/LSTN-design/num_gains/20250214T134800/config.yml, then the placeholder will be replaced with LSTN-design/num_gains/20250214T134800). This will also be the directory for any output generated by the application.

Run time environments can be defined in the configuration file using the runtime_environment block. The following example shows how to define a runtime environment:

runtime_environment:
image: ghcr.io/gammasim/simtools-prod-sim-telarray-240927-corsika-77550-bernlohr-1.68-prod6-baseline-qgs2-no_opt:20250716-122341
network: simtools-mongo-network
environment_file: ./.env
container_engine: podman
options:
- '--arch amd64'

If the ignore_runtime_environment flag is set, the application will run in the current environment, ignoring any definitions in the configuration file.

The database configuration and setting of other environment variables is done as described in Environment Variables.

Example#

Run the application with the configuration file config_file_name:

simtools-run-application --configuration_file config_file_name

Run the application with the configuration file config_file_name, but skipping all steps except step 2 and 3 (useful for debugging):

simtools-run-application --configuration_file config_file_name --steps 2 3