From ebaafa10a1420e8d3f7cf6c099c3f9aa3daf1557 Mon Sep 17 00:00:00 2001 From: tobiaskleiner Date: Tue, 9 Dec 2025 16:48:05 +0100 Subject: [PATCH 01/10] check logfiles for errors --- ...ulate_illuminator_configurable_position.yml | 18 ++++++++++++++++-- .../config/simulate_illuminator_layout.yml | 18 ++++++++++++++++-- 2 files changed, 32 insertions(+), 4 deletions(-) diff --git a/tests/integration_tests/config/simulate_illuminator_configurable_position.yml b/tests/integration_tests/config/simulate_illuminator_configurable_position.yml index e7cdc48ca8..10417d10aa 100644 --- a/tests/integration_tests/config/simulate_illuminator_configurable_position.yml +++ b/tests/integration_tests/config/simulate_illuminator_configurable_position.yml @@ -18,8 +18,22 @@ applications: test: true log_level: DEBUG integration_tests: - - output_file: logfile.log - - output_file: xyzls.simtel.zst + - test_output_files: + - file: logfile.log + path_descriptor: output_path + - file: xyzls.simtel.zst + path_descriptor: output_path + - expected_log_output: + pattern: + - "Initialize for run" + - "Total number of photons produced in this run" + - "Sim_telarray finished at" + - "CORSIKA IACT finished at" + - "Finished." + forbidden_pattern: + - "Error" + file: logfile.log + path_descriptor: output_path model_version_use_current: true test_name: run-configurable-position schema_name: application_workflow.metaschema diff --git a/tests/integration_tests/config/simulate_illuminator_layout.yml b/tests/integration_tests/config/simulate_illuminator_layout.yml index dc0483231f..d21156b947 100644 --- a/tests/integration_tests/config/simulate_illuminator_layout.yml +++ b/tests/integration_tests/config/simulate_illuminator_layout.yml @@ -10,8 +10,22 @@ applications: test: true log_level: DEBUG integration_tests: - - output_file: logfile.log - - output_file: xyzls.simtel.zst + - test_output_files: + - file: logfile.log + path_descriptor: output_path + - file: xyzls.simtel.zst + path_descriptor: output_path + - expected_log_output: + pattern: + - "Initialize for run" + - "Total number of photons produced in this run" + - "Sim_telarray finished at" + - "CORSIKA IACT finished at" + - "Finished." + forbidden_pattern: + - "Error" + file: logfile.log + path_descriptor: output_path model_version_use_current: true test_name: run-layout schema_name: application_workflow.metaschema From 1c03f64940bed1ad0906795f3152f3ecae3c7225 Mon Sep 17 00:00:00 2001 From: tobiaskleiner Date: Tue, 9 Dec 2025 16:48:55 +0100 Subject: [PATCH 02/10] if isotropic, don't add width --- src/simtools/simtel/simulator_light_emission.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/simtools/simtel/simulator_light_emission.py b/src/simtools/simtel/simulator_light_emission.py index 81c934e524..0cd5981827 100644 --- a/src/simtools/simtel/simulator_light_emission.py +++ b/src/simtools/simtel/simulator_light_emission.py @@ -546,6 +546,9 @@ def _get_angular_distribution_string_for_sim_telarray(self): ) return option_string + if option_string == "isotropic": + return option_string + width = self.calibration_model.get_parameter_value_with_unit( "flasher_angular_distribution_width" ) From ff4f0398cc9d0bdd646f2eeb183d3dc174dc1b32 Mon Sep 17 00:00:00 2001 From: tobiaskleiner Date: Tue, 9 Dec 2025 16:49:31 +0100 Subject: [PATCH 03/10] add unit test for isotropic ang distribution --- .../simtel/test_simulator_light_emission.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/tests/unit_tests/simtel/test_simulator_light_emission.py b/tests/unit_tests/simtel/test_simulator_light_emission.py index 3a7a9fd289..df99d1694e 100644 --- a/tests/unit_tests/simtel/test_simulator_light_emission.py +++ b/tests/unit_tests/simtel/test_simulator_light_emission.py @@ -1610,3 +1610,20 @@ def test__calibration_pointing_direction_with_custom_params(simulator_instance): simulator_instance.telescope_model.get_parameter_value_with_unit.assert_called_with( "array_element_position_ground" ) + + +def test__get_angular_distribution_string_for_sim_telarray_isotropic(simulator_instance): + """Test isotropic distribution returns just the token.""" + simulator_instance.calibration_model.get_parameter_value.return_value = "Isotropic" + + # Even if width is available (though it shouldn't be for isotropic), it should be ignored + mock_width = Mock() + mock_width.to.return_value.value = 10.0 + simulator_instance.calibration_model.get_parameter_value_with_unit.return_value = mock_width + + result = simulator_instance._get_angular_distribution_string_for_sim_telarray() + assert result == "isotropic" + + # Verify width was NOT requested (or at least not used in the return string) + # Based on implementation, width is requested AFTER the check, so it should NOT be called. + simulator_instance.calibration_model.get_parameter_value_with_unit.assert_not_called() From acb3462a003260c0eb9abddcf6cf21ed5083a4ec Mon Sep 17 00:00:00 2001 From: tobiaskleiner Date: Tue, 6 Jan 2026 14:37:54 +0100 Subject: [PATCH 04/10] add --- .../config/simulate_illuminator_configurable_position.yml | 2 ++ tests/integration_tests/config/simulate_illuminator_layout.yml | 2 ++ 2 files changed, 4 insertions(+) diff --git a/tests/integration_tests/config/simulate_illuminator_configurable_position.yml b/tests/integration_tests/config/simulate_illuminator_configurable_position.yml index 10417d10aa..21630e113a 100644 --- a/tests/integration_tests/config/simulate_illuminator_configurable_position.yml +++ b/tests/integration_tests/config/simulate_illuminator_configurable_position.yml @@ -29,9 +29,11 @@ applications: - "Total number of photons produced in this run" - "Sim_telarray finished at" - "CORSIKA IACT finished at" + - "Tel. triggered: " - "Finished." forbidden_pattern: - "Error" + - "No light source angular distribution given." file: logfile.log path_descriptor: output_path model_version_use_current: true diff --git a/tests/integration_tests/config/simulate_illuminator_layout.yml b/tests/integration_tests/config/simulate_illuminator_layout.yml index d21156b947..c0d68c2d00 100644 --- a/tests/integration_tests/config/simulate_illuminator_layout.yml +++ b/tests/integration_tests/config/simulate_illuminator_layout.yml @@ -21,9 +21,11 @@ applications: - "Total number of photons produced in this run" - "Sim_telarray finished at" - "CORSIKA IACT finished at" + - "Tel. triggered: " - "Finished." forbidden_pattern: - "Error" + - "No light source angular distribution given." file: logfile.log path_descriptor: output_path model_version_use_current: true From 2ca79ae935ca293b44987c31b24897f74ad4afaa Mon Sep 17 00:00:00 2001 From: tobiaskleiner Date: Wed, 7 Jan 2026 10:52:55 +0100 Subject: [PATCH 05/10] pattern is there even if it is passed as isotropic --- .../config/simulate_illuminator_configurable_position.yml | 1 - tests/integration_tests/config/simulate_illuminator_layout.yml | 3 ++- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/integration_tests/config/simulate_illuminator_configurable_position.yml b/tests/integration_tests/config/simulate_illuminator_configurable_position.yml index 21630e113a..d280ffc5d2 100644 --- a/tests/integration_tests/config/simulate_illuminator_configurable_position.yml +++ b/tests/integration_tests/config/simulate_illuminator_configurable_position.yml @@ -33,7 +33,6 @@ applications: - "Finished." forbidden_pattern: - "Error" - - "No light source angular distribution given." file: logfile.log path_descriptor: output_path model_version_use_current: true diff --git a/tests/integration_tests/config/simulate_illuminator_layout.yml b/tests/integration_tests/config/simulate_illuminator_layout.yml index c0d68c2d00..235e5d3e30 100644 --- a/tests/integration_tests/config/simulate_illuminator_layout.yml +++ b/tests/integration_tests/config/simulate_illuminator_layout.yml @@ -13,6 +13,8 @@ applications: - test_output_files: - file: logfile.log path_descriptor: output_path + - file: asasd + path_descriptor: output_path - file: xyzls.simtel.zst path_descriptor: output_path - expected_log_output: @@ -25,7 +27,6 @@ applications: - "Finished." forbidden_pattern: - "Error" - - "No light source angular distribution given." file: logfile.log path_descriptor: output_path model_version_use_current: true From d6661e4e3a941cebf425b5b1786100e6517b0356 Mon Sep 17 00:00:00 2001 From: tobiaskleiner Date: Wed, 7 Jan 2026 10:54:14 +0100 Subject: [PATCH 06/10] remove --- tests/integration_tests/config/simulate_illuminator_layout.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/tests/integration_tests/config/simulate_illuminator_layout.yml b/tests/integration_tests/config/simulate_illuminator_layout.yml index 235e5d3e30..ccc4595a4e 100644 --- a/tests/integration_tests/config/simulate_illuminator_layout.yml +++ b/tests/integration_tests/config/simulate_illuminator_layout.yml @@ -13,8 +13,6 @@ applications: - test_output_files: - file: logfile.log path_descriptor: output_path - - file: asasd - path_descriptor: output_path - file: xyzls.simtel.zst path_descriptor: output_path - expected_log_output: From 9336dab118bc07b4067feed3fb50f002e64c42c4 Mon Sep 17 00:00:00 2001 From: tobiaskleiner Date: Thu, 8 Jan 2026 11:27:12 +0100 Subject: [PATCH 07/10] add changelog --- docs/changes/1940.maintenance.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 docs/changes/1940.maintenance.md diff --git a/docs/changes/1940.maintenance.md b/docs/changes/1940.maintenance.md new file mode 100644 index 0000000000..63df7c3b8d --- /dev/null +++ b/docs/changes/1940.maintenance.md @@ -0,0 +1 @@ +Add search patterns in integration tests and fix bug when using a isotropic angular distribution in the illuminator simulations. From 0b98e6d5d199062dcd6c8c19a1c92579a0a34eef Mon Sep 17 00:00:00 2001 From: tobiaskleiner Date: Thu, 8 Jan 2026 14:49:36 +0100 Subject: [PATCH 08/10] typo --- docs/changes/1940.maintenance.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/changes/1940.maintenance.md b/docs/changes/1940.maintenance.md index 63df7c3b8d..4d01b23dd1 100644 --- a/docs/changes/1940.maintenance.md +++ b/docs/changes/1940.maintenance.md @@ -1 +1 @@ -Add search patterns in integration tests and fix bug when using a isotropic angular distribution in the illuminator simulations. +Add search patterns in integration tests and fix bug when using an isotropic angular distribution in the illuminator simulations. From fa036efe68a3a7fd3705a395e44e6869fc5a0db9 Mon Sep 17 00:00:00 2001 From: Tobias Kleiner Date: Thu, 8 Jan 2026 14:50:15 +0100 Subject: [PATCH 09/10] Update tests/unit_tests/simtel/test_simulator_light_emission.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- tests/unit_tests/simtel/test_simulator_light_emission.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/unit_tests/simtel/test_simulator_light_emission.py b/tests/unit_tests/simtel/test_simulator_light_emission.py index df99d1694e..935d9a371e 100644 --- a/tests/unit_tests/simtel/test_simulator_light_emission.py +++ b/tests/unit_tests/simtel/test_simulator_light_emission.py @@ -1624,6 +1624,6 @@ def test__get_angular_distribution_string_for_sim_telarray_isotropic(simulator_i result = simulator_instance._get_angular_distribution_string_for_sim_telarray() assert result == "isotropic" - # Verify width was NOT requested (or at least not used in the return string) - # Based on implementation, width is requested AFTER the check, so it should NOT be called. + # Verify width was NOT requested: the implementation returns early for isotropic distributions + # before attempting to fetch the width via get_parameter_value_with_unit. simulator_instance.calibration_model.get_parameter_value_with_unit.assert_not_called() From 19ff95fd96e93c9211b39e25090756bd127020e6 Mon Sep 17 00:00:00 2001 From: tobiaskleiner Date: Thu, 8 Jan 2026 16:58:35 +0100 Subject: [PATCH 10/10] remove --- .../config/simulate_illuminator_configurable_position.yml | 2 +- tests/integration_tests/config/simulate_illuminator_layout.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/integration_tests/config/simulate_illuminator_configurable_position.yml b/tests/integration_tests/config/simulate_illuminator_configurable_position.yml index d280ffc5d2..da12cd182d 100644 --- a/tests/integration_tests/config/simulate_illuminator_configurable_position.yml +++ b/tests/integration_tests/config/simulate_illuminator_configurable_position.yml @@ -29,7 +29,7 @@ applications: - "Total number of photons produced in this run" - "Sim_telarray finished at" - "CORSIKA IACT finished at" - - "Tel. triggered: " + - "Tel. triggered:" - "Finished." forbidden_pattern: - "Error" diff --git a/tests/integration_tests/config/simulate_illuminator_layout.yml b/tests/integration_tests/config/simulate_illuminator_layout.yml index ccc4595a4e..05f84a359a 100644 --- a/tests/integration_tests/config/simulate_illuminator_layout.yml +++ b/tests/integration_tests/config/simulate_illuminator_layout.yml @@ -21,7 +21,7 @@ applications: - "Total number of photons produced in this run" - "Sim_telarray finished at" - "CORSIKA IACT finished at" - - "Tel. triggered: " + - "Tel. triggered:" - "Finished." forbidden_pattern: - "Error"