Note
Go to the end to download the full example code.
Parameter space#
In this example,
we will see the basics of ParameterSpace
.
from __future__ import annotations
from gemseo import configure_logger
from gemseo import create_discipline
from gemseo import sample_disciplines
from gemseo.algos.parameter_space import ParameterSpace
from gemseo.post.dataset.scatter_plot_matrix import ScatterMatrix
configure_logger()
<RootLogger root (INFO)>
Create a parameter space#
Firstly,
the creation of a ParameterSpace
does not require any mandatory argument:
parameter_space = ParameterSpace()
Then, we can add either deterministic variables
from their lower and upper bounds
(use ParameterSpace.add_variable()
):
parameter_space.add_variable("x", lower_bound=-2.0, upper_bound=2.0)
or uncertain variables from their distribution names and parameters
(use ParameterSpace.add_random_variable()
):
parameter_space.add_random_variable("y", "SPNormalDistribution", mu=0.0, sigma=1.0)
parameter_space
Warning
We cannot mix probability distributions from different families,
e.g. an OTDistribution
and a SPDistribution
.
We can check that the variables x and y are implemented as deterministic and uncertain variables respectively:
parameter_space.is_deterministic("x"), parameter_space.is_uncertain("y")
(True, True)
Note that when GEMSEO does not offer a class for the SciPy distribution,
we can use the generic GEMSEO class SPDistribution
to create any SciPy distribution
by setting interfaced_distribution
to its SciPy name
and parameters
as a dictionary of SciPy parameter names and values
(see the documentation of SciPy).
# parameter_space.add_random_variable(
# "y",
# "SPDistribution",
# interfaced_distribution="norm",
# parameters={"loc": 1.0, "scale": 2.0},
# )
A similar procedure can be followed
for OpenTURNS distributions for which
GEMSEO does not offer a class directly.
We can use the generic GEMSEO class OTDistribution
to create any OpenTURNS distribution
by setting interfaced_distribution
to its OpenTURNS name
and parameters
as a tuple of OpenTURNS parameter values
(see the documentation of OpenTURNS).
# parameter_space.add_random_variable(
# "y",
# "OTDistribution",
# interfaced_distribution="Normal",
# parameters=(1.0, 2.0),
# )
Sample from the parameter space#
We can sample the uncertain variables from the ParameterSpace
and get values either as a NumPy array (by default)
sample = parameter_space.compute_samples(n_samples=2, as_dict=True)
sample
[{'y': array([0.34864772])}, {'y': array([3.32304444])}]
or as a dictionary of NumPy arrays indexed by the names of the variables:
sample = parameter_space.compute_samples(n_samples=4)
sample
array([[-0.0897349 ],
[ 0.47029186],
[-0.28020125],
[ 0.86069996]])
Sample a discipline over the parameter space#
We can also sample a discipline over the parameter space.
For simplicity,
we instantiate an AnalyticDiscipline
from a dictionary of expressions:
discipline = create_discipline("AnalyticDiscipline", expressions={"z": "x+y"})
Then,
we use the sample_disciplines()
function
with an LHS algorithm
to generate 100 samples of the discipline
over the whole parameter space:
dataset = sample_disciplines(
[discipline], parameter_space, "z", algo_name="PYDOE_LHS", n_samples=100
)
WARNING - 02:42:54: No coupling in MDA, switching chain_linearize to True.
INFO - 02:42:54: *** Start Sampling execution ***
INFO - 02:42:54: Sampling
INFO - 02:42:54: Disciplines: AnalyticDiscipline
INFO - 02:42:54: MDO formulation: MDF
INFO - 02:42:54: Running the algorithm PYDOE_LHS:
INFO - 02:42:54: 1%| | 1/100 [00:00<00:00, 482.55 it/sec]
INFO - 02:42:54: 2%|▏ | 2/100 [00:00<00:00, 791.15 it/sec]
INFO - 02:42:54: 3%|▎ | 3/100 [00:00<00:00, 1037.59 it/sec]
INFO - 02:42:54: 4%|▍ | 4/100 [00:00<00:00, 1242.20 it/sec]
INFO - 02:42:54: 5%|▌ | 5/100 [00:00<00:00, 1350.65 it/sec]
INFO - 02:42:54: 6%|▌ | 6/100 [00:00<00:00, 1414.37 it/sec]
INFO - 02:42:54: 7%|▋ | 7/100 [00:00<00:00, 1477.83 it/sec]
INFO - 02:42:54: 8%|▊ | 8/100 [00:00<00:00, 1519.74 it/sec]
INFO - 02:42:54: 9%|▉ | 9/100 [00:00<00:00, 1565.56 it/sec]
INFO - 02:42:54: 10%|█ | 10/100 [00:00<00:00, 1639.55 it/sec]
INFO - 02:42:54: 11%|█ | 11/100 [00:00<00:00, 1703.05 it/sec]
INFO - 02:42:54: 12%|█▏ | 12/100 [00:00<00:00, 1771.12 it/sec]
INFO - 02:42:54: 13%|█▎ | 13/100 [00:00<00:00, 1833.48 it/sec]
INFO - 02:42:54: 14%|█▍ | 14/100 [00:00<00:00, 1886.96 it/sec]
INFO - 02:42:54: 15%|█▌ | 15/100 [00:00<00:00, 1941.81 it/sec]
INFO - 02:42:54: 16%|█▌ | 16/100 [00:00<00:00, 1995.27 it/sec]
INFO - 02:42:54: 17%|█▋ | 17/100 [00:00<00:00, 2041.02 it/sec]
INFO - 02:42:54: 18%|█▊ | 18/100 [00:00<00:00, 2083.44 it/sec]
INFO - 02:42:54: 19%|█▉ | 19/100 [00:00<00:00, 2125.91 it/sec]
INFO - 02:42:54: 20%|██ | 20/100 [00:00<00:00, 2164.63 it/sec]
INFO - 02:42:54: 21%|██ | 21/100 [00:00<00:00, 2168.83 it/sec]
INFO - 02:42:54: 22%|██▏ | 22/100 [00:00<00:00, 2200.53 it/sec]
INFO - 02:42:54: 23%|██▎ | 23/100 [00:00<00:00, 2227.51 it/sec]
INFO - 02:42:54: 24%|██▍ | 24/100 [00:00<00:00, 2256.06 it/sec]
INFO - 02:42:54: 25%|██▌ | 25/100 [00:00<00:00, 2285.67 it/sec]
INFO - 02:42:54: 26%|██▌ | 26/100 [00:00<00:00, 2314.98 it/sec]
INFO - 02:42:54: 27%|██▋ | 27/100 [00:00<00:00, 2338.11 it/sec]
INFO - 02:42:54: 28%|██▊ | 28/100 [00:00<00:00, 2364.42 it/sec]
INFO - 02:42:54: 29%|██▉ | 29/100 [00:00<00:00, 2390.29 it/sec]
INFO - 02:42:54: 30%|███ | 30/100 [00:00<00:00, 2409.73 it/sec]
INFO - 02:42:54: 31%|███ | 31/100 [00:00<00:00, 2429.35 it/sec]
INFO - 02:42:54: 32%|███▏ | 32/100 [00:00<00:00, 2408.14 it/sec]
INFO - 02:42:54: 33%|███▎ | 33/100 [00:00<00:00, 2410.98 it/sec]
INFO - 02:42:54: 34%|███▍ | 34/100 [00:00<00:00, 2425.77 it/sec]
INFO - 02:42:54: 35%|███▌ | 35/100 [00:00<00:00, 2439.72 it/sec]
INFO - 02:42:54: 36%|███▌ | 36/100 [00:00<00:00, 2449.63 it/sec]
INFO - 02:42:54: 37%|███▋ | 37/100 [00:00<00:00, 2466.34 it/sec]
INFO - 02:42:54: 38%|███▊ | 38/100 [00:00<00:00, 2478.90 it/sec]
INFO - 02:42:54: 39%|███▉ | 39/100 [00:00<00:00, 2493.45 it/sec]
INFO - 02:42:54: 40%|████ | 40/100 [00:00<00:00, 2509.72 it/sec]
INFO - 02:42:54: 41%|████ | 41/100 [00:00<00:00, 2525.46 it/sec]
INFO - 02:42:54: 42%|████▏ | 42/100 [00:00<00:00, 2534.98 it/sec]
INFO - 02:42:54: 43%|████▎ | 43/100 [00:00<00:00, 2547.21 it/sec]
INFO - 02:42:54: 44%|████▍ | 44/100 [00:00<00:00, 2561.02 it/sec]
INFO - 02:42:54: 45%|████▌ | 45/100 [00:00<00:00, 2571.83 it/sec]
INFO - 02:42:54: 46%|████▌ | 46/100 [00:00<00:00, 2585.47 it/sec]
INFO - 02:42:54: 47%|████▋ | 47/100 [00:00<00:00, 2599.08 it/sec]
INFO - 02:42:54: 48%|████▊ | 48/100 [00:00<00:00, 2609.72 it/sec]
INFO - 02:42:54: 49%|████▉ | 49/100 [00:00<00:00, 2621.81 it/sec]
INFO - 02:42:54: 50%|█████ | 50/100 [00:00<00:00, 2633.85 it/sec]
INFO - 02:42:54: 51%|█████ | 51/100 [00:00<00:00, 2645.63 it/sec]
INFO - 02:42:54: 52%|█████▏ | 52/100 [00:00<00:00, 2653.30 it/sec]
INFO - 02:42:54: 53%|█████▎ | 53/100 [00:00<00:00, 2664.52 it/sec]
INFO - 02:42:54: 54%|█████▍ | 54/100 [00:00<00:00, 2675.92 it/sec]
INFO - 02:42:54: 55%|█████▌ | 55/100 [00:00<00:00, 2683.25 it/sec]
INFO - 02:42:54: 56%|█████▌ | 56/100 [00:00<00:00, 2689.61 it/sec]
INFO - 02:42:54: 57%|█████▋ | 57/100 [00:00<00:00, 2699.22 it/sec]
INFO - 02:42:54: 58%|█████▊ | 58/100 [00:00<00:00, 2706.51 it/sec]
INFO - 02:42:54: 59%|█████▉ | 59/100 [00:00<00:00, 2715.50 it/sec]
INFO - 02:42:54: 60%|██████ | 60/100 [00:00<00:00, 2724.90 it/sec]
INFO - 02:42:54: 61%|██████ | 61/100 [00:00<00:00, 2732.15 it/sec]
INFO - 02:42:54: 62%|██████▏ | 62/100 [00:00<00:00, 2739.93 it/sec]
INFO - 02:42:54: 63%|██████▎ | 63/100 [00:00<00:00, 2747.99 it/sec]
INFO - 02:42:54: 64%|██████▍ | 64/100 [00:00<00:00, 2756.38 it/sec]
INFO - 02:42:54: 65%|██████▌ | 65/100 [00:00<00:00, 2759.02 it/sec]
INFO - 02:42:54: 66%|██████▌ | 66/100 [00:00<00:00, 2766.22 it/sec]
INFO - 02:42:54: 67%|██████▋ | 67/100 [00:00<00:00, 2774.45 it/sec]
INFO - 02:42:54: 68%|██████▊ | 68/100 [00:00<00:00, 2777.01 it/sec]
INFO - 02:42:54: 69%|██████▉ | 69/100 [00:00<00:00, 2781.07 it/sec]
INFO - 02:42:54: 70%|███████ | 70/100 [00:00<00:00, 2787.02 it/sec]
INFO - 02:42:54: 71%|███████ | 71/100 [00:00<00:00, 2790.94 it/sec]
INFO - 02:42:54: 72%|███████▏ | 72/100 [00:00<00:00, 2797.26 it/sec]
INFO - 02:42:54: 73%|███████▎ | 73/100 [00:00<00:00, 2804.14 it/sec]
INFO - 02:42:54: 74%|███████▍ | 74/100 [00:00<00:00, 2808.80 it/sec]
INFO - 02:42:54: 75%|███████▌ | 75/100 [00:00<00:00, 2814.72 it/sec]
INFO - 02:42:54: 76%|███████▌ | 76/100 [00:00<00:00, 2821.87 it/sec]
INFO - 02:42:54: 77%|███████▋ | 77/100 [00:00<00:00, 2828.83 it/sec]
INFO - 02:42:54: 78%|███████▊ | 78/100 [00:00<00:00, 2831.90 it/sec]
INFO - 02:42:54: 79%|███████▉ | 79/100 [00:00<00:00, 2837.22 it/sec]
INFO - 02:42:54: 80%|████████ | 80/100 [00:00<00:00, 2843.07 it/sec]
INFO - 02:42:54: 81%|████████ | 81/100 [00:00<00:00, 2846.96 it/sec]
INFO - 02:42:54: 82%|████████▏ | 82/100 [00:00<00:00, 2850.88 it/sec]
INFO - 02:42:54: 83%|████████▎ | 83/100 [00:00<00:00, 2856.66 it/sec]
INFO - 02:42:54: 84%|████████▍ | 84/100 [00:00<00:00, 2860.15 it/sec]
INFO - 02:42:54: 85%|████████▌ | 85/100 [00:00<00:00, 2864.96 it/sec]
INFO - 02:42:54: 86%|████████▌ | 86/100 [00:00<00:00, 2870.34 it/sec]
INFO - 02:42:54: 87%|████████▋ | 87/100 [00:00<00:00, 2875.87 it/sec]
INFO - 02:42:54: 88%|████████▊ | 88/100 [00:00<00:00, 2878.84 it/sec]
INFO - 02:42:54: 89%|████████▉ | 89/100 [00:00<00:00, 2883.80 it/sec]
INFO - 02:42:54: 90%|█████████ | 90/100 [00:00<00:00, 2888.40 it/sec]
INFO - 02:42:54: 91%|█████████ | 91/100 [00:00<00:00, 2891.09 it/sec]
INFO - 02:42:54: 92%|█████████▏| 92/100 [00:00<00:00, 2895.90 it/sec]
INFO - 02:42:54: 93%|█████████▎| 93/100 [00:00<00:00, 2901.14 it/sec]
INFO - 02:42:54: 94%|█████████▍| 94/100 [00:00<00:00, 2904.15 it/sec]
INFO - 02:42:54: 95%|█████████▌| 95/100 [00:00<00:00, 2906.91 it/sec]
INFO - 02:42:54: 96%|█████████▌| 96/100 [00:00<00:00, 2911.36 it/sec]
INFO - 02:42:54: 97%|█████████▋| 97/100 [00:00<00:00, 2916.13 it/sec]
INFO - 02:42:54: 98%|█████████▊| 98/100 [00:00<00:00, 2918.50 it/sec]
INFO - 02:42:54: 99%|█████████▉| 99/100 [00:00<00:00, 2923.23 it/sec]
INFO - 02:42:54: 100%|██████████| 100/100 [00:00<00:00, 2928.04 it/sec]
INFO - 02:42:54: *** End Sampling execution (time: 0:00:00.046381) ***
and visualize it in a tabular way:
dataset
or with a graphical post-processing, e.g. a scatter plot matrix:
ScatterMatrix(dataset).execute(save=False, show=True)

