infobs.sampling package

Submodules

infobs.sampling.mixtures module

class infobs.sampling.mixtures.Mixture(samplers: List[Sampler], weights: List[float] | None = None)[source]

Bases: Sampler

mixture of probability distributions. To sample a value from this distribution: 1) select which probability distribution to use (each probability distribution has a weight that determines its selection probability) 2) draw a value from the selected probability distribution

Uniform
samplersList[Sampler]

list of probability distributions that are mixed

weightsOptional[List[float]], optional

selection probabilities for each sampler (if None, uniform selection probabilities are considered), by default None

get(n: int) ndarray[source]

samples from the considered sampler

Parameters:

n (int) – number of samples to draw

Returns:

sampled physical parameter values

Return type:

np.ndarray of shape (n,)

infobs.sampling.samplers module

class infobs.sampling.samplers.BoundedPowerLaw(alpha: float, lower: float, upper: float | None = None)[source]

Bases: Sampler

bounded power law distribution on a possible open-ended interval

Parameters:
  • alpha (float) – exponent value of the power law distribution

  • lower (float) – lower bound of the bounded power law distribution

  • upper (Optional[float], optional) – upper bound of the bounded power law distribution, by default None

copy_other_bounds(lower: float, upper: float | None = None)[source]
get(n: int) ndarray[source]

samples from the considered sampler

Parameters:

n (int) – number of samples to draw

Returns:

sampled physical parameter values

Return type:

np.ndarray of shape (n,)

class infobs.sampling.samplers.Constant(value: float)[source]

Bases: Sampler

simplest possible probability distribution: a Dirac at a given value

Parameters:

value (float) – considered constant value for the physical parameter

copy_other_bounds(value: float)[source]
get(n: int) ndarray[source]

samples from the considered sampler

Parameters:

n (int) – number of samples to draw

Returns:

sampled physical parameter values

Return type:

np.ndarray of shape (n,)

class infobs.sampling.samplers.LogUniform(lower: float, upper: float | None = None, base: float = 10.0)[source]

Bases: Sampler

log-uniform distribution on a possible open-ended interval

Parameters:
  • lower (float) – lower bound of the log-uniform distribution

  • upper (Optional[float], optional) – upper bound of the log-uniform distribution, by default None

  • base (float, optional) – logarithm base, by default 10.

copy_other_bounds(lower: float, upper: float | None = None)[source]
get(n: int) ndarray[source]

samples from the considered sampler

Parameters:

n (int) – number of samples to draw

Returns:

sampled physical parameter values

Return type:

np.ndarray of shape (n,)

class infobs.sampling.samplers.Sampler[source]

Bases: ABC

abstract sampler class

abstract get(n: int) ndarray[source]

samples from the considered sampler

Parameters:

n (int) – number of samples to draw

Returns:

sampled physical parameter values

Return type:

np.ndarray of shape (n,)

class infobs.sampling.samplers.Uniform(lower: float, upper: float | None = None)[source]

Bases: Sampler

uniform distribution on a possible open-ended interval

Parameters:
  • lower (float) – lower bound of the uniform distribution

  • upper (Optional[float], optional) – upper bound of the uniform distribution, by default None

copy_other_bounds(lower: float, upper: float | None = None)[source]
get(n: int) ndarray[source]

samples from the considered sampler

Parameters:

n (int) – number of samples to draw

Returns:

sampled physical parameter values

Return type:

np.ndarray of shape (n,)

Module contents