Sampling

gsa_framework.sampling.get_samples.custom_rescaled_samples(X_rescaled)

Wrapper function to return custom sampling matrix if it is specified by the user, values are in rescaled range.

gsa_framework.sampling.get_samples.custom_unitcube_samples(X_unitcube)

Wrapper function to return custom sampling matrix if it is specified by the user, values are in [0,1] range.

gsa_framework.sampling.get_samples.eFAST_samples(iterations, num_params, M=4, seed=None, cpus=None)

Extended FAST samples in [0,1] range.

Parameters
  • iterations (int) – Number of iterations.

  • num_params (int) – Number of model inputs.

  • M (int) – Interference factor, usually 4 or higher.

  • seed (int) – Random seed.

  • cpus (int) – Number of cpus for parallel computation of eFAST samples with multiprocessing library.

Returns

samples – eFAST samples of size iterations x num_params.

Return type

array

References

Paper:

Saltelli, Tarantola, and Chan [STC99]

Link to the original implementation:

https://github.com/SALib/SALib/blob/master/src/SALib/sample/fast_sampler.py

gsa_framework.sampling.get_samples.latin_hypercube_samples(iterations, num_params, seed=None)

Latin hypercube samples in [0,1] range.

Parameters
  • iterations (int) – Number of iterations.

  • num_params (int) – Number of model inputs.

  • seed (int) – Random seed.

Returns

samples – Randomly generated latin hypercube samples of size iterations x num_params.

Return type

array

gsa_framework.sampling.get_samples.random_samples(iterations, num_params, seed=None)

Random standard uniform sampling for all iterations and parameters with an option of fixing random seed.

Parameters
  • iterations (int) – Number of iterations.

  • num_params (int) – Number of model inputs.

  • seed (int) – Random seed.

Returns

samples – Randomly generated samples of size iterations x num_params.

Return type

array

gsa_framework.sampling.get_samples.saltelli_samples(iterations, num_params, skip_iterations=1000)

Saltelli samples in [0,1] range based on Sobol sequences and radial sampling.

Parameters
  • iterations (int) – Number of iterations.

  • num_params (int) – Number of model inputs.

  • skip_iterations (int) – Number of first Sobol sequence samples to skip.

Returns

samples – Saltelli samples of size iterations_per_parameter (num_params + 2) x num_params, where iterations_per_parameter = iterations // (num_params + 2).

Return type

array

References

Paper:

Saltelli, Annoni, Azzini, Campolongo, Ratto, and Tarantola [SAA+10]

Link to the original implementation:

https://github.com/SALib/SALib/blob/master/src/SALib/sample/saltelli.py

gsa_framework.sampling.get_samples.sobol_samples(iterations, num_params, skip_iterations=1000)

Quasi-random Sobol sequence in [0,1] range that skips first skip_iterations samples to avoid boundary values.

Parameters
  • iterations (int) – Number of iterations.

  • num_params (int) – Number of model inputs.

  • skip_iterations (int) – Number of first Sobol sequence samples to skip.

Returns

samples – Sobol samples of size iterations x num_params.

Return type

array