sorted variables

This commit is contained in:
Dario Coscia
2024-11-07 15:28:21 +01:00
committed by Nicola Demo
parent 59c9a173b4
commit 23bc40924f
3 changed files with 21 additions and 8 deletions

View File

@@ -232,16 +232,18 @@ class CartesianDomain(Location):
return result
if variables == "all":
variables = self.variables
elif isinstance(variables, (list, tuple)):
variables = sorted(variables)
if self.fixed_ and (not self.range_):
return _single_points_sample(n, variables)
if variables == "all":
variables = list(self.range_.keys()) + list(self.fixed_.keys())
if mode in ["grid", "chebyshev"]:
return _1d_sampler(n, mode, variables)
return _1d_sampler(n, mode, variables).extract(variables)
elif mode in ["random", "lh", "latin"]:
return _Nd_sampler(n, mode, variables)
return _Nd_sampler(n, mode, variables).extract(variables)
else:
raise ValueError(f"mode={mode} is not valid.")

View File

@@ -275,13 +275,18 @@ class EllipsoidDomain(Location):
return result
if variables == "all":
variables = self.variables
elif isinstance(variables, (list, tuple)):
variables = sorted(variables)
if self.fixed_ and (not self.range_):
return _single_points_sample(n, variables)
return _single_points_sample(n, variables).extract(variables)
if variables == "all":
variables = self.variables
if mode in ["random"]:
return _Nd_sampler(n, mode, variables)
return _Nd_sampler(n, mode, variables).extract(variables)
else:
raise NotImplementedError(f"mode={mode} is not implemented.")

View File

@@ -231,11 +231,17 @@ class SimplexDomain(Location):
in ``variables``.
"""
if variables == "all":
variables = self.variables
elif isinstance(variables, (list, tuple)):
variables = sorted(variables)
if mode in ["random"]:
if self._sample_surface:
sample_pts = self._sample_boundary_randomly(n)
else:
sample_pts = self._sample_interior_randomly(n, variables)
sample_pts = self._sample_interior_randomly(n, variables
)
else:
raise NotImplementedError(f"mode={mode} is not implemented.")