Sobol space coverage ==================== Example to show the space coverage of Sobol-points on a unit-square. Firstly we will create an simple Modelica model with two parameters like below:: model SobolExample parameter Real a; parameter Real b; end SobolExample; Save the SobolExample model to a file and upload it:: from modelon.impact.client import Client client = Client(url=) # url is optional; defaults to on-prem OR "https://impact.modelon.cloud" workspace = client.create_workspace() project = workspace.get_default_project() project.import_modelica_library('SobolExample.mo').wait() Next, we will create an experiment with Sobol expansion and 2 modifiers that are uniformly distributed in [0, 1) as follows:: from modelon.impact.client import Sobol, Uniform # Choose analysis type dynamic = workspace.get_custom_function('dynamic') # Get model model = workspace.get_model() # Set-up experiment experiment_definition=experiment_definition.with_modifiers( {'a': Uniform(0, 1), 'b': Uniform(0, 1)} ).with_expansion(Sobol(50)) exp = workspace.create_experiment(experiment_definition) To extract Sobol points, we can execute the experiment by calling the the execute method on the experiment object with the with_cases argument set to an empty list.This generate all the cases for a given experiment definition and compiles all FMUs needed for running the cases. **Note:** No cases are executed when the execute method is called with an empty list argument as shown below:: experiment_expand = exp.execute(with_cases=[]).wait() Now we can extract the Sobol points like below:: sobol_points = [list(case.input.parametrization.values()) for case in experiment_expand.get_cases()] We can plot the points as shown below:: import matplotlib.pylab as pl pl.figure() pl.title(f"{50} Sobol points on unit square") pl.scatter(*zip(*sobol_points), marker = '*', s = 48, color = 'blue') pl.grid() pl.xlim([0, 1]) pl.ylim([0, 1]) pl.show() .. image:: images/sobol_space_coverage.svg