autofit.LogGaussianPrior#
- class autofit.LogGaussianPrior(mean: float, sigma: float, lower_limit: float = 0.0, upper_limit: float = inf, id_=None)[source]#
Bases:
Prior
A prior with a log base 10 uniform distribution, defined between a lower limit and upper limit.
The conversion of an input unit value,
u
, to a physical value,p
, via the prior is as follows:\[p = \mu + (\sigma * sqrt(2) * erfcinv(2.0 * (1.0 - u))\]For example for
prior = LogGaussianPrior(mean=1.0, sigma=2.0)
, an inputprior.value_for(unit=0.5)
is equal to 1.0.[Rich describe how this is done via message]
- Parameters:
mean – The mean of the Gaussian distribution defining the prior.
sigma – The sigma value of the Gaussian distribution defining the prior.
lower_limit – A lower limit of the Gaussian distribution; physical values below this value are rejected.
upper_limit – A upper limit of the Gaussian distribution; physical values below this value are rejected.
Examples
prior = af.LogGaussianPrior(mean=1.0, sigma=2.0, lower_limit=0.0, upper_limit=2.0)
physical_value = prior.value_for(unit=0.5)
Methods
assert_within_limits
dict
A dictionary representation of this prior
for_class_and_attribute_name
from_dict
Returns a prior from a JSON representation.
gaussian_prior_model_for_arguments
has
Does this instance have an attribute which is of type cls?
instance_for_arguments
make_indexes
name_of_class
A string name for the class, with the prior suffix removed.
new
Returns a copy of this prior with a new id assigned making it distinct
next_id
project
random
A random value sampled from this prior
replacing_for_path
Create a new model replacing the value for a given path with a new value
unit_value_for
Compute the unit value between 0 and 1 for the physical value.
Return a physical value for a value between 0 and 1 with the transformation described by this prior.
with_limits
Create a new instance of the same prior class with the passed limits.
with_message
Attributes
component_number
factor
A callable PDF used as a factor in factor graphs
identifier
label
limits
lower_unit_limit
The lower limit for this prior in unit vector space
ndim
How many dimensions does this variable have?
parameter_string
upper_unit_limit
The upper limit for this prior in unit vector space
width
- value_for(unit: float, ignore_prior_limits: bool = False) float [source]#
Return a physical value for a value between 0 and 1 with the transformation described by this prior.
- Parameters:
unit – A unit value between 0 and 1.
- Return type:
A physical value, mapped from the unit value accoridng to the prior.