gammasimtools 0.5.1__py3-none-any.whl → 0.6.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {gammasimtools-0.5.1.dist-info → gammasimtools-0.6.1.dist-info}/METADATA +80 -28
- gammasimtools-0.6.1.dist-info/RECORD +91 -0
- {gammasimtools-0.5.1.dist-info → gammasimtools-0.6.1.dist-info}/WHEEL +1 -1
- {gammasimtools-0.5.1.dist-info → gammasimtools-0.6.1.dist-info}/entry_points.txt +4 -2
- simtools/_version.py +14 -2
- simtools/applications/add_file_to_db.py +2 -1
- simtools/applications/compare_cumulative_psf.py +10 -15
- simtools/applications/db_development_tools/add_new_parameter_to_db.py +12 -6
- simtools/applications/derive_mirror_rnda.py +95 -71
- simtools/applications/generate_corsika_histograms.py +216 -131
- simtools/applications/generate_default_metadata.py +110 -0
- simtools/applications/generate_simtel_array_histograms.py +192 -0
- simtools/applications/get_file_from_db.py +1 -1
- simtools/applications/get_parameter.py +3 -3
- simtools/applications/make_regular_arrays.py +89 -93
- simtools/applications/{plot_layout_array.py → plot_array_layout.py} +15 -14
- simtools/applications/print_array_elements.py +81 -34
- simtools/applications/produce_array_config.py +2 -2
- simtools/applications/production.py +39 -5
- simtools/applications/sim_showers_for_trigger_rates.py +26 -30
- simtools/applications/simulate_prod.py +49 -107
- simtools/applications/submit_data_from_external.py +8 -10
- simtools/applications/tune_psf.py +16 -18
- simtools/applications/validate_camera_efficiency.py +63 -9
- simtools/applications/validate_camera_fov.py +9 -13
- simtools/applications/validate_file_using_schema.py +127 -0
- simtools/applications/validate_optics.py +13 -15
- simtools/camera_efficiency.py +73 -80
- simtools/configuration/commandline_parser.py +52 -22
- simtools/configuration/configurator.py +98 -33
- simtools/constants.py +9 -0
- simtools/corsika/corsika_config.py +28 -22
- simtools/corsika/corsika_default_config.py +282 -0
- simtools/corsika/corsika_histograms.py +328 -282
- simtools/corsika/corsika_histograms_visualize.py +162 -163
- simtools/corsika/corsika_runner.py +8 -4
- simtools/corsika_simtel/corsika_simtel_runner.py +18 -23
- simtools/data_model/data_reader.py +129 -0
- simtools/data_model/metadata_collector.py +346 -118
- simtools/data_model/metadata_model.py +123 -218
- simtools/data_model/model_data_writer.py +79 -22
- simtools/data_model/validate_data.py +96 -46
- simtools/db_handler.py +67 -42
- simtools/io_operations/__init__.py +0 -0
- simtools/io_operations/hdf5_handler.py +112 -0
- simtools/{io_handler.py → io_operations/io_handler.py} +51 -22
- simtools/job_execution/job_manager.py +1 -1
- simtools/layout/{layout_array.py → array_layout.py} +168 -199
- simtools/layout/geo_coordinates.py +196 -0
- simtools/layout/telescope_position.py +12 -12
- simtools/model/array_model.py +16 -14
- simtools/model/camera.py +5 -8
- simtools/model/mirrors.py +136 -73
- simtools/model/model_utils.py +1 -69
- simtools/model/telescope_model.py +32 -25
- simtools/psf_analysis.py +26 -19
- simtools/ray_tracing.py +54 -26
- simtools/schemas/data.metaschema.yml +400 -0
- simtools/schemas/metadata.metaschema.yml +566 -0
- simtools/simtel/simtel_config_writer.py +14 -5
- simtools/simtel/simtel_histograms.py +266 -83
- simtools/simtel/simtel_runner.py +8 -7
- simtools/simtel/simtel_runner_array.py +7 -8
- simtools/simtel/simtel_runner_camera_efficiency.py +48 -2
- simtools/simtel/simtel_runner_ray_tracing.py +61 -25
- simtools/simulator.py +43 -50
- simtools/utils/general.py +232 -286
- simtools/utils/geometry.py +163 -0
- simtools/utils/names.py +294 -142
- simtools/visualization/legend_handlers.py +115 -9
- simtools/visualization/visualize.py +13 -13
- gammasimtools-0.5.1.dist-info/RECORD +0 -83
- simtools/applications/plot_simtel_histograms.py +0 -120
- simtools/applications/validate_schema_files.py +0 -135
- simtools/corsika/corsika_output_visualize.py +0 -345
- simtools/data_model/validate_schema.py +0 -285
- {gammasimtools-0.5.1.dist-info → gammasimtools-0.6.1.dist-info}/LICENSE +0 -0
- {gammasimtools-0.5.1.dist-info → gammasimtools-0.6.1.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,400 @@
|
|
|
1
|
+
---
|
|
2
|
+
$schema: http://json-schema.org/draft-06/schema#
|
|
3
|
+
$ref: '#/definitions/SimtoolsDataAndModelParameters'
|
|
4
|
+
title: SimPipe Data and Model Parameter Metaschema
|
|
5
|
+
description: YAML representation of data and model parameter metaschema
|
|
6
|
+
version: 0.1.0
|
|
7
|
+
name: data.metaschema
|
|
8
|
+
type: object
|
|
9
|
+
additionalProperties: false
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
definitions:
|
|
13
|
+
SimtoolsDataAndModelParameters:
|
|
14
|
+
type: object
|
|
15
|
+
additionalProperties: false
|
|
16
|
+
properties:
|
|
17
|
+
title:
|
|
18
|
+
type: string
|
|
19
|
+
description: "title for schema file"
|
|
20
|
+
version:
|
|
21
|
+
type: string
|
|
22
|
+
description: "version of this schema file (semver)"
|
|
23
|
+
meta_schema:
|
|
24
|
+
type: string
|
|
25
|
+
description: "name of meta schema (e.g. simpipe-schema)"
|
|
26
|
+
meta_schema_url:
|
|
27
|
+
type: string
|
|
28
|
+
description: "url to meta schema definition"
|
|
29
|
+
meta_schema_version:
|
|
30
|
+
type: string
|
|
31
|
+
description: "version of meta schema applied to this file (semver)"
|
|
32
|
+
name:
|
|
33
|
+
type: string
|
|
34
|
+
description: "name of model parameter"
|
|
35
|
+
developer_note:
|
|
36
|
+
type: string
|
|
37
|
+
description: "notes for developers"
|
|
38
|
+
short_description:
|
|
39
|
+
type: string
|
|
40
|
+
description: "short description of model parameter"
|
|
41
|
+
description:
|
|
42
|
+
type: string
|
|
43
|
+
description: "description of model parameter"
|
|
44
|
+
instrument:
|
|
45
|
+
$ref: '#/definitions/Instrument'
|
|
46
|
+
description: "associated instruments and sites"
|
|
47
|
+
data:
|
|
48
|
+
$ref: '#/definitions/DataUnion'
|
|
49
|
+
activity:
|
|
50
|
+
$ref: '#/definitions/Activity'
|
|
51
|
+
source:
|
|
52
|
+
type: array
|
|
53
|
+
items:
|
|
54
|
+
$ref: '#/definitions/Source'
|
|
55
|
+
simulation_software:
|
|
56
|
+
description: |-
|
|
57
|
+
"name of simulation software"
|
|
58
|
+
type: array
|
|
59
|
+
items:
|
|
60
|
+
$ref: '#/definitions/SimulationSoftware'
|
|
61
|
+
required:
|
|
62
|
+
- version
|
|
63
|
+
- meta_schema
|
|
64
|
+
- meta_schema_version
|
|
65
|
+
- name
|
|
66
|
+
- data
|
|
67
|
+
- description
|
|
68
|
+
title: SimulationModelParameters
|
|
69
|
+
Activity:
|
|
70
|
+
type: object
|
|
71
|
+
additionalProperties: false
|
|
72
|
+
properties:
|
|
73
|
+
setting:
|
|
74
|
+
type: array
|
|
75
|
+
items:
|
|
76
|
+
$ref: '#/definitions/Setting'
|
|
77
|
+
description: "setting workflows"
|
|
78
|
+
validation:
|
|
79
|
+
type: array
|
|
80
|
+
items:
|
|
81
|
+
$ref: '#/definitions/Validation'
|
|
82
|
+
description: "validation workflows"
|
|
83
|
+
required:
|
|
84
|
+
- setting
|
|
85
|
+
- validation
|
|
86
|
+
title: Activity
|
|
87
|
+
Datum:
|
|
88
|
+
type: object
|
|
89
|
+
additionalProperties: false
|
|
90
|
+
properties:
|
|
91
|
+
name:
|
|
92
|
+
type: string
|
|
93
|
+
type:
|
|
94
|
+
$ref: '#/definitions/TableColumnType'
|
|
95
|
+
description: |-
|
|
96
|
+
"use numpy basic types where possible
|
|
97
|
+
(https://numpy.org/doc/stable/user/basics.types.html).
|
|
98
|
+
Use `file` if the parameter describes a file name.
|
|
99
|
+
Use `data_table` if the parameter describes a data table
|
|
100
|
+
(requires TABLE_COLUMNS description)"
|
|
101
|
+
units:
|
|
102
|
+
$ref: '#/definitions/Units'
|
|
103
|
+
allowed_range:
|
|
104
|
+
$ref: '#/definitions/ValueRange'
|
|
105
|
+
allowed_values:
|
|
106
|
+
type: array
|
|
107
|
+
default:
|
|
108
|
+
type:
|
|
109
|
+
- number
|
|
110
|
+
- string
|
|
111
|
+
- boolean
|
|
112
|
+
table_columns:
|
|
113
|
+
type: array
|
|
114
|
+
items:
|
|
115
|
+
$ref: '#/definitions/TableColumn'
|
|
116
|
+
required:
|
|
117
|
+
type: boolean
|
|
118
|
+
condition:
|
|
119
|
+
type: string
|
|
120
|
+
description:
|
|
121
|
+
type: string
|
|
122
|
+
developer_note:
|
|
123
|
+
type: string
|
|
124
|
+
required:
|
|
125
|
+
- type
|
|
126
|
+
title: Datum
|
|
127
|
+
DataClass:
|
|
128
|
+
type: object
|
|
129
|
+
additionalProperties: false
|
|
130
|
+
properties:
|
|
131
|
+
type:
|
|
132
|
+
$ref: '#/definitions/TableColumnType'
|
|
133
|
+
description: "parameter type"
|
|
134
|
+
allowed_range:
|
|
135
|
+
$ref: '#/definitions/ValueRange'
|
|
136
|
+
required:
|
|
137
|
+
type: boolean
|
|
138
|
+
description: "required or optional parameter"
|
|
139
|
+
default:
|
|
140
|
+
type:
|
|
141
|
+
- number
|
|
142
|
+
- string
|
|
143
|
+
- boolean
|
|
144
|
+
description: "default value"
|
|
145
|
+
units:
|
|
146
|
+
$ref: '#/definitions/Units'
|
|
147
|
+
description: |-
|
|
148
|
+
"parameter units
|
|
149
|
+
(using astropy names wherever possible)"
|
|
150
|
+
required:
|
|
151
|
+
- type
|
|
152
|
+
- units
|
|
153
|
+
title: DataClass
|
|
154
|
+
ValueRange:
|
|
155
|
+
type: object
|
|
156
|
+
additionalProperties: false
|
|
157
|
+
properties:
|
|
158
|
+
min:
|
|
159
|
+
type: number
|
|
160
|
+
max:
|
|
161
|
+
type: number
|
|
162
|
+
title: ValueRange
|
|
163
|
+
TableColumn:
|
|
164
|
+
type: object
|
|
165
|
+
additionalProperties: false
|
|
166
|
+
properties:
|
|
167
|
+
name:
|
|
168
|
+
type: string
|
|
169
|
+
description: "column name"
|
|
170
|
+
description:
|
|
171
|
+
type: string
|
|
172
|
+
description: "column description"
|
|
173
|
+
developer_note:
|
|
174
|
+
type: string
|
|
175
|
+
description: "notes for developers"
|
|
176
|
+
required:
|
|
177
|
+
type: boolean
|
|
178
|
+
description: "required or optional data column"
|
|
179
|
+
default:
|
|
180
|
+
type:
|
|
181
|
+
- number
|
|
182
|
+
- string
|
|
183
|
+
- boolean
|
|
184
|
+
description: "default value"
|
|
185
|
+
condition:
|
|
186
|
+
type: string
|
|
187
|
+
description: "condition to change this column to a required data column"
|
|
188
|
+
units:
|
|
189
|
+
type: string
|
|
190
|
+
description: "column units"
|
|
191
|
+
type:
|
|
192
|
+
$ref: '#/definitions/TableColumnType'
|
|
193
|
+
description: "column data type"
|
|
194
|
+
allowed_range:
|
|
195
|
+
$ref: '#/definitions/ValueRange'
|
|
196
|
+
description: "allowed range of values in data column"
|
|
197
|
+
allowed_values:
|
|
198
|
+
type: array
|
|
199
|
+
description: "list of allowed values in data column"
|
|
200
|
+
required_range:
|
|
201
|
+
$ref: '#/definitions/ValueRange'
|
|
202
|
+
description: "required range of values in data column"
|
|
203
|
+
column_type:
|
|
204
|
+
type: string
|
|
205
|
+
enum:
|
|
206
|
+
- independent
|
|
207
|
+
- dependent
|
|
208
|
+
description: |-
|
|
209
|
+
"column type to allow several dependent columns in 3D
|
|
210
|
+
tables"
|
|
211
|
+
input_processing:
|
|
212
|
+
type: array
|
|
213
|
+
description: |
|
|
214
|
+
"input data processing steps applied to data columns"
|
|
215
|
+
items:
|
|
216
|
+
type: string
|
|
217
|
+
enum:
|
|
218
|
+
- remove_duplicates
|
|
219
|
+
- sort
|
|
220
|
+
- allow_nan
|
|
221
|
+
table_columns:
|
|
222
|
+
type: array
|
|
223
|
+
items:
|
|
224
|
+
$ref: '#/definitions/TableColumn'
|
|
225
|
+
required:
|
|
226
|
+
- description
|
|
227
|
+
- name
|
|
228
|
+
- type
|
|
229
|
+
- units
|
|
230
|
+
title: TableColumn
|
|
231
|
+
Instrument:
|
|
232
|
+
type: object
|
|
233
|
+
additionalProperties: false
|
|
234
|
+
properties:
|
|
235
|
+
class:
|
|
236
|
+
type: string
|
|
237
|
+
description: "instrument class"
|
|
238
|
+
enum:
|
|
239
|
+
- Camera
|
|
240
|
+
- Site
|
|
241
|
+
- Structure
|
|
242
|
+
- Telescope
|
|
243
|
+
type:
|
|
244
|
+
type: array
|
|
245
|
+
items:
|
|
246
|
+
$ref: '#/definitions/InstrumentTypeElement'
|
|
247
|
+
site:
|
|
248
|
+
type: array
|
|
249
|
+
description: "associated CTAO site"
|
|
250
|
+
items:
|
|
251
|
+
type: string
|
|
252
|
+
enum:
|
|
253
|
+
- North
|
|
254
|
+
- South
|
|
255
|
+
required:
|
|
256
|
+
- class
|
|
257
|
+
- type
|
|
258
|
+
title: Instrument
|
|
259
|
+
InstrumentTypeElement:
|
|
260
|
+
type: string
|
|
261
|
+
description: "specific type of instrument"
|
|
262
|
+
enum:
|
|
263
|
+
- Atmosphere
|
|
264
|
+
- FlashCam
|
|
265
|
+
- LSTCam
|
|
266
|
+
- LSTStructure
|
|
267
|
+
- MSTStructure
|
|
268
|
+
- NectarCam
|
|
269
|
+
- Observatory
|
|
270
|
+
- SCTCam
|
|
271
|
+
- SCTStructure
|
|
272
|
+
- SSTCam
|
|
273
|
+
- SSTStructure
|
|
274
|
+
- None
|
|
275
|
+
title: InstrumentTypeElement
|
|
276
|
+
SimulationSoftware:
|
|
277
|
+
type: object
|
|
278
|
+
additionalProperties: false
|
|
279
|
+
properties:
|
|
280
|
+
name:
|
|
281
|
+
$ref: '#/definitions/SimulationSoftwareName'
|
|
282
|
+
version:
|
|
283
|
+
type: string
|
|
284
|
+
description: |-
|
|
285
|
+
"version of simulation software this parameter is used"
|
|
286
|
+
parameter_name:
|
|
287
|
+
type: string
|
|
288
|
+
description: |-
|
|
289
|
+
"name of simulation model parameter as used by this software"
|
|
290
|
+
required:
|
|
291
|
+
- name
|
|
292
|
+
title: SimulationSoftware
|
|
293
|
+
DataUnion:
|
|
294
|
+
anyOf:
|
|
295
|
+
- type: array
|
|
296
|
+
items:
|
|
297
|
+
$ref: '#/definitions/Datum'
|
|
298
|
+
- $ref: '#/definitions/DataClass'
|
|
299
|
+
title: DataUnion
|
|
300
|
+
Setting:
|
|
301
|
+
type: string
|
|
302
|
+
description: "list of setting workflows"
|
|
303
|
+
enum:
|
|
304
|
+
- SetArrayElementCoordinates
|
|
305
|
+
- SetEffectiveFocalLength
|
|
306
|
+
- SetGeomagneticField
|
|
307
|
+
- SetLightGuideEfficiency
|
|
308
|
+
- SetMirrorPanelAlignment
|
|
309
|
+
- SetMirrorPanelRandomReflection
|
|
310
|
+
- SetNightSkyBackgroundRate
|
|
311
|
+
- SetParameterFromExternal
|
|
312
|
+
- SetPhotonDelay
|
|
313
|
+
- SetReadoutPulseShape
|
|
314
|
+
- SetSinglePhotoElectronResponse
|
|
315
|
+
- SetTelescopeEfficiency
|
|
316
|
+
- SetTelescopeFiducialSphere
|
|
317
|
+
- SetTelescopeShadowingParameters
|
|
318
|
+
- SetTriggerThresholdsFromRateScan
|
|
319
|
+
- None
|
|
320
|
+
title: Setting
|
|
321
|
+
Validation:
|
|
322
|
+
type: string
|
|
323
|
+
description: "list of validation workflows"
|
|
324
|
+
enum:
|
|
325
|
+
- ValidateArrayElementCoordinates
|
|
326
|
+
- ValidateAtmosphericModel
|
|
327
|
+
- ValidateCameraChargeResponse
|
|
328
|
+
- ValidateCameraGainsAndEfficiency
|
|
329
|
+
- ValidateCameraGeometry
|
|
330
|
+
- ValidateCameraLinearity
|
|
331
|
+
- ValidateCameraPlateScale
|
|
332
|
+
- ValidateCameraTimeResponse
|
|
333
|
+
- ValidateMirrorPanelParameters
|
|
334
|
+
- ValidateNightSkyBackgroundMeasurement
|
|
335
|
+
- ValidateOpticalPSF
|
|
336
|
+
- ValidateParameterByExpert
|
|
337
|
+
- ValidatePedestalEvents
|
|
338
|
+
- ValidatePixelStatus
|
|
339
|
+
- ValidateReadout
|
|
340
|
+
- ValidateSinglePhotoElectronResponse
|
|
341
|
+
- ValidateTelescopeEfficiency
|
|
342
|
+
- ValidateTelescopeShadowing
|
|
343
|
+
- ValidateTelescopeSimulationModel
|
|
344
|
+
- ValidateTelescopeStructure
|
|
345
|
+
- ValidateTriggerPerformance
|
|
346
|
+
- ValidationWorkflowMissing
|
|
347
|
+
- None
|
|
348
|
+
TableColumnType:
|
|
349
|
+
type: string
|
|
350
|
+
enum:
|
|
351
|
+
- boolean
|
|
352
|
+
- datatable
|
|
353
|
+
- double
|
|
354
|
+
- float64
|
|
355
|
+
- int
|
|
356
|
+
- string
|
|
357
|
+
- uint
|
|
358
|
+
title: TableColumnType
|
|
359
|
+
Units:
|
|
360
|
+
type: string
|
|
361
|
+
description: |-
|
|
362
|
+
"Units correspond to astropy unit names
|
|
363
|
+
(wherever possible)"
|
|
364
|
+
enum:
|
|
365
|
+
- dimensionless
|
|
366
|
+
- ns
|
|
367
|
+
- V
|
|
368
|
+
- mV
|
|
369
|
+
- deg
|
|
370
|
+
- m
|
|
371
|
+
- cm
|
|
372
|
+
- nm
|
|
373
|
+
- uT
|
|
374
|
+
- adc_counts
|
|
375
|
+
- MHz
|
|
376
|
+
- GHz
|
|
377
|
+
- adc_counts / mV
|
|
378
|
+
- mV * ns
|
|
379
|
+
- pct
|
|
380
|
+
- uA
|
|
381
|
+
title: Units
|
|
382
|
+
SimulationSoftwareName:
|
|
383
|
+
type: string
|
|
384
|
+
description: |-
|
|
385
|
+
"Names of simulation software"
|
|
386
|
+
enum:
|
|
387
|
+
- sim_telarray
|
|
388
|
+
- corsika
|
|
389
|
+
- gammasim-tools
|
|
390
|
+
title: Name
|
|
391
|
+
Source:
|
|
392
|
+
type: string
|
|
393
|
+
description: "origin of data / how it is obtained"
|
|
394
|
+
enum:
|
|
395
|
+
- Initial instrument setup
|
|
396
|
+
- Calibration
|
|
397
|
+
- External
|
|
398
|
+
- Observation execution
|
|
399
|
+
- SimPipe Derived
|
|
400
|
+
title: Source
|