Array calibration#
Array calibration concerns telescope inter and cross calibration. Inter calibration refers to relative calibration of same type telescopes while cross calibration refers to relative calibration of both same and different telescope types. It is composed of three distinct use cases:
Cross / Inter calibration of telescope optical throughput using reconstructed shower energies.
Inter calibration of telescope optical throughput using image size.
Cross calibration of telescope timing.
Below we describe the configuration parameters of the tools implementing each of the above use cases.
Inter calibration of telescope optical throughput using reconstructed shower energies:
Inter calibration consists of a two step workflow. In the first step DL2 datasets, each corresponding to a single observation block, are processed in parallel and the event wise energy asymmetry is calculated and stored in intermediate temporary files. In the second step, the energy asymmetry files are processed and the inter calibration coefficients are calculated and stored as the corresponding DL2/Monitoring tables. This procedure is illustrated in the figure below:
Below are the configuration parameters for the energy asymmetry calculation.
event_filters: a dictionary with the event selection filters. The keys are the name of the filters while the values are the thresholds. Currently implemented are:
min_gammaness: used to select gamma-like showers.
min_energy: the minimum energy.
max_distance_asymmetry: used to select equidistant events.
energy_reconstructor: name of the energy reconstruction algorithm.
geometry_reconstructor: name of the geometry reconstruction algorithm.
gammaness_reconstructor: name of the classification algorithm.
quality_criteria: criteria for DL2 tables filtering.
max_impact_distance: a FloatTelescopeParameter that sets the maximum distance between the telescopes and a shower core in meters. The maximum distance between the telescopes in pair should not exceed the sum of these values for the telescopes in pair.
CalculateAsymmetry:
event_filters:
max_distance_asymmetry: 0.05
chunk_size: 100000
energy_reconstructor: RandomForestRegressor
geometry_reconstructor: HillasReconstructor
gammaness_reconstructor: RandomForestClassifier
QualityQuery:
quality_criteria:
- ["energy threshold", "RandomForestRegressor_tel_energy > 50 * u.GeV"]
- ["gammaness", "RandomForestClassifier_tel_prediction > 0.5"]
- ["valid reco", "RandomForestRegressor_tel_is_valid"]
PairFinder:
max_impact_distance:
- [type, "LST*", 125.0]
- [type, "MST*", 125.0]
- [type, "SST*", 225.0]
Following the production of the asymmetry tables the inter calibration tool shall be invoked. Below are its configuration parameters.
reconstruction_algorithm: name of the energy reconstruction algorithm.
throughput_normalisation: Setting the overall telescope throughput normalisation. Depending the use case, it could reflect the absolute optical throughput measured by the muon rings / illuminator, if we want to compare or complement these methods. Alternatively it could get an arbitrary number, e.g. one that sets the average throughput to 1, if the user wants to ‘flat-field’ the array. Finally it could be set to 1, if we want to identify outlier telescopes or study the aging.
reference_telescopes: ID of the telescope whose throughput kept fixed during the intercalibration minimisation.
CalculateInterCalibration:
overwrite: True
RelativeThroughputFitter:
throughput_normalisation: {
"LST": 1.0,
"MST": 1.0,
"SST": 1.0,
}
reference_telescopes: {
"LST": 1,
"MST": 5,
"SST": 34,
}
The tool produces a new hdf5 file with the following table:
DL2_SUBARRAY_INTER_CALIBRATION_GROUP
Where the inter-calibration results are stored. The table has the following fields:
Column Name |
Type | Description |
||
|---|---|---|---|
|
numpy.str |
Telescope type (LST, MST, SST). |
|
|
numpy.int64 |
Telescope ID. |
|
|
numpy.float64 |
Relative telescope throughput. |
|
|
numpy.float64 |
Relative telescope throughput uncertainty. |
|
Cross calibration of telescope optical throughput using reconstructed shower energies:
Not yet implemented.
Inter calibration of telescope optical throughput using image size:
Not yet implemented.
Cross calibration of telescope timing:
Not yet implemented.