bilby.core.prior.analytical.WeightedDiscreteValues

class bilby.core.prior.analytical.WeightedDiscreteValues(values, weights=None, name=None, latex_label=None, unit=None, boundary='periodic')[source]

Bases: Prior

__init__(values, weights=None, name=None, latex_label=None, unit=None, boundary='periodic')[source]

A weighted discrete-valued prior

Parameters:
values: 1d array_like of numeric type

The discrete values of the prior.

weights: 1d array_like of numeric type or None

The weights of each category. If None, then all values are equally weighted. Default: None.

name: str

The name of the parameter

latex_label: str

The latex label of the parameter. Used for plotting.

unit: str

The unit of the parameter. Used for plotting.

__call__()[source]

Overrides the __call__ special method. Calls the sample method.

Returns:
float: The return value of the sample method.

Methods

__init__(values[, weights, name, ...])

A weighted discrete-valued prior

cdf(val)

Return the cumulative prior probability of val.

from_json(dct)

from_repr(string)

Generate the prior from its __repr__

get_instantiation_dict()

is_in_prior_range(val)

Returns True if val is in the prior boundaries, zero otherwise

ln_prob(val)

Return the logarithmic prior probability of val

prob(val)

Return the prior probability of val.

rescale(val)

'Rescale' a sample from the unit line element to the discrete-value prior.

sample([size])

Draw a sample from the prior

to_json()

Attributes

boundary

is_fixed

Returns True if the prior is fixed and should not be used in the sampler.

latex_label

Latex label that can be used for plots.

latex_label_with_unit

If a unit is specified, returns a string of the latex label and unit

maximum

minimum

unit

width

cdf(val)[source]

Return the cumulative prior probability of val.

Parameters:
val: Union[float, int, array_like]
Returns:
float: cumulative prior probability of val
classmethod from_repr(string)[source]

Generate the prior from its __repr__

property is_fixed

Returns True if the prior is fixed and should not be used in the sampler. Does this by checking if this instance is an instance of DeltaFunction.

Returns:
bool: Whether it’s fixed or not!
is_in_prior_range(val)[source]

Returns True if val is in the prior boundaries, zero otherwise

Parameters:
val: Union[float, int, array_like]
Returns:
np.nan
property latex_label

Latex label that can be used for plots.

Draws from a set of default labels if no label is given

Returns:
str: A latex representation for this prior
property latex_label_with_unit

If a unit is specified, returns a string of the latex label and unit

ln_prob(val)[source]

Return the logarithmic prior probability of val

Parameters:
val: Union[float, int, array_like]
Returns:
float:
prob(val)[source]

Return the prior probability of val.

Parameters:
val: Union[float, int, array_like]
Returns:
float: Prior probability of val
rescale(val)[source]

‘Rescale’ a sample from the unit line element to the discrete-value prior.

This maps to the inverse CDF. This has been analytically solved for this case.

Parameters:
val: Union[float, int, array_like]

Uniform probability

Returns:
Union[float, array_like]: Rescaled probability
sample(size=None)[source]

Draw a sample from the prior

Parameters:
size: int or tuple of ints, optional

See numpy.random.uniform docs

Returns:
float: A random number between 0 and 1, rescaled to match the distribution of this Prior