simulate_light_emission#

Simulate calibration devices using the light emission package.

Run the application in the command line. There are two ways this application can be executed:

  1. Illuminator at varying distances.

  2. Illuminator and telescopes at fixed positions as defined in the layout.

Example Usage#

  1. Simulate light emission with varying distances:

    simtools-simulate-light-emission --telescope MSTN-04 --site North             --illuminator ILLN-01 --light_source_setup variable             --model_version 6.0.0 --light_source_type led
    
  2. Simulate light emission with telescopes at fixed positions according to the layout:

    simtools-simulate-light-emission --telescope MSTN-04 --site North             --illuminator ILLN-01 --light_source_setup layout             --model_version 6.0.0             --light_source_type led
    

Command Line Arguments#

–telescope (str, required)

Telescope model name (e.g. LSTN-01, SSTS-design, SSTS-25, …)

–site (str, required)

Site name (North or South).

–illuminator (str, optional)

Illuminator in array, e.g., ILLN-01.

–light_source_setup (str, optional)

Select calibration light source positioning/setup: - “variable” for varying distances. - “layout” for actual telescope positions.

–model_version (str, optional)

Version of the simulation model.

–light_source_type (str, optional)

Select calibration light source type: led (default) or laser. This changes the pre-compiled (simtel_array) application that is used to run the light emission package with. Currently we use xyzls (laser), and ls-beam can be accessed by using the laser option.

–off_axis_angle (float, optional)

Off axis angle for light source direction.

–plot (flag, optional)

Produce a multiple pages pdf file with the image plots.

Example#

Simulate isotropic light source at different distances for the MSTN-04:

simtools-simulate-light-emission --telescope MSTN-04 --site North         --illuminator ILLN-01 --light_source_setup variable         --model_version 6.0.0 --light_source_type led    ```

Expected Output:

light-emission package stage:
File '/workdir/external/simtools/simtools-output/light_emission/model/
    atmprof_ecmwf_north_winter_fixed.dat' registered for atmospheric profile 99.
Atmospheric profile 99 to be read from file '/workdir/external/simtools/
    simtools-output/light_emission/model/atmprof_ecmwf_north_winter_fixed.dat'.
Atmospheric profile 99 with 55 levels read from file /workdir/external/
    simtools/simtools-output/light_emission/model/atmprof_ecmwf_north_winter_fixed.dat
Initialize atmosphere ranging from 0.000 to 120.000 km a.s.l.
IACT control parameter line: print_events 999 10 100 1000 0
Case 1: 1 event with 1e+10 photons.
Using IACT/ATMO package version 1.67 (2023-11-10) for CORSIKA 6.999
Output file /workdir/external/simtools/simtools-output/light_emission/xyzls.iact.gz
    not yet created.
Telescope output file: '/workdir/external/simtools/simtools-output/
    light_emission/xyzls.iact.gz'
....
....
Sim_telarray stage:
Telescope 1 triggered (1/0/0/0, mask 1), summation from 36 to 95 of 105
Event end data has been found.
Shower of 0.0000 TeV energy was seen in 1 of 1 cases.
Photon statistics:
All photons:               928518
Used photons:              928518
Not absorbed/max. Q.E.:    189560
Reflected on mirror:        26815
Camera hit:                 25574
Pixel hit:                  25574
Detected:                   20998
Trigger statistics:
Tel. triggered:             1
Tel. + array:               1
Early readout:              0
Late readout:               0
Finish data conversion ...
Writing 13 histograms to output file.
simulate_light_emission.default_le_configs(le_application, args_dict)[source]#

Define default light emission configurations.

Predefined angular distribution names not requiring to read any table are “Isotropic”, “Gauss:<rms>”, “Rayleigh”, “Cone:<angle>”, and “FilledCone:<angle>”, “Parallel”, with all angles given in degrees, all with respect to the given direction vector (vertically downwards if missing). If the light source has a non-zero length and velocity (in units of the vacuum speed of light), it is handled as a moving source, in the given direction.

Parameters:
le_application: str

Light emission application.

args_dict: dict

Dictionary with command line arguments.

Returns:
default_config: dict

Default light emission configuration.

simulate_light_emission.distance_list(arg)[source]#

Convert distance list to astropy quantities.

Parameters:
arg: list

List of distances.

Returns:
values: list

List of distances as astropy quantities.

simulate_light_emission.main()[source]#

Simulate light emission.

simulate_light_emission.select_application(args_dict)[source]#

Select sim_telarray application for light emission simulations.

Parameters:
args_dict: dict

Dictionary with command line arguments.

Returns:
le_application: str

Light emission application.