[<Figure size 640x480 with 9 Axes>]
Sample a discipline over the uncertain space#
If we want to sample a discipline over the uncertain space only, we need to extract it:
uncertain_space = parameter_space.extract_uncertain_space()
Then, we sample the discipline over this uncertain space:
dataset = sample_disciplines(
[discipline], uncertain_space, "z", algo_name="PYDOE_LHS", n_samples=100
)
dataset
WARNING - 02:42:55: No coupling in MDA, switching chain_linearize to True.
INFO - 02:42:55: *** Start Sampling execution ***
INFO - 02:42:55: Sampling
INFO - 02:42:55: Disciplines: AnalyticDiscipline
INFO - 02:42:55: MDO formulation: MDF
INFO - 02:42:55: Running the algorithm PYDOE_LHS:
INFO - 02:42:55: 1%| | 1/100 [00:00<00:00, 1943.61 it/sec]
INFO - 02:42:55: 2%|▏ | 2/100 [00:00<00:00, 2146.52 it/sec]
INFO - 02:42:55: 3%|▎ | 3/100 [00:00<00:00, 2322.00 it/sec]
INFO - 02:42:55: 4%|▍ | 4/100 [00:00<00:00, 2407.06 it/sec]
INFO - 02:42:55: 5%|▌ | 5/100 [00:00<00:00, 2494.83 it/sec]
INFO - 02:42:55: 6%|▌ | 6/100 [00:00<00:00, 2563.76 it/sec]
INFO - 02:42:55: 7%|▋ | 7/100 [00:00<00:00, 2570.49 it/sec]
INFO - 02:42:55: 8%|▊ | 8/100 [00:00<00:00, 2607.18 it/sec]
INFO - 02:42:55: 9%|▉ | 9/100 [00:00<00:00, 2649.41 it/sec]
INFO - 02:42:55: 10%|█ | 10/100 [00:00<00:00, 2658.66 it/sec]
INFO - 02:42:55: 11%|█ | 11/100 [00:00<00:00, 2688.97 it/sec]
INFO - 02:42:55: 12%|█▏ | 12/100 [00:00<00:00, 2699.18 it/sec]
INFO - 02:42:55: 13%|█▎ | 13/100 [00:00<00:00, 2717.19 it/sec]
INFO - 02:42:55: 14%|█▍ | 14/100 [00:00<00:00, 2742.53 it/sec]
INFO - 02:42:55: 15%|█▌ | 15/100 [00:00<00:00, 2756.39 it/sec]
INFO - 02:42:55: 16%|█▌ | 16/100 [00:00<00:00, 2771.49 it/sec]
INFO - 02:42:55: 17%|█▋ | 17/100 [00:00<00:00, 2793.57 it/sec]
INFO - 02:42:55: 18%|█▊ | 18/100 [00:00<00:00, 2815.60 it/sec]
INFO - 02:42:55: 19%|█▉ | 19/100 [00:00<00:00, 2821.85 it/sec]
INFO - 02:42:55: 20%|██ | 20/100 [00:00<00:00, 2836.00 it/sec]
INFO - 02:42:55: 21%|██ | 21/100 [00:00<00:00, 2850.22 it/sec]
INFO - 02:42:55: 22%|██▏ | 22/100 [00:00<00:00, 2849.22 it/sec]
INFO - 02:42:55: 23%|██▎ | 23/100 [00:00<00:00, 2861.56 it/sec]
INFO - 02:42:55: 24%|██▍ | 24/100 [00:00<00:00, 2875.03 it/sec]
INFO - 02:42:55: 25%|██▌ | 25/100 [00:00<00:00, 2878.65 it/sec]
INFO - 02:42:55: 26%|██▌ | 26/100 [00:00<00:00, 2887.57 it/sec]
INFO - 02:42:55: 27%|██▋ | 27/100 [00:00<00:00, 2898.55 it/sec]
INFO - 02:42:55: 28%|██▊ | 28/100 [00:00<00:00, 2892.55 it/sec]
INFO - 02:42:55: 29%|██▉ | 29/100 [00:00<00:00, 2897.79 it/sec]
INFO - 02:42:55: 30%|███ | 30/100 [00:00<00:00, 2907.26 it/sec]
INFO - 02:42:55: 31%|███ | 31/100 [00:00<00:00, 2910.04 it/sec]
INFO - 02:42:55: 32%|███▏ | 32/100 [00:00<00:00, 2917.78 it/sec]
INFO - 02:42:55: 33%|███▎ | 33/100 [00:00<00:00, 2926.01 it/sec]
INFO - 02:42:55: 34%|███▍ | 34/100 [00:00<00:00, 2928.02 it/sec]
INFO - 02:42:55: 35%|███▌ | 35/100 [00:00<00:00, 2931.73 it/sec]
INFO - 02:42:55: 36%|███▌ | 36/100 [00:00<00:00, 2939.59 it/sec]
INFO - 02:42:55: 37%|███▋ | 37/100 [00:00<00:00, 2941.98 it/sec]
INFO - 02:42:55: 38%|███▊ | 38/100 [00:00<00:00, 2948.00 it/sec]
INFO - 02:42:55: 39%|███▉ | 39/100 [00:00<00:00, 2954.16 it/sec]
INFO - 02:42:55: 40%|████ | 40/100 [00:00<00:00, 2956.23 it/sec]
INFO - 02:42:55: 41%|████ | 41/100 [00:00<00:00, 2960.50 it/sec]
INFO - 02:42:55: 42%|████▏ | 42/100 [00:00<00:00, 2966.32 it/sec]
INFO - 02:42:55: 43%|████▎ | 43/100 [00:00<00:00, 2965.83 it/sec]
INFO - 02:42:55: 44%|████▍ | 44/100 [00:00<00:00, 2968.18 it/sec]
INFO - 02:42:55: 45%|████▌ | 45/100 [00:00<00:00, 2972.67 it/sec]
INFO - 02:42:55: 46%|████▌ | 46/100 [00:00<00:00, 2973.86 it/sec]
INFO - 02:42:55: 47%|████▋ | 47/100 [00:00<00:00, 2974.68 it/sec]
INFO - 02:42:55: 48%|████▊ | 48/100 [00:00<00:00, 2979.35 it/sec]
INFO - 02:42:55: 49%|████▉ | 49/100 [00:00<00:00, 2981.80 it/sec]
INFO - 02:42:55: 50%|█████ | 50/100 [00:00<00:00, 2983.95 it/sec]
INFO - 02:42:55: 51%|█████ | 51/100 [00:00<00:00, 2988.15 it/sec]
INFO - 02:42:55: 52%|█████▏ | 52/100 [00:00<00:00, 2992.97 it/sec]
INFO - 02:42:55: 53%|█████▎ | 53/100 [00:00<00:00, 2992.83 it/sec]
INFO - 02:42:55: 54%|█████▍ | 54/100 [00:00<00:00, 2996.92 it/sec]
INFO - 02:42:55: 55%|█████▌ | 55/100 [00:00<00:00, 3000.02 it/sec]
INFO - 02:42:55: 56%|█████▌ | 56/100 [00:00<00:00, 2998.95 it/sec]
INFO - 02:42:55: 57%|█████▋ | 57/100 [00:00<00:00, 3001.72 it/sec]
INFO - 02:42:55: 58%|█████▊ | 58/100 [00:00<00:00, 3005.52 it/sec]
INFO - 02:42:55: 59%|█████▉ | 59/100 [00:00<00:00, 2999.89 it/sec]
INFO - 02:42:55: 60%|██████ | 60/100 [00:00<00:00, 2993.33 it/sec]
INFO - 02:42:55: 61%|██████ | 61/100 [00:00<00:00, 2994.00 it/sec]
INFO - 02:42:55: 62%|██████▏ | 62/100 [00:00<00:00, 2987.84 it/sec]
INFO - 02:42:55: 63%|██████▎ | 63/100 [00:00<00:00, 2985.10 it/sec]
INFO - 02:42:55: 64%|██████▍ | 64/100 [00:00<00:00, 2983.81 it/sec]
INFO - 02:42:55: 65%|██████▌ | 65/100 [00:00<00:00, 2985.63 it/sec]
INFO - 02:42:55: 66%|██████▌ | 66/100 [00:00<00:00, 2987.78 it/sec]
INFO - 02:42:55: 67%|██████▋ | 67/100 [00:00<00:00, 2990.58 it/sec]
INFO - 02:42:55: 68%|██████▊ | 68/100 [00:00<00:00, 2989.49 it/sec]
INFO - 02:42:55: 69%|██████▉ | 69/100 [00:00<00:00, 2992.43 it/sec]
INFO - 02:42:55: 70%|███████ | 70/100 [00:00<00:00, 2995.23 it/sec]
INFO - 02:42:55: 71%|███████ | 71/100 [00:00<00:00, 2993.16 it/sec]
INFO - 02:42:55: 72%|███████▏ | 72/100 [00:00<00:00, 2994.18 it/sec]
INFO - 02:42:55: 73%|███████▎ | 73/100 [00:00<00:00, 2996.25 it/sec]
INFO - 02:42:55: 74%|███████▍ | 74/100 [00:00<00:00, 2995.76 it/sec]
INFO - 02:42:55: 75%|███████▌ | 75/100 [00:00<00:00, 2998.76 it/sec]
INFO - 02:42:55: 76%|███████▌ | 76/100 [00:00<00:00, 3002.20 it/sec]
INFO - 02:42:55: 77%|███████▋ | 77/100 [00:00<00:00, 3002.59 it/sec]
INFO - 02:42:55: 78%|███████▊ | 78/100 [00:00<00:00, 3004.41 it/sec]
INFO - 02:42:55: 79%|███████▉ | 79/100 [00:00<00:00, 3006.72 it/sec]
INFO - 02:42:55: 80%|████████ | 80/100 [00:00<00:00, 3006.70 it/sec]
INFO - 02:42:55: 81%|████████ | 81/100 [00:00<00:00, 3008.80 it/sec]
INFO - 02:42:55: 82%|████████▏ | 82/100 [00:00<00:00, 3011.30 it/sec]
INFO - 02:42:55: 83%|████████▎ | 83/100 [00:00<00:00, 3011.48 it/sec]
INFO - 02:42:55: 84%|████████▍ | 84/100 [00:00<00:00, 3012.25 it/sec]
INFO - 02:42:55: 85%|████████▌ | 85/100 [00:00<00:00, 3014.63 it/sec]
INFO - 02:42:55: 86%|████████▌ | 86/100 [00:00<00:00, 3014.66 it/sec]
INFO - 02:42:55: 87%|████████▋ | 87/100 [00:00<00:00, 3015.17 it/sec]
INFO - 02:42:55: 88%|████████▊ | 88/100 [00:00<00:00, 3016.97 it/sec]
INFO - 02:42:55: 89%|████████▉ | 89/100 [00:00<00:00, 3016.92 it/sec]
INFO - 02:42:55: 90%|█████████ | 90/100 [00:00<00:00, 3014.23 it/sec]
INFO - 02:42:55: 91%|█████████ | 91/100 [00:00<00:00, 3016.01 it/sec]
INFO - 02:42:55: 92%|█████████▏| 92/100 [00:00<00:00, 3016.16 it/sec]
INFO - 02:42:55: 93%|█████████▎| 93/100 [00:00<00:00, 3014.78 it/sec]
INFO - 02:42:55: 94%|█████████▍| 94/100 [00:00<00:00, 3014.35 it/sec]
INFO - 02:42:55: 95%|█████████▌| 95/100 [00:00<00:00, 3001.60 it/sec]
INFO - 02:42:55: 96%|█████████▌| 96/100 [00:00<00:00, 3000.82 it/sec]
INFO - 02:42:55: 97%|█████████▋| 97/100 [00:00<00:00, 3002.48 it/sec]
INFO - 02:42:55: 98%|█████████▊| 98/100 [00:00<00:00, 3002.01 it/sec]
INFO - 02:42:55: 99%|█████████▉| 99/100 [00:00<00:00, 3002.69 it/sec]
INFO - 02:42:55: 100%|██████████| 100/100 [00:00<00:00, 3004.17 it/sec]
INFO - 02:42:55: *** End Sampling execution (time: 0:00:00.044720) ***
Total running time of the script: (0 minutes 0.470 seconds)