datamod.sampling module

This is the sampling module.

This module provides sampling methods.

datamod.sampling.adaptive_methods

Exploration and exploitation criteria for adaptive sampling methods.

Type:dict
datamod.sampling.sample_bounds

Sampling range.

Type:tuple
datamod.sampling.samplings

Defined sampling classes.

Type:dict
class datamod.sampling.Halton(**kwargs)

Bases: smt.sampling_methods.sampling_method.SamplingMethod

Halton sampling.

References

https://gist.github.com/tupui/cea0a91cc127ea3890ac0f002f887bae

datamod.sampling.determine_samples(no_samples, dim_in)

Determine the number of new samples.

Parameters:
  • dim_in (int) – Number of input dimensions.
  • no_samples (int) – number of current samples.
Returns:

Number of new samples.

Return type:

new_samples (int)

datamod.sampling.resample_adaptive(points_new, surrogates, data, range_in, iteration)

Determine the coordinates of the new samples using an adaptive DoE.

Parameters:
  • points_new (int) – Number of new samples.
  • range_in (np.array) – Range of input variables.
  • surrogates (list) – Surrogates from cross-validation.
  • data (datamod.get_data) – Training samples.
  • range_in – Range of input variables.
  • iteration (int) – Iteration number.
Returns:

Coordinates of the new samples.

Return type:

coordinates (np.array)

datamod.sampling.resample_static(points_new, points_now, range_in)

Determine the coordinates of the new samples using a static DoE.

Parameters:
  • points_new (int) – Number of new samples.
  • points_now (int) – number of current samples.
  • range_in (np.array) – Range of input variables.
Returns:

Coordinates of the new samples.

Return type:

coordinates (np.array)

datamod.sampling.response_grid(density, inputs, ranges)

Returns a grid of samples with the desired ranges.

Parameters:
  • density (int) – Density of the samples plot.
  • inputs (list) – Input dimensions to plot.
  • ranges (np.array) – Range of input variables.
Returns:

Grid samples.

Return type:

sample_desired (np.array)

datamod.sampling.sample(name, points, n_dim)

Sampling on a unit hypercube - typically [-1,1], using a selected DoE.

Parameters:
  • name (str) – Sampling strategy.
  • points (int) – Number of requested samples.
  • n_dim (int) – Number of input dimensions.
Returns:

New samples.

Return type:

samples (np.array)

Raises:

NameError – if the sampling is not defined.

Notes

Grid actually doesn’t make full grid.

datamod.sampling.sample_adaptive(data, samples, predictions, no_points_new, iteration)

Sampling using an adaptive DoE.

Parameters:
  • data (datamod.get_data) – Training samples.
  • samples (np.array) – Proposed samples.
  • predictions (np.array) – Predictions of the surrogates from cross-validation.
  • no_points_new (int) – Number of new samples.
  • iteration (int) – Iteration number.
Returns:

Normalized coordinates of the new samples.

Return type:

candidates (np.array)

datamod.sampling.scale_samples(range_in, samples)

Scales the samples to the desired range.

Parameters:
  • range_in (np.array) – Range of input variables.
  • samples (np.array) – Samples to be scaled.
Returns:

Coordinates of the new samples.

Return type:

coordinates (np.array)