-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsample.yaml
More file actions
155 lines (140 loc) · 6.97 KB
/
sample.yaml
File metadata and controls
155 lines (140 loc) · 6.97 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
# ==========================================================================
# ctapipe-process configuration file.
# version: 0.19.2
#
# This configuration contains a subset of options needed for a basic analysis.
# Not all possible options are shown. To get a complete list, run:
#
# `ctapipe-process --help-all`
#
# ==========================================================================
Contact:
# please fill in your contact information here. It will be stored in the
# output files as provenance information
name: Miguel-Escobar
email: mescob11@ucsc.edu
organization: UCSC
DataWriter:
# options that control what is stored in the output file by default here we
# write nothing (can be overridden on the command-line or in subsequent config
# files)
overwrite: True # do not overwrite existing files
write_images: False # store DL1 images
write_parameters: True # store DL1 parameters
write_showers: True # store DL2 stereo geometry
write_raw_waveforms: False # write R0 waveforms
write_waveforms: False # write R1 waveforms
write_muon_parameters: False # analyze and write muon parameters
# options that specify the amount of information stored in log file.
Tool:
log_file_level: 'INFO'
log_level: 30
SimTelEventSource:
focal_length_choice: 'EQUIVALENT'
# The CameraCalibrator takes data from R1 or DL0 to DL1a level, applying finer
# calibration and turning waveforms into images. It is run only if DL1a images
# do not already exist in the input file.
CameraCalibrator:
# Choose an extractor type from the following possibilities:
#'FullWaveformSum', 'FixedWindowSum', 'GlobalPeakWindowSum',
#'LocalPeakWindowSum', 'SlidingWindowMaxSum', 'NeighborPeakWindowSum',
#'TwoPassWindowSum', 'BaselineSubtractedNeighborPeakWindowSum'
#
# Note this is a telescope-wise parameter, so can be specified per telescope
# if necessary (see below for an example)
image_extractor_type:
- ['type', 'MST*SCTCam', NeighborPeakWindowSum]
# - ['type', '*FlashCam', 'FlashCamExtractor']
# The ImageProcessor performs the DL1a-> DL1b (image parameters) transition. It
# is run only if the parameters `DataWriter.write_image_parameters=True` and the
# parameters don't already exist in the input file (or if the user forces them
# to be re-computed using DataWriter.recompute_dl1=True)
ImageProcessor:
# The image cleaner selects pixels which have signal in them and rejects those
# without. Options are: 'TailcutsImageCleaner', 'MARSImageCleaner',
# 'FACTImageCleaner'
# Write image parameters in telescope frame.
use_telescope_frame: True
image_cleaner_type: TailcutsImageCleaner
# make sure you include a configuration for the image cleaner you selected
# above here. The section named by the image_cleaner_type will be used to
# configure it.
TailcutsImageCleaner:
# the thresholds for this image cleaner must be optimized for the data set
# you are analyzing. The defaults may not be correct and should be optimized
# for the given use case.
#
# These are telescope-wise parameters, where the options are patterns
# specified in a list in order of precedence, with later options overwriting
# earlier ones. Each pattern is a triplet of [scope, key, value], where the
# scope can be "type" (matching to the telescope type name) or "id"
# (matching a specific telescope ID number). In the case of "type", the key
# should be either a telescope type string, or part of one with "*" used as
# a wildcard match (e.g. "LST*" would match all LST telescopes). You can
# specify a universal default value using "*" as a key. Note that specifying
# a single value is equivalent to specifying a one-item list containing
# [type, '*', value] .
picture_threshold_pe: # top-level threshold in photoelectrons
# - [type, "LST*", 8.5]
# - [type, "MST*NectarCam", 9.0]
# - [type, "MST*FlashCam", 9.0]
# - [type, "SST_ASTRI_CHEC", 4.0]
- [type, "MST*SCTCam", 3.5]
boundary_threshold_pe: # second-level threshold in photoelectrons
# - [type, "LST*", 4.25]
# - [type, "MST*NectarCam", 4.5]
# - [type, "MST*FlashCam", 4.5]
# - [type, "SST_ASTRI_CHEC", 2.0]
- [type,"MST*SCTCam", 1.5]
keep_isolated_pixels: False # If False, pixels with < min_picture_neighbors are removed.
min_picture_neighbors: 2 # Minimum number of neighbors above threshold to consider
# Choose which images should be parameterized:
ImageQualityQuery:
# quality critieria should be a list of pairs of [name, filter_expression]
# The filter expression should contain the variable `image` which is the
# image itself, a 1D np.array.
quality_criteria:
- ["enough_pixels", "np.count_nonzero(image) > 3"]
- ["enough_charge", "image.sum() > 3"]
# The ShowerProcessor performs the DL1 to DL2a (reconstructed shower geometry)
# transition. It is run only if the parameter DataWriter.write_showers=True.
ShowerProcessor:
# choose between HillasReconstructor and HillasIntersection or both (two
# implementations of the standard stereo line-intersection method)
reconstructor_types:
- HillasReconstructor
# - HillasIntersection
HillasReconstructor:
# Choose which telescope events should be included in the reconstruction.
StereoQualityQuery:
# the quality criteria here should again be a list of [name,
# filter_expression] pairs, filter_expression contains the variable
# `parameters` which is a `ctapipe.containers.ImageParametersContainer`
# for the current event
quality_criteria:
- ["enough_intensity", "parameters.hillas.intensity > 5"]
- ["Positive_width", "parameters.hillas.width.value > 0"]
- ["enough_pixels", "parameters.morphology.n_pixels > 3"]
- ["centroid_to_center_of_camera_distance", "parameters.hillas.r.value < 4.5"]
- ["not_clipped", "parameters.leakage.intensity_width_2 < 0.5"]
# The MuonProcessor analyses DL1 images for muons and writes muon parameters.
# It is only run if DataWriter.write_muon_parameters=True.
MuonProcessor:
# Choose which events should be considered for muon analysis
ImageParameterQuery:
# quality critieria should be a list of pairs of [name, filter_expression]
# The filter expression should contain the variable `dl1_params` which are the
# image parameters.
quality_criteria:
- ["min_pixels", "dl1_params.morphology.n_pixels > 100"]
- ["min_intensity", "dl1_params.hillas.intensity > 500"]
# Choose which rings should be processed to the actual muon parameters
RingQuery:
# quality critieria should be a list of pairs of [name, filter_expression]
# The filter expression can either contain the variable `parameters`
# (muon ring parameters like containment), `ring` (muon ring position and radius)
# or `mask` (pixel mask masking the rings pixels)
quality_criteria:
- ["radius_not_nan", "np.isfinite(ring.radius.value)"]
- ["min_pixels", "np.count_nonzero(mask) > 50"]
- ["ring_containment", "parameters.containment > 0.5"]