Samplers

Sampler interface

class gefest.tools.samplers.sampler.Sampler(samples_generator: Callable[[Any], Structure], domain: Domain)[source]

Bases: object

Interface for samplers.

__call__(n_samples: int, **kwargs) list[Structure][source]

Simplifies usage of samplers.

Parameters:

n_samples (int) – Number of samples to generate.

Returns:

Generated samples.

Return type:

list[Structure]

abstract sample(n_samples: int) list[Structure][source]

Must implement sampling logic.

Parameters:

n_samples (int) – Number of samples to generate.

Returns:

Generated samples.

Return type:

list[Structure]

Standard sampler

class gefest.tools.samplers.standard.standard.StandardSampler(opt_params: OptimizationParams)[source]

Bases: Sampler

Generator of random structures.

The get_random_structure utility is used for structure generation. The generated samples satisfy the domain configuration.

__call__(n_samples: int) list[Structure][source]

Calls sample method.

sample(n_samples: int) list[Structure][source]

Generates requested number of random samples.

Parameters:

n_samples (int) – Number of samples to generate.

Returns:

Generated samples.

Return type:

list[Structure]