From ad1aaf49b9c3dfe3d313a73b3ff28ba6595cf8df Mon Sep 17 00:00:00 2001 From: Sebastian Brandstaeter Date: Thu, 9 Jan 2025 21:32:21 +0100 Subject: [PATCH] feat: expose parameter skip_values for Sobol sequence to user --- queens/iterators/sobol_index_iterator.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/queens/iterators/sobol_index_iterator.py b/queens/iterators/sobol_index_iterator.py index 49b673ef..8eefc6c8 100644 --- a/queens/iterators/sobol_index_iterator.py +++ b/queens/iterators/sobol_index_iterator.py @@ -40,6 +40,8 @@ class SobolIndexIterator(Iterator): seed (int): Seed for random number generator. num_samples (int): Number of samples. calc_second_order (bool): Whether to calculate second-order sensitivities. + skip_values (int or None): Number of points in Sobol' sequence to skip, ideally a value of + base 2 (default: 1024) num_bootstrap_samples (int): Number of bootstrap samples for confidence intervals. confidence_level (float): Confidence level for the intervals. result_description (dict): Description of the desired results. @@ -63,6 +65,7 @@ def __init__( num_bootstrap_samples, confidence_level, result_description, + skip_values=1024, ): """Initialize Saltelli SALib iterator object. @@ -76,12 +79,15 @@ def __init__( num_bootstrap_samples (int): Number of bootstrap samples. confidence_level (float): Confidence level for intervals. result_description (dict): Description of the desired results. + skip_values (int or None): Number of points in Sobol' sequence to skip, ideally a value + of base 2 (default: 1024) """ super().__init__(model, parameters, global_settings) self.seed = seed self.num_samples = num_samples self.calc_second_order = calc_second_order + self.skip_values = skip_values self.num_bootstrap_samples = num_bootstrap_samples self.confidence_level = confidence_level self.result_description = result_description @@ -117,7 +123,7 @@ def pre_run(self): self.salib_problem, self.num_samples, calc_second_order=self.calc_second_order, - skip_values=1024, + skip_values=self.skip_values, ) _logger.debug(self.samples)