gammasimtools 0.23.0__py3-none-any.whl → 0.24.0__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.23.0.dist-info → gammasimtools-0.24.0.dist-info}/METADATA +1 -1
- {gammasimtools-0.23.0.dist-info → gammasimtools-0.24.0.dist-info}/RECORD +59 -58
- simtools/_version.py +2 -2
- simtools/application_control.py +4 -4
- simtools/applications/convert_geo_coordinates_of_array_elements.py +1 -1
- simtools/applications/db_add_file_to_db.py +2 -2
- simtools/applications/db_add_simulation_model_from_repository_to_db.py +1 -1
- simtools/applications/db_add_value_from_json_to_db.py +2 -2
- simtools/applications/db_development_tools/write_array_elements_positions_to_repository.py +1 -1
- simtools/applications/db_generate_compound_indexes.py +1 -1
- simtools/applications/db_get_array_layouts_from_db.py +2 -2
- simtools/applications/db_get_file_from_db.py +1 -1
- simtools/applications/db_get_parameter_from_db.py +1 -1
- simtools/applications/db_inspect_databases.py +4 -2
- simtools/applications/db_upload_model_repository.py +1 -1
- simtools/applications/derive_ctao_array_layouts.py +1 -1
- simtools/applications/generate_array_config.py +1 -1
- simtools/applications/maintain_simulation_model_add_production.py +11 -21
- simtools/applications/production_generate_grid.py +1 -1
- simtools/applications/submit_array_layouts.py +2 -2
- simtools/applications/validate_camera_fov.py +1 -1
- simtools/applications/validate_cumulative_psf.py +2 -2
- simtools/applications/validate_optics.py +1 -1
- simtools/configuration/commandline_parser.py +7 -9
- simtools/configuration/configurator.py +1 -1
- simtools/corsika/corsika_config.py +2 -4
- simtools/data_model/model_data_writer.py +1 -1
- simtools/data_model/schema.py +36 -34
- simtools/db/db_handler.py +61 -294
- simtools/db/db_model_upload.py +1 -1
- simtools/db/mongo_db.py +535 -0
- simtools/dependencies.py +33 -8
- simtools/layout/array_layout.py +7 -7
- simtools/layout/array_layout_utils.py +3 -3
- simtools/model/array_model.py +36 -67
- simtools/model/calibration_model.py +12 -9
- simtools/model/model_parameter.py +196 -159
- simtools/model/model_repository.py +159 -35
- simtools/model/model_utils.py +3 -3
- simtools/model/site_model.py +59 -27
- simtools/model/telescope_model.py +21 -13
- simtools/ray_tracing/mirror_panel_psf.py +4 -4
- simtools/ray_tracing/psf_parameter_optimisation.py +1 -1
- simtools/reporting/docs_auto_report_generator.py +1 -1
- simtools/reporting/docs_read_parameters.py +3 -2
- simtools/schemas/simulation_models_info.schema.yml +2 -1
- simtools/simtel/simtel_config_writer.py +97 -20
- simtools/simulator.py +2 -1
- simtools/testing/assertions.py +50 -6
- simtools/testing/validate_output.py +4 -8
- simtools/utils/value_conversion.py +10 -5
- simtools/version.py +24 -0
- simtools/visualization/plot_pixels.py +1 -1
- simtools/visualization/plot_psf.py +1 -1
- simtools/visualization/plot_tables.py +1 -1
- {gammasimtools-0.23.0.dist-info → gammasimtools-0.24.0.dist-info}/WHEEL +0 -0
- {gammasimtools-0.23.0.dist-info → gammasimtools-0.24.0.dist-info}/entry_points.txt +0 -0
- {gammasimtools-0.23.0.dist-info → gammasimtools-0.24.0.dist-info}/licenses/LICENSE +0 -0
- {gammasimtools-0.23.0.dist-info → gammasimtools-0.24.0.dist-info}/top_level.txt +0 -0
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
gammasimtools-0.
|
|
1
|
+
gammasimtools-0.24.0.dist-info/licenses/LICENSE,sha256=a2q6KVo33OrRL_7ZSk7BYOT8KkUNV3WAMZW8CHEDkDU,1548
|
|
2
2
|
simtools/__init__.py,sha256=yvx0i5ygbllmMtF2Tzy7pohvhQNH_dBdj0Bt8bKFYpc,231
|
|
3
|
-
simtools/_version.py,sha256=
|
|
4
|
-
simtools/application_control.py,sha256=
|
|
3
|
+
simtools/_version.py,sha256=ADBh2JtyPiL8yFdC_JGhFEVpNOBdSJnZ0ZOVCp71Qqw,706
|
|
4
|
+
simtools/application_control.py,sha256=q5y4-yNYaNDQgKZxyU8EujwcZPI_i-RmZsv3rRFjusM,3305
|
|
5
5
|
simtools/constants.py,sha256=3N5bc8MlMWRzcg8EeSJweoioEo_uhStMxAzdb85Apvw,966
|
|
6
|
-
simtools/dependencies.py,sha256=
|
|
7
|
-
simtools/simulator.py,sha256=
|
|
6
|
+
simtools/dependencies.py,sha256=ciKwmvNwDz6WyMu72TjQe1qKPl8PsFvjzSTkQA5_Lmo,7258
|
|
7
|
+
simtools/simulator.py,sha256=HgyaGB49TDvtvPiF7K5O2wkNefpfhfEKyXw0I1vzg9Y,28826
|
|
8
8
|
simtools/telescope_trigger_rates.py,sha256=_2NUG8UnhfpMGhaEDgHUOOdnweCUcRTrTOkGGYInHqo,3984
|
|
9
|
-
simtools/version.py,sha256=
|
|
9
|
+
simtools/version.py,sha256=01MnfNqKGG0qpsiozYDVQKoj86RT3hVrn8ClOrm3Rgc,6164
|
|
10
10
|
simtools/applications/calculate_incident_angles.py,sha256=utE5N6F_RjtNGxYx-HbAcQ4l6DtAmoZxYRgO7-jTM2g,6042
|
|
11
11
|
simtools/applications/convert_all_model_parameters_from_simtel.py,sha256=ml3rLe9-nRdPQBARpssK9aU0StwQ27RaUa-_6H-ZlA0,11893
|
|
12
|
-
simtools/applications/convert_geo_coordinates_of_array_elements.py,sha256=
|
|
12
|
+
simtools/applications/convert_geo_coordinates_of_array_elements.py,sha256=ALghVkw2ElrcqySz1teIeBhyzcMEoqDjDQO6bUw7cHw,5655
|
|
13
13
|
simtools/applications/convert_model_parameter_from_simtel.py,sha256=BRs_oOfXPpLV0XSWD0LMtrwJXn_JAGaj4CBWrc6Lm1c,3602
|
|
14
|
-
simtools/applications/db_add_file_to_db.py,sha256=
|
|
15
|
-
simtools/applications/db_add_simulation_model_from_repository_to_db.py,sha256=
|
|
16
|
-
simtools/applications/db_add_value_from_json_to_db.py,sha256=
|
|
17
|
-
simtools/applications/db_generate_compound_indexes.py,sha256=
|
|
18
|
-
simtools/applications/db_get_array_layouts_from_db.py,sha256=
|
|
19
|
-
simtools/applications/db_get_file_from_db.py,sha256=
|
|
20
|
-
simtools/applications/db_get_parameter_from_db.py,sha256=
|
|
21
|
-
simtools/applications/db_inspect_databases.py,sha256=
|
|
22
|
-
simtools/applications/db_upload_model_repository.py,sha256=
|
|
23
|
-
simtools/applications/derive_ctao_array_layouts.py,sha256=
|
|
14
|
+
simtools/applications/db_add_file_to_db.py,sha256=fHQCY3Y2hCuNacBLkPA1ug1XHTlfyevr1ZpWoePkVhA,5726
|
|
15
|
+
simtools/applications/db_add_simulation_model_from_repository_to_db.py,sha256=unQ9us6IEa2G2u9hK1XkeHuC7G9kznqzHL3KWJ2qba0,4092
|
|
16
|
+
simtools/applications/db_add_value_from_json_to_db.py,sha256=7BJ0A9lA11rVvpCw7blzxSePoijnJdptYM4xrXJe3og,3910
|
|
17
|
+
simtools/applications/db_generate_compound_indexes.py,sha256=p3zxXRzM0S6GuQRDb4906r3Hc7ceM5xbZk2lnqjHJ-A,1485
|
|
18
|
+
simtools/applications/db_get_array_layouts_from_db.py,sha256=dQOm1hj4NdfhIMO6ERTNy5Ybiypf7LnE49QWRS5w2aI,4856
|
|
19
|
+
simtools/applications/db_get_file_from_db.py,sha256=ROGfmBjKkMQvpx9cx66nqC4VyO6EGnJNxBR-y8BWmeM,2458
|
|
20
|
+
simtools/applications/db_get_parameter_from_db.py,sha256=PWPOh67StUx64ICeX8DwiUxdRvbrC4aprPGbGXm7xGc,5303
|
|
21
|
+
simtools/applications/db_inspect_databases.py,sha256=eetmPqIJwFZCIY65hykSAvZ1ItkN6OvVDWb1MRZSps0,1987
|
|
22
|
+
simtools/applications/db_upload_model_repository.py,sha256=StVJU6alEddTDWTqf_GPOla09A-roPudSbGk7xnGeFg,3484
|
|
23
|
+
simtools/applications/derive_ctao_array_layouts.py,sha256=MTYrHjOkyzE8aBKeluGebibV9T7ZOocRF30GbHtzsbs,4134
|
|
24
24
|
simtools/applications/derive_mirror_rnda.py,sha256=S_9fUZ1TQbKltX86IWhS_10_KDF1abtxaixGh1UUGms,8964
|
|
25
25
|
simtools/applications/derive_photon_electron_spectrum.py,sha256=-Drq6QPo7xXjGGmdDzGKJ6x1Byg9_jOaD-fSKG6CJQE,3988
|
|
26
26
|
simtools/applications/derive_psf_parameters.py,sha256=DiinpJYuXmt4hQXjwN8uLVnAfq1unF2ZrmIG47Z7o3I,7882
|
|
@@ -29,12 +29,12 @@ simtools/applications/docs_produce_array_element_report.py,sha256=CW2s2JwT-LvsBN
|
|
|
29
29
|
simtools/applications/docs_produce_calibration_reports.py,sha256=sOmC6uNjFaawj26nqJa3GsWAnQd0F96W6WKm3gj7J0I,1575
|
|
30
30
|
simtools/applications/docs_produce_model_parameter_reports.py,sha256=P1Uv4d4XFZA39x8l1Ee7jQ28Qe_n8jGiU9wg8hP1pbE,1933
|
|
31
31
|
simtools/applications/docs_produce_simulation_configuration_report.py,sha256=EBqx1VDwUG_UQq_K_6DVz_aDOBxbiqb_PNob6UJ3bKA,1485
|
|
32
|
-
simtools/applications/generate_array_config.py,sha256=
|
|
32
|
+
simtools/applications/generate_array_config.py,sha256=8k3JvQNk0Stb-i1-WMpN4AL4FVWMg2uwhyNtIQ1WQXc,1877
|
|
33
33
|
simtools/applications/generate_corsika_histograms.py,sha256=96FSduO6lFbo4mPJmU0Br85LeSBEDDBEMlo1SzxTIW4,11048
|
|
34
34
|
simtools/applications/generate_default_metadata.py,sha256=yll6cUGl87DhBiov3rQhIPBcT0NIui06oILChjSQAdE,2053
|
|
35
35
|
simtools/applications/generate_regular_arrays.py,sha256=X192RvFs8m-GOj1z4Awu3Lu-NT8L23SujdKun3iZONs,3862
|
|
36
36
|
simtools/applications/generate_simtel_event_data.py,sha256=An8efQclDJD2b-HzTUwqfXTIkRUsBVeq9q5M7MXE9BQ,9057
|
|
37
|
-
simtools/applications/maintain_simulation_model_add_production.py,sha256=
|
|
37
|
+
simtools/applications/maintain_simulation_model_add_production.py,sha256=lBBm6F5EQJqS2FnNGceEZI6ogzZpxna5IOTBPbXNMmc,2412
|
|
38
38
|
simtools/applications/maintain_simulation_model_compare_productions.py,sha256=aD6eZq1RUMnE4J-AuNjuHCKy_vDmnFnhPCPO0wxshbA,3194
|
|
39
39
|
simtools/applications/maintain_simulation_model_verify_production_tables.py,sha256=YpnP7EeaheV03KwW7ryEc4GHIqaEHOFkG-RqJOH64RE,1793
|
|
40
40
|
simtools/applications/merge_tables.py,sha256=N7MGX-VD2tu72RWvSDEb1zfls6px-wqLU4t5Lbl9V6E,2656
|
|
@@ -45,7 +45,7 @@ simtools/applications/plot_tabular_data_for_model_parameter.py,sha256=zBFY5Vb6ns
|
|
|
45
45
|
simtools/applications/print_version.py,sha256=McMS3mEmUn11t_ExRhqd_G4S3p5ErbUuWWOLBREalFQ,1709
|
|
46
46
|
simtools/applications/production_derive_corsika_limits.py,sha256=-rJpLGqODtuPhXCEd-1fWFfRefrjGE_5jQMFfwoDwBQ,5823
|
|
47
47
|
simtools/applications/production_derive_statistics.py,sha256=NT_EL-jUg151QrCY1E1NaBerpUg9caRWo1e4AUHSB7o,4771
|
|
48
|
-
simtools/applications/production_generate_grid.py,sha256=
|
|
48
|
+
simtools/applications/production_generate_grid.py,sha256=L_LlHA3Uly6P3Rx4eaxVvPXz3Z8VAwNv_7XO6Hm2VXs,5824
|
|
49
49
|
simtools/applications/production_merge_corsika_limits.py,sha256=sYOTG731ja0xW5p2Pq4dJdOuKwWi7MphASdZ-dg6osY,7588
|
|
50
50
|
simtools/applications/run_application.py,sha256=XaDRG-1TptvMSXwNis1z_n43YqkEI_fVjZiTImjl6-o,3947
|
|
51
51
|
simtools/applications/simulate_flasher.py,sha256=CR5dl-GSycEyu8_D51kHJNUAxokTvMJ-fRlEGS82gLw,4646
|
|
@@ -53,31 +53,32 @@ simtools/applications/simulate_illuminator.py,sha256=3UcrubHk_aErIsPW0rJTtlpXPnY
|
|
|
53
53
|
simtools/applications/simulate_pedestals.py,sha256=0fmleOnAnNfJSoNX6zEgxHwJpOQldCrt02gtMDPZ_x0,3724
|
|
54
54
|
simtools/applications/simulate_prod.py,sha256=B4Dj9lDp8p61ZwvPTXMoiBYPLinBGf9MRDo-dHV65H0,6464
|
|
55
55
|
simtools/applications/simulate_prod_htcondor_generator.py,sha256=lcnYGjC5KwWmE0d6FFDXgg4XIolFPC0eXppDtUsp12s,3193
|
|
56
|
-
simtools/applications/submit_array_layouts.py,sha256=
|
|
56
|
+
simtools/applications/submit_array_layouts.py,sha256=MOXYpHROJmLGbjyDXQ6L0XMXEVQNXRaZLUR-ppcMb2o,2701
|
|
57
57
|
simtools/applications/submit_data_from_external.py,sha256=4uXI_JSKNpQkSbuUfEWQgtvH-on7nffIgQHbpzjN0Bc,3043
|
|
58
58
|
simtools/applications/submit_model_parameter_from_external.py,sha256=UwpSclpjBXN2Vu8aQzHHRffj-Tt3M2IxqIcTnviRwuM,3754
|
|
59
59
|
simtools/applications/validate_camera_efficiency.py,sha256=sPmIiQYQM9ewco2ExKI_QJ_nL1wjwmY5NOSN6Us0Wjk,4949
|
|
60
|
-
simtools/applications/validate_camera_fov.py,sha256=
|
|
61
|
-
simtools/applications/validate_cumulative_psf.py,sha256=
|
|
60
|
+
simtools/applications/validate_camera_fov.py,sha256=hU_Ul_E3c_Hl-dKLIlzZPgWyDillNOJsLpQu7_L3f44,4535
|
|
61
|
+
simtools/applications/validate_cumulative_psf.py,sha256=yeki5GV0vFX6P5yuMCAPkfFI2C_S8OjrfZlSpn2ol00,6430
|
|
62
62
|
simtools/applications/validate_file_using_schema.py,sha256=j2x-wca3QsePq71FMN32OLwBLmTKOHIaa-8bYkvZEx4,7161
|
|
63
|
-
simtools/applications/validate_optics.py,sha256=
|
|
64
|
-
simtools/applications/db_development_tools/write_array_elements_positions_to_repository.py,sha256=
|
|
63
|
+
simtools/applications/validate_optics.py,sha256=7daD4S_9kze-MkmPUioekde3cgkmtfLVbl1CbqC6mYY,6451
|
|
64
|
+
simtools/applications/db_development_tools/write_array_elements_positions_to_repository.py,sha256=MG7F0_QTEjt2_1rryyVTDDjR9rHHWOGDHuP0fAVWolQ,5172
|
|
65
65
|
simtools/camera/camera_efficiency.py,sha256=DMw438cJ6gcnZyXHuTDAohk5duCF8EWpCqnE93FXziA,18927
|
|
66
66
|
simtools/camera/single_photon_electron_spectrum.py,sha256=eQTpmy8NH8v5kkrlFjYmlIQhqcDwXHy44q-59PtXZEI,11572
|
|
67
|
-
simtools/configuration/commandline_parser.py,sha256=
|
|
68
|
-
simtools/configuration/configurator.py,sha256=
|
|
69
|
-
simtools/corsika/corsika_config.py,sha256=
|
|
67
|
+
simtools/configuration/commandline_parser.py,sha256=T0o_K3m-nPmictwCSlFQIpB8m9dYePBPuJmK1EY_Ukc,27877
|
|
68
|
+
simtools/configuration/configurator.py,sha256=sxaXZNbEb2Lli9092vmXsp6L0hbxZM9dZ6WtC25QYdw,14788
|
|
69
|
+
simtools/corsika/corsika_config.py,sha256=h7QMedOBVBKOxmShF2VN9C0EXEXApiU70J7Qc06Ckd0,28858
|
|
70
70
|
simtools/corsika/corsika_histograms.py,sha256=nbxSoAj_oW3KABfo46ioj9W2VpXKWKw5mOiMeb1nGjs,70524
|
|
71
71
|
simtools/corsika/primary_particle.py,sha256=WK0UKYtdPSefes286ZGXsoGV9r6JqH19Tk9myza_plU,6613
|
|
72
72
|
simtools/data_model/data_reader.py,sha256=abqVujfDYu1SHbMhpqRA851_WDWZr2SOoi35p0hZ_7s,4051
|
|
73
73
|
simtools/data_model/format_checkers.py,sha256=bXF9dItkpZCGXAHdCH7vhgxEsIhXLLVFLOha-hKRspY,1949
|
|
74
74
|
simtools/data_model/metadata_collector.py,sha256=31j1l6Kl3gzVfpWql0ft-Dl0uvsBc0nF18oN9hp849Q,23513
|
|
75
75
|
simtools/data_model/metadata_model.py,sha256=wH52gC6MdwFw9A6UswZLsRlss7vbXDyxybBaI_UMt18,4642
|
|
76
|
-
simtools/data_model/model_data_writer.py,sha256=
|
|
77
|
-
simtools/data_model/schema.py,sha256=
|
|
76
|
+
simtools/data_model/model_data_writer.py,sha256=xvlDmFJW93lCaRBg4o5ZXegAZS7kcaC6LLyocJ2KJN4,16573
|
|
77
|
+
simtools/data_model/schema.py,sha256=BeJQTvK6OfjVxansVUKPc1PgyJarHQw6Jktlji-GDcE,10809
|
|
78
78
|
simtools/data_model/validate_data.py,sha256=jVxiTP1YlDiGqyAjb-b6vofmpxaZQY3RAtjaVkuCuRo,31078
|
|
79
|
-
simtools/db/db_handler.py,sha256=
|
|
80
|
-
simtools/db/db_model_upload.py,sha256=
|
|
79
|
+
simtools/db/db_handler.py,sha256=ACBqi0k-4fqbq9gMmLg1wEa4LWWTXQuZQjoBg3VIjks,29418
|
|
80
|
+
simtools/db/db_model_upload.py,sha256=0j1h-EwJgTWUS5GCIULwSdvh36Bm0Yhqn0Nm0Wd2vXE,11813
|
|
81
|
+
simtools/db/mongo_db.py,sha256=mwtQ8l7HSXRDPZbkVO4xrMRVRsOUZpu_m0_l0-CswiU,16505
|
|
81
82
|
simtools/io/ascii_handler.py,sha256=S2fP2x6vE4nEF5g0NRARIWKs8vKU3c9SW8XtcdrwhQU,7826
|
|
82
83
|
simtools/io/hdf5_handler.py,sha256=Jnya-FMhmt_jQHIMQawUZrJA6S3QFo1BGGVt2Jaj89g,4177
|
|
83
84
|
simtools/io/io_handler.py,sha256=qC4-htBLvHcHgHfsZeDJllevadpMBN7KtFPnuHSXrpI,3439
|
|
@@ -85,19 +86,19 @@ simtools/io/legacy_data_handler.py,sha256=ZJunKgO0gjCLHtBqVtYUAiD88ouJio1_w_XJHj
|
|
|
85
86
|
simtools/io/table_handler.py,sha256=YJqbam9sBjKAhHDyzFd0X0duWT1jnYPyk0La9Gp2jeo,10713
|
|
86
87
|
simtools/job_execution/htcondor_script_generator.py,sha256=7Wm1iR8PK0gbutbZATyBmhqQu-MZQI0HaJa7dJJVMHA,4248
|
|
87
88
|
simtools/job_execution/job_manager.py,sha256=xWZlf1t6RuKvTEp1nNkNkkrUtR6smulxGfV8_WN_vG8,4716
|
|
88
|
-
simtools/layout/array_layout.py,sha256=
|
|
89
|
-
simtools/layout/array_layout_utils.py,sha256=
|
|
89
|
+
simtools/layout/array_layout.py,sha256=sk1yIEEBx2MlbNyISe6K7vnmQuyp-QAuoFPF0U6nDRo,25073
|
|
90
|
+
simtools/layout/array_layout_utils.py,sha256=_oxKTPsMDT2fIjhI1nka3MAkvqDSTx4nXK4jCzVfvNA,12572
|
|
90
91
|
simtools/layout/geo_coordinates.py,sha256=9kKnXFi9vrfYKG_9elzFuzzssGFEUzxMubaclITkW_g,5944
|
|
91
92
|
simtools/layout/telescope_position.py,sha256=tXXf2_kr6ouPrDXWx20vf6c-yEo11AjN8_gJ2EwL5-g,20097
|
|
92
|
-
simtools/model/array_model.py,sha256=
|
|
93
|
-
simtools/model/calibration_model.py,sha256=
|
|
93
|
+
simtools/model/array_model.py,sha256=tlJn36uTD68zIbjE1QamwgdfH6lknpUro_vuBS6FOz8,18227
|
|
94
|
+
simtools/model/calibration_model.py,sha256=omSgM2CIMh7HB2Bnm3OFjvWRMNBfkpGd6AnYayAEGiY,1563
|
|
94
95
|
simtools/model/camera.py,sha256=ewqhjovhxIX8a2hEHzxqZy2Mcfp621xk2nikxGDXDO4,21381
|
|
95
96
|
simtools/model/mirrors.py,sha256=g0eS4qFzUmo9UIakC4CDo7ourAGuFd3EfzL9RdrF9zg,9098
|
|
96
|
-
simtools/model/model_parameter.py,sha256=
|
|
97
|
-
simtools/model/model_repository.py,sha256=
|
|
98
|
-
simtools/model/model_utils.py,sha256=
|
|
99
|
-
simtools/model/site_model.py,sha256=
|
|
100
|
-
simtools/model/telescope_model.py,sha256=
|
|
97
|
+
simtools/model/model_parameter.py,sha256=_NJTj6aqcmLgTqC_qZeuAzgW2bmA0BoJLFm1U5gTFV8,22828
|
|
98
|
+
simtools/model/model_repository.py,sha256=NWjj46Fd4hba4YqjTM2sUQOHUPkgj_YEGXlb5iNCZE8,17932
|
|
99
|
+
simtools/model/model_utils.py,sha256=OUHsOKOhXDVCTRpSRCO4iJZncUB_6hy0uUaF2AeooI0,2963
|
|
100
|
+
simtools/model/site_model.py,sha256=ueu1t_fkpTZ-OnMYVlJyKbfySkqn_tVQN90NcyzSrTw,7060
|
|
101
|
+
simtools/model/telescope_model.py,sha256=No2BtJu5flgMTP6QoSwfsGd6RXfqabOobqvtftQlek0,14432
|
|
101
102
|
simtools/production_configuration/calculate_statistical_uncertainties_grid_point.py,sha256=ahUJYM4SWZAAk4qXTQlBEkhmLfZRntXRaTG6FmL3tNs,15503
|
|
102
103
|
simtools/production_configuration/derive_corsika_limits.py,sha256=j0qQYlWBY112Jfr9ZH7Yq6ud-nsLRbBV6B5xoTLuNZw,10546
|
|
103
104
|
simtools/production_configuration/derive_production_statistics.py,sha256=njjQuKgm-yRvykLLuivXF3cmCduAYKunvL13KbEWjQ0,5716
|
|
@@ -106,12 +107,12 @@ simtools/production_configuration/generate_production_grid.py,sha256=DlR2hqyG0jU
|
|
|
106
107
|
simtools/production_configuration/interpolation_handler.py,sha256=CWJa9WfBhHLTJDnNODzU3GxU7fF6ni_fNPS-UwGyzxo,14095
|
|
107
108
|
simtools/production_configuration/merge_corsika_limits.py,sha256=t9JDvrpkP33ISCRCPVLE8GunjHDF_RYlRPqXI469l0w,20838
|
|
108
109
|
simtools/ray_tracing/incident_angles.py,sha256=sbrj20XAikRH_jH-tW88PQveT97w9mdAzVjvp0OsAns,25967
|
|
109
|
-
simtools/ray_tracing/mirror_panel_psf.py,sha256=
|
|
110
|
+
simtools/ray_tracing/mirror_panel_psf.py,sha256=0TGSkeXmRSo25mIhoNqrEQJgMWK-oPk7TT-8VkuMsxc,11267
|
|
110
111
|
simtools/ray_tracing/psf_analysis.py,sha256=vZGPThRHfV3RNPeZF97jH2zoK2PlJoqPsJhkz17F_PQ,18140
|
|
111
|
-
simtools/ray_tracing/psf_parameter_optimisation.py,sha256=
|
|
112
|
+
simtools/ray_tracing/psf_parameter_optimisation.py,sha256=E9jy2o-U5ORSMaOjWuQndJiOM92FHC1zLLcFWISkTgg,45673
|
|
112
113
|
simtools/ray_tracing/ray_tracing.py,sha256=gPnhEBPlSE51jt3k3brvtuJZQT4MejPeqQm1alLaUqU,21959
|
|
113
|
-
simtools/reporting/docs_auto_report_generator.py,sha256=
|
|
114
|
-
simtools/reporting/docs_read_parameters.py,sha256=
|
|
114
|
+
simtools/reporting/docs_auto_report_generator.py,sha256=Ee-zBf4pQahaN4RYv2aN_UEngFVMbzVqr_X3l_Q2vy8,14098
|
|
115
|
+
simtools/reporting/docs_read_parameters.py,sha256=TGn-6Y_u_sPW3EjkMYvoVXrL3qlsxLdGMhRjFQTqLNo,39559
|
|
115
116
|
simtools/resources/array-element-ids.json,sha256=W8cijMEmHJ28RLIyixVVdHr16-iUbIuURT9QIoIzCoY,4566
|
|
116
117
|
simtools/resources/array_elements.yml,sha256=MG-TyocXQCj6htA8af4nBzCxcfFZHs1XXtSfSl4kmBo,4285
|
|
117
118
|
simtools/runners/corsika_runner.py,sha256=TB9sF2-mgzWf9wUKdw90XtkFiolW_RqKmmihMosiu7g,9115
|
|
@@ -127,7 +128,7 @@ simtools/schemas/model_parameter_and_data_schema.metaschema.yml,sha256=ktpW7ym7H
|
|
|
127
128
|
simtools/schemas/plot_configuration.metaschema.yml,sha256=ALz6d3btyr0ao50nJ0tShMlMgR4SKP6MRC_qxiPjwmc,4408
|
|
128
129
|
simtools/schemas/production_configuration_metrics.schema.yml,sha256=9IOmDjtAyH-8Ti5hoxKKjZ0kl7E7iKBBDvTL8SSv_To,1935
|
|
129
130
|
simtools/schemas/production_tables.schema.yml,sha256=diTGV8z8K4yx4YDv0ZEEpTGimijru0PsvZMhaMN26_A,1428
|
|
130
|
-
simtools/schemas/simulation_models_info.schema.yml,sha256=
|
|
131
|
+
simtools/schemas/simulation_models_info.schema.yml,sha256=ycu5nubgScdNteiSnHrL87AW73nR6kTV9m4_n7F63ZA,2192
|
|
131
132
|
simtools/schemas/input/MST_mirror_2f_measurements.schema.yml,sha256=2kFAIxgR36XIrTNvfvPB16OdnpkNdkXeCGnI01Tbc3Y,1124
|
|
132
133
|
simtools/schemas/input/single_pe_spectrum.schema.yml,sha256=hLD8JgChI1eV2yl7E_e_uvQebsRuG18ag_4aEiLjToM,1244
|
|
133
134
|
simtools/schemas/model_parameters/adjust_gain.schema.yml,sha256=n3k7JCkxDyl7LgU0y6-1BmxMO3yfy_Ab_emef4tEUTw,821
|
|
@@ -375,7 +376,7 @@ simtools/schemas/model_parameters/trigger_current_limit.schema.yml,sha256=WTz-6f
|
|
|
375
376
|
simtools/schemas/model_parameters/trigger_delay_compensation.schema.yml,sha256=U8ctXld0Ukz3JaVR0UGlxewzk-4RlsE3Gdq0hMW4qfQ,1476
|
|
376
377
|
simtools/schemas/model_parameters/trigger_pixels.schema.yml,sha256=3-n2PBl9LQ4PBVOgR__XQpFYGUYYS_Jju_pvGSucTq8,1012
|
|
377
378
|
simtools/simtel/simtel_config_reader.py,sha256=_R1eLpZPqSu2MbiEfN1zYTdr8jJl1uameGyaxupACe0,15005
|
|
378
|
-
simtools/simtel/simtel_config_writer.py,sha256=
|
|
379
|
+
simtools/simtel/simtel_config_writer.py,sha256=SUT_tw5rM1DxEhoC3phMQ_SSbvQXPh2IusvYPCwltKc,30865
|
|
379
380
|
simtools/simtel/simtel_io_event_histograms.py,sha256=M0EnmiS9AbzwLyZapkP2JJc3Dze40NoPTHKtWHxe1kg,17688
|
|
380
381
|
simtools/simtel/simtel_io_event_reader.py,sha256=YPP4Cs4NncTIXxbu40veksnJ_3_cZ00-56kGoEuR8so,14595
|
|
381
382
|
simtools/simtel/simtel_io_event_writer.py,sha256=8iK4qvCEjA3X8HB6QdcMWD1w0cC1UEdAm_XRuOM-sGE,12739
|
|
@@ -386,29 +387,29 @@ simtools/simtel/simulator_array.py,sha256=wuY4Xfg7PXzN95hihXfAHosgUl1YN5FCdvfL6r
|
|
|
386
387
|
simtools/simtel/simulator_camera_efficiency.py,sha256=BQg1dAD7sqCJitBJiGSk7VOZCjF01OeUXk5qyh_0I18,11730
|
|
387
388
|
simtools/simtel/simulator_light_emission.py,sha256=P3VEoxoXeIaJfIGstJ2rCNwfwJy9wGjA-eEnd-aXBNI,19967
|
|
388
389
|
simtools/simtel/simulator_ray_tracing.py,sha256=ssgcFMSFZNIwzDeHuo7-fN-djNbru59a2pK-iZL33KA,11525
|
|
389
|
-
simtools/testing/assertions.py,sha256=
|
|
390
|
+
simtools/testing/assertions.py,sha256=B8fc1x--ITmHy6aWXmZ_dg6k-bse10JbO-HUW7GcCD4,6350
|
|
390
391
|
simtools/testing/configuration.py,sha256=kAjPzSDvgKJe-N2z5H3U2_fwjrbCZ20YDFqA1z921Mg,8291
|
|
391
392
|
simtools/testing/helpers.py,sha256=LTVlkt36gQ0AtIK2mN6toI3vxwUPCjV5VMLA0nkS07U,1829
|
|
392
393
|
simtools/testing/log_inspector.py,sha256=v5mtOz9tgBkCJuYYyDm8zV3x7yG7ctTrBNZCgox9l5w,1437
|
|
393
394
|
simtools/testing/sim_telarray_metadata.py,sha256=VeqO_HcZ7QKBF4sghEG1TY5h2jTojUSxt8qfww-_aiw,7945
|
|
394
|
-
simtools/testing/validate_output.py,sha256=
|
|
395
|
+
simtools/testing/validate_output.py,sha256=f3LAPhdPEEZsiR5jY6C7vWK4EEfyXuWkk0Ju7DKQdL0,13300
|
|
395
396
|
simtools/utils/general.py,sha256=SNZNCzDnN2V-IbPsM5eqH6gcyuCf2lwx32vlAvuZhdQ,24000
|
|
396
397
|
simtools/utils/geometry.py,sha256=VZlovI6E6p6EloqeM9kJ-YgbilZ_4dNIwoJ97evP5B0,9098
|
|
397
398
|
simtools/utils/names.py,sha256=NBldXuTCEfiRSHaLT4gn2AH2y2bTW6QQIfyrC1GiO24,21836
|
|
398
|
-
simtools/utils/value_conversion.py,sha256=
|
|
399
|
+
simtools/utils/value_conversion.py,sha256=UNPNjqCeuYRscZ6UJbVK2VhbViU97TsYulc7s23Mwao,6482
|
|
399
400
|
simtools/visualization/legend_handlers.py,sha256=QhUeZwuftA1VxfcMQ40KrwnPaD2FU95fNgZfX68YTJE,9792
|
|
400
401
|
simtools/visualization/plot_array_layout.py,sha256=5gQa29ooajwftCuBTZ2eEKZjaqgw9RMRAiG1-D_2RpE,10613
|
|
401
402
|
simtools/visualization/plot_camera.py,sha256=dLXKHYfY_elqaKhj91HlntASoVixTrpc_Kf0jPU8RmU,11167
|
|
402
403
|
simtools/visualization/plot_corsika_histograms.py,sha256=6DV0NT-b-yYZ9dbCgSU3UCUHJTTWkthBsXaYgrF7JAg,21874
|
|
403
404
|
simtools/visualization/plot_incident_angles.py,sha256=kj_YcBrFRR6C9IUe4bhekfXR9UrPBmwXBtSvrFdMRf0,13424
|
|
404
|
-
simtools/visualization/plot_pixels.py,sha256=
|
|
405
|
-
simtools/visualization/plot_psf.py,sha256=
|
|
405
|
+
simtools/visualization/plot_pixels.py,sha256=QsMsRbjXyP7i15zTGUZWKvkVo8RRw4Pp-47xPRerr9Y,20564
|
|
406
|
+
simtools/visualization/plot_psf.py,sha256=0y3sIilriIqarFSv-yfod-1wtySTNBkq5ST79_8sFsU,25299
|
|
406
407
|
simtools/visualization/plot_simtel_event_histograms.py,sha256=o9fPkKE1568MRumPVRyBs8ah5eyTN2mCLXseEwAy4RA,12751
|
|
407
408
|
simtools/visualization/plot_simtel_events.py,sha256=zvfKboltaiz0yTPAv2_Is29hJlHbPMgofFhBEWNh0Ws,31450
|
|
408
|
-
simtools/visualization/plot_tables.py,sha256=
|
|
409
|
+
simtools/visualization/plot_tables.py,sha256=T3pfuj8YKeCZhef9KY2ne8dIzxnYnKiWDDN7aptjHXY,8662
|
|
409
410
|
simtools/visualization/visualize.py,sha256=0vs7rt6OTCdrai7AO3bbd4sLuh1oEb_zAG_k53dgZVo,18815
|
|
410
|
-
gammasimtools-0.
|
|
411
|
-
gammasimtools-0.
|
|
412
|
-
gammasimtools-0.
|
|
413
|
-
gammasimtools-0.
|
|
414
|
-
gammasimtools-0.
|
|
411
|
+
gammasimtools-0.24.0.dist-info/METADATA,sha256=i7KEt2rKteSU--2sgVex6Iqpzj15ByTWPjDUc03yGi4,5977
|
|
412
|
+
gammasimtools-0.24.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
413
|
+
gammasimtools-0.24.0.dist-info/entry_points.txt,sha256=F3seqX_FXRQhXNmk2Hcwi4YnWqTNQidJ06rw61RzcYc,5030
|
|
414
|
+
gammasimtools-0.24.0.dist-info/top_level.txt,sha256=9Yi7Q7aQX6alvpP2YGQtIYo208wdGkXUApHboEdj-ys,9
|
|
415
|
+
gammasimtools-0.24.0.dist-info/RECORD,,
|
simtools/_version.py
CHANGED
|
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
|
|
|
28
28
|
commit_id: COMMIT_ID
|
|
29
29
|
__commit_id__: COMMIT_ID
|
|
30
30
|
|
|
31
|
-
__version__ = version = '0.
|
|
32
|
-
__version_tuple__ = version_tuple = (0,
|
|
31
|
+
__version__ = version = '0.24.0'
|
|
32
|
+
__version_tuple__ = version_tuple = (0, 24, 0)
|
|
33
33
|
|
|
34
34
|
__commit_id__ = commit_id = None
|
simtools/application_control.py
CHANGED
|
@@ -49,8 +49,8 @@ def startup_application(parse_function, setup_io_handler=True, logger_name=None)
|
|
|
49
49
|
io_handler_instance : io_handler.IOHandler or None
|
|
50
50
|
IOHandler instance if setup_io_handler=True, None otherwise.
|
|
51
51
|
|
|
52
|
-
|
|
53
|
-
|
|
52
|
+
Examples
|
|
53
|
+
--------
|
|
54
54
|
Basic usage in an application:
|
|
55
55
|
|
|
56
56
|
.. code-block:: python
|
|
@@ -107,8 +107,8 @@ def get_application_label(file_path):
|
|
|
107
107
|
str
|
|
108
108
|
Application label (filename without extension).
|
|
109
109
|
|
|
110
|
-
|
|
111
|
-
|
|
110
|
+
Examples
|
|
111
|
+
--------
|
|
112
112
|
.. code-block:: python
|
|
113
113
|
|
|
114
114
|
def main():
|
|
@@ -138,7 +138,7 @@ def main():
|
|
|
138
138
|
validate_schema_file = metadata.get_data_model_schema_file_name()
|
|
139
139
|
|
|
140
140
|
layout = array_layout.ArrayLayout(
|
|
141
|
-
|
|
141
|
+
db_config=app_context.db_config,
|
|
142
142
|
model_version=app_context.args["model_version"],
|
|
143
143
|
site=site,
|
|
144
144
|
telescope_list_file=app_context.args["input"],
|
|
@@ -159,14 +159,14 @@ def confirm_and_insert_files(files_to_insert, args_dict, db, logger):
|
|
|
159
159
|
# drop test database; be safe and required DB name is sandbox
|
|
160
160
|
if args_dict.get("test_db", False) and "sandbox" in args_dict["db"]:
|
|
161
161
|
logger.info(f"Test database used. Dropping all data from {args_dict['db']}")
|
|
162
|
-
db.db_client.drop_database(args_dict["db"])
|
|
162
|
+
db.mongo_db_handler.db_client.drop_database(args_dict["db"])
|
|
163
163
|
|
|
164
164
|
|
|
165
165
|
def main():
|
|
166
166
|
"""Add files to the database."""
|
|
167
167
|
app_context = startup_application(_parse, setup_io_handler=False)
|
|
168
168
|
|
|
169
|
-
db = db_handler.DatabaseHandler(
|
|
169
|
+
db = db_handler.DatabaseHandler(db_config=app_context.db_config)
|
|
170
170
|
|
|
171
171
|
files_to_insert = collect_files_to_insert(app_context.args, app_context.logger, db)
|
|
172
172
|
confirm_and_insert_files(files_to_insert, app_context.args, db, app_context.logger)
|
|
@@ -93,7 +93,7 @@ def main():
|
|
|
93
93
|
"""Add or update a model parameter database to the DB."""
|
|
94
94
|
app_context = startup_application(_parse, setup_io_handler=False)
|
|
95
95
|
|
|
96
|
-
db = db_handler.DatabaseHandler(
|
|
96
|
+
db = db_handler.DatabaseHandler(db_config=app_context.db_config)
|
|
97
97
|
|
|
98
98
|
if app_context.args.get("type") == "model_parameters":
|
|
99
99
|
db_model_upload.add_model_parameters_to_db(
|
|
@@ -67,7 +67,7 @@ def main():
|
|
|
67
67
|
app_context.logger.info(
|
|
68
68
|
f"Using test database version {app_context.db_config['db_simulation_model_version']}"
|
|
69
69
|
)
|
|
70
|
-
db = db_handler.DatabaseHandler(
|
|
70
|
+
db = db_handler.DatabaseHandler(db_config=app_context.db_config)
|
|
71
71
|
|
|
72
72
|
files_to_insert = []
|
|
73
73
|
if app_context.args.get("file_name", None) is not None:
|
|
@@ -109,7 +109,7 @@ def main():
|
|
|
109
109
|
# drop test database; be safe and required DB name is sandbox
|
|
110
110
|
if app_context.args.get("test_db", False) and "sandbox" in db.get_db_name():
|
|
111
111
|
app_context.logger.info(f"Test database used. Dropping all data from {db.get_db_name()}")
|
|
112
|
-
db.db_client.drop_database(db.get_db_name())
|
|
112
|
+
db.mongo_db_handler.db_client.drop_database(db.get_db_name())
|
|
113
113
|
|
|
114
114
|
|
|
115
115
|
if __name__ == "__main__":
|
|
@@ -124,7 +124,7 @@ def write_ground_array_elements_to_repository(args_dict, db_config, logger):
|
|
|
124
124
|
|
|
125
125
|
"""
|
|
126
126
|
array_model = ArrayModel(
|
|
127
|
-
|
|
127
|
+
db_config=db_config,
|
|
128
128
|
model_version=None,
|
|
129
129
|
site=args_dict["site"],
|
|
130
130
|
array_elements=args_dict["input"],
|
|
@@ -37,7 +37,7 @@ def main():
|
|
|
37
37
|
"""Generate compound indexes for the specified database."""
|
|
38
38
|
app_context = startup_application(_parse, setup_io_handler=False)
|
|
39
39
|
|
|
40
|
-
db = db_handler.DatabaseHandler(
|
|
40
|
+
db = db_handler.DatabaseHandler(db_config=app_context.db_config)
|
|
41
41
|
|
|
42
42
|
db.generate_compound_indexes_for_databases(
|
|
43
43
|
db_name=app_context.args["db_name"],
|
|
@@ -102,7 +102,7 @@ def _layout_from_db(args_dict, db_config):
|
|
|
102
102
|
Table with array element positions.
|
|
103
103
|
"""
|
|
104
104
|
array_model = ArrayModel(
|
|
105
|
-
|
|
105
|
+
db_config=db_config,
|
|
106
106
|
model_version=args_dict["model_version"],
|
|
107
107
|
site=args_dict["site"],
|
|
108
108
|
layout_name=args_dict.get("array_layout_name", None),
|
|
@@ -121,7 +121,7 @@ def main():
|
|
|
121
121
|
if app_context.args.get("site", None) is None:
|
|
122
122
|
raise ValueError("Site must be provided to list available layouts.")
|
|
123
123
|
site_model = SiteModel(
|
|
124
|
-
|
|
124
|
+
db_config=app_context.db_config,
|
|
125
125
|
model_version=app_context.args["model_version"],
|
|
126
126
|
site=app_context.args["site"],
|
|
127
127
|
)
|
|
@@ -60,7 +60,7 @@ def main():
|
|
|
60
60
|
"""Get file from database."""
|
|
61
61
|
app_context = startup_application(_parse)
|
|
62
62
|
|
|
63
|
-
db = db_handler.DatabaseHandler(
|
|
63
|
+
db = db_handler.DatabaseHandler(db_config=app_context.db_config)
|
|
64
64
|
file_id = db.export_model_files(
|
|
65
65
|
dest=app_context.io_handler.get_output_directory(),
|
|
66
66
|
file_names=app_context.args["file_name"],
|
|
@@ -108,7 +108,7 @@ def main():
|
|
|
108
108
|
"""Get a parameter entry from DB for a specific telescope or a site."""
|
|
109
109
|
app_context = startup_application(_parse)
|
|
110
110
|
|
|
111
|
-
db = db_handler.DatabaseHandler(
|
|
111
|
+
db = db_handler.DatabaseHandler(db_config=app_context.db_config)
|
|
112
112
|
|
|
113
113
|
pars = db.get_model_parameter(
|
|
114
114
|
parameter=app_context.args["parameter"],
|
|
@@ -32,10 +32,12 @@ def main():
|
|
|
32
32
|
"""Inspect databases."""
|
|
33
33
|
app_context = startup_application(_parse, setup_io_handler=False)
|
|
34
34
|
|
|
35
|
-
db = db_handler.DatabaseHandler(
|
|
35
|
+
db = db_handler.DatabaseHandler(db_config=app_context.db_config)
|
|
36
36
|
# databases without internal databases we don't have rights to modify
|
|
37
37
|
databases = [
|
|
38
|
-
d
|
|
38
|
+
d
|
|
39
|
+
for d in db.mongo_db_handler.db_client.list_database_names()
|
|
40
|
+
if d not in ("config", "admin", "local")
|
|
39
41
|
]
|
|
40
42
|
requested = app_context.args["db_name"]
|
|
41
43
|
if requested != "all" and requested not in databases:
|
|
@@ -87,7 +87,7 @@ def main():
|
|
|
87
87
|
"""Application main."""
|
|
88
88
|
app_context = startup_application(_parse)
|
|
89
89
|
|
|
90
|
-
db = db_handler.DatabaseHandler(
|
|
90
|
+
db = db_handler.DatabaseHandler(db_config=app_context.db_config)
|
|
91
91
|
db.print_connection_info()
|
|
92
92
|
|
|
93
93
|
db_model_upload.add_complete_model(
|
|
@@ -92,7 +92,7 @@ def main():
|
|
|
92
92
|
branch_name=app_context.args["repository_branch"],
|
|
93
93
|
)
|
|
94
94
|
|
|
95
|
-
db = db_handler.DatabaseHandler(
|
|
95
|
+
db = db_handler.DatabaseHandler(db_config=app_context.db_config)
|
|
96
96
|
db_array_layouts = db.get_model_parameter(
|
|
97
97
|
parameter="array_layouts",
|
|
98
98
|
site=app_context.args["site"],
|
|
@@ -46,7 +46,7 @@ def main():
|
|
|
46
46
|
array_model = ArrayModel(
|
|
47
47
|
label=app_context.args["label"],
|
|
48
48
|
model_version=app_context.args["model_version"],
|
|
49
|
-
|
|
49
|
+
db_config=app_context.db_config,
|
|
50
50
|
site=app_context.args.get("site"),
|
|
51
51
|
layout_name=app_context.args.get("array_layout_name"),
|
|
52
52
|
array_elements=app_context.args.get("array_elements"),
|
|
@@ -3,15 +3,18 @@ Generate a new simulation model production and update tables and model parameter
|
|
|
3
3
|
|
|
4
4
|
This script is used to maintain the simulation model repository. It allows to create
|
|
5
5
|
new production tables by copying an existing base version and applies modifications
|
|
6
|
-
to production tables and model parameters as provided in a
|
|
6
|
+
to production tables and model parameters as provided in a configuration file (see
|
|
7
|
+
the 'info.yml' examples in the simulation models repository).
|
|
7
8
|
|
|
8
9
|
Two main use cases are covered by this script:
|
|
9
10
|
|
|
10
|
-
1. full update:
|
|
11
|
+
1. full update: create a complete new set of production tables (e.g. for new major or minor
|
|
11
12
|
versions of the simulation models). This will copy all production tables from the source
|
|
12
13
|
directory and apply the modifications to the tables that are listed in the modifications file.
|
|
14
|
+
If the full update is based on a previous patch update, the full history of changes is applied
|
|
15
|
+
iteratively until the last base version is reached.
|
|
13
16
|
|
|
14
|
-
2. patch update:
|
|
17
|
+
2. patch update: create a set of new production tables including the changes defined in the
|
|
15
18
|
modifications file. No unmodified tables are copied. For new production tables with patch
|
|
16
19
|
modifications, the key-value pair 'base_model_version: <base_model version>' is added.
|
|
17
20
|
|
|
@@ -26,8 +29,8 @@ The following example applies a patch update with changes defined in a YAML file
|
|
|
26
29
|
.. code-block:: console
|
|
27
30
|
|
|
28
31
|
simtools-maintain-simulation-model-add-new-production \\
|
|
29
|
-
--
|
|
30
|
-
--
|
|
32
|
+
--model_path ../simulation-models-dev/simulation-models/ \\
|
|
33
|
+
--model_version 6.0.2
|
|
31
34
|
|
|
32
35
|
"""
|
|
33
36
|
|
|
@@ -44,20 +47,7 @@ def _parse():
|
|
|
44
47
|
label=get_application_label(__file__),
|
|
45
48
|
description="Generate a new simulation model production",
|
|
46
49
|
)
|
|
47
|
-
config.
|
|
48
|
-
"--simulation_models_path",
|
|
49
|
-
type=str,
|
|
50
|
-
required=True,
|
|
51
|
-
help="Path to the simulation models repository.",
|
|
52
|
-
)
|
|
53
|
-
config.parser.add_argument(
|
|
54
|
-
"--modifications",
|
|
55
|
-
type=str,
|
|
56
|
-
required=True,
|
|
57
|
-
help="File containing the list of changes to apply.",
|
|
58
|
-
)
|
|
59
|
-
|
|
60
|
-
return config.initialize(db_config=False, output=False)
|
|
50
|
+
return config.initialize(db_config=False, output=False, simulation_model=["model_version"])
|
|
61
51
|
|
|
62
52
|
|
|
63
53
|
def main():
|
|
@@ -65,8 +55,8 @@ def main():
|
|
|
65
55
|
app_context = startup_application(_parse)
|
|
66
56
|
|
|
67
57
|
model_repository.generate_new_production(
|
|
68
|
-
|
|
69
|
-
simulation_models_path=Path(app_context.args["
|
|
58
|
+
model_version=app_context.args["model_version"],
|
|
59
|
+
simulation_models_path=Path(app_context.args["model_path"]),
|
|
70
60
|
)
|
|
71
61
|
|
|
72
62
|
|
|
@@ -132,7 +132,7 @@ def main():
|
|
|
132
132
|
|
|
133
133
|
axes = load_axes(app_context.args["axes"])
|
|
134
134
|
site_model = SiteModel(
|
|
135
|
-
|
|
135
|
+
db_config=app_context.db_config,
|
|
136
136
|
model_version=app_context.args["model_version"],
|
|
137
137
|
site=app_context.args["site"],
|
|
138
138
|
)
|
|
@@ -73,10 +73,10 @@ def main():
|
|
|
73
73
|
"""Submit and validate array layouts."""
|
|
74
74
|
app_context = startup_application(_parse)
|
|
75
75
|
|
|
76
|
-
db = db_handler.DatabaseHandler(
|
|
76
|
+
db = db_handler.DatabaseHandler(db_config=app_context.db_config)
|
|
77
77
|
|
|
78
78
|
array_layouts = validate_array_layouts_with_db(
|
|
79
|
-
production_table=db.
|
|
79
|
+
production_table=db.read_production_table_from_db(
|
|
80
80
|
collection_name="telescopes", model_version=app_context.args["model_version"]
|
|
81
81
|
),
|
|
82
82
|
array_layouts=ascii_handler.collect_data_from_file(app_context.args["array_layouts"]),
|
|
@@ -92,7 +92,7 @@ def main():
|
|
|
92
92
|
tel_model = TelescopeModel(
|
|
93
93
|
site=app_context.args["site"],
|
|
94
94
|
telescope_name=app_context.args["telescope"],
|
|
95
|
-
|
|
95
|
+
db_config=app_context.db_config,
|
|
96
96
|
model_version=app_context.args["model_version"],
|
|
97
97
|
label=label,
|
|
98
98
|
)
|
|
@@ -136,8 +136,8 @@ def main():
|
|
|
136
136
|
model_version=app_context.args["model_version"],
|
|
137
137
|
)
|
|
138
138
|
|
|
139
|
-
if app_context.args.get("
|
|
140
|
-
tel_model.
|
|
139
|
+
if app_context.args.get("overwrite_model_parameters"):
|
|
140
|
+
tel_model.overwrite_parameters_from_file(app_context.args["overwrite_model_parameters"])
|
|
141
141
|
|
|
142
142
|
ray = RayTracing(
|
|
143
143
|
telescope_model=tel_model,
|
|
@@ -137,7 +137,7 @@ def main():
|
|
|
137
137
|
# 'camera_body_diameter': 289.7,
|
|
138
138
|
# 'telescope_transmission': 1
|
|
139
139
|
# }
|
|
140
|
-
# tel_model.
|
|
140
|
+
# tel_model.overwrite_parameters(pars_to_change)
|
|
141
141
|
|
|
142
142
|
app_context.logger.info(
|
|
143
143
|
f"\nValidating telescope optics with ray tracing simulations for {tel_model.name}\n"
|
|
@@ -250,6 +250,13 @@ class CommandLineParser(argparse.ArgumentParser):
|
|
|
250
250
|
type=str,
|
|
251
251
|
default=None,
|
|
252
252
|
)
|
|
253
|
+
_job_group.add_argument(
|
|
254
|
+
"--overwrite_model_parameters",
|
|
255
|
+
help="File name to overwrite model parameters from DB with provided values",
|
|
256
|
+
type=str,
|
|
257
|
+
required=False,
|
|
258
|
+
)
|
|
259
|
+
|
|
253
260
|
if any(
|
|
254
261
|
option in model_options for option in ["site", "telescope", "layout", "layout_file"]
|
|
255
262
|
):
|
|
@@ -261,15 +268,6 @@ class CommandLineParser(argparse.ArgumentParser):
|
|
|
261
268
|
help="telescope model name (e.g., LSTN-01, SSTS-design, ...)",
|
|
262
269
|
type=self.telescope,
|
|
263
270
|
)
|
|
264
|
-
_job_group.add_argument(
|
|
265
|
-
"--telescope_model_file",
|
|
266
|
-
help=(
|
|
267
|
-
"Path to a YAML file containing modifications to the telescope model. "
|
|
268
|
-
"This feature is intended for developers and lacks validation."
|
|
269
|
-
),
|
|
270
|
-
type=Path,
|
|
271
|
-
required=False,
|
|
272
|
-
)
|
|
273
271
|
if "layout" in model_options or "layout_file" in model_options:
|
|
274
272
|
_job_group = self._add_model_option_layout(
|
|
275
273
|
job_group=_job_group,
|
|
@@ -10,7 +10,7 @@ import astropy.units as u
|
|
|
10
10
|
from dotenv import load_dotenv
|
|
11
11
|
|
|
12
12
|
import simtools.configuration.commandline_parser as argparser
|
|
13
|
-
from simtools.db.
|
|
13
|
+
from simtools.db.mongo_db import jsonschema_db_dict
|
|
14
14
|
from simtools.io import ascii_handler, io_handler
|
|
15
15
|
from simtools.utils import general as gen
|
|
16
16
|
|
|
@@ -133,7 +133,7 @@ class CorsikaConfig:
|
|
|
133
133
|
self.assert_corsika_configurations_match(model_versions, db_config=db_config)
|
|
134
134
|
model_version = model_versions[0]
|
|
135
135
|
self._logger.debug(f"Using model version {model_version} for CORSIKA parameters")
|
|
136
|
-
db_model_parameters = ModelParameter(
|
|
136
|
+
db_model_parameters = ModelParameter(db_config=db_config, model_version=model_version)
|
|
137
137
|
parameters_from_db = db_model_parameters.get_simulation_software_parameters("corsika")
|
|
138
138
|
|
|
139
139
|
config["INTERACTION_FLAGS"] = self._corsika_configuration_interaction_flags(
|
|
@@ -170,9 +170,7 @@ class CorsikaConfig:
|
|
|
170
170
|
|
|
171
171
|
# Get parameters for all model versions
|
|
172
172
|
for model_version in model_versions:
|
|
173
|
-
db_model_parameters = ModelParameter(
|
|
174
|
-
mongo_db_config=db_config, model_version=model_version
|
|
175
|
-
)
|
|
173
|
+
db_model_parameters = ModelParameter(db_config=db_config, model_version=model_version)
|
|
176
174
|
parameters_from_db_list.append(
|
|
177
175
|
db_model_parameters.get_simulation_software_parameters("corsika")
|
|
178
176
|
)
|