Parameters

Contents

Parameters#

Parameter#

Represents a single nested-sampling parameter with its prior, kind, and scope.

class ForMoSA.parameter.parameter.Parameter(name, prior, kind, scope='global', obs_index=None, title=None, vsini_function=None, logger=None, log_level='INFO')[source]#

Bases: object

ForMoSA Parameter class. Handles a single parameter for the nested sampling algorithm.

Parameters:
  • name (str) – Name of the parameter (‘par1’, ‘par2’, ‘rv’, ‘d’, …)

  • prior (Prior) – Prior object associated with the parameter (UniformPrior, GaussianPrior, ConstantPrior, LogUniformPrior)

  • kind (ParameterKind) – Type of parameter used to identify the parameter

  • scope (str) – ‘global’ if this is a global parameter or ‘local’ if it is applied to specific observations

  • obs_index (list[int] | None) – Index of the obervation the parameter is applied to (None if scope is ‘global’)

  • title (str | None) – Title of the parameter (used to connect grid parameters to their associated title)

  • vsini_function (VsiniFunction | None) – Vsini function used for the prior (required if name starts with ‘vsini’)

  • logger (Logger | None) – Logger

  • log_level (str) – Level of the Logger

Notes

Authors: Allan Denis

property logger: Logger#

Logger.

property name: str#

Name of the parameter.

property kind: ParameterKind#

Parameter type.

property scope: str#

Scope (‘global’ or ‘local’).

property is_local: bool#

Whether the parameter is local.

property title: str#

Title.

property obs_index: list[int] | None#

Index of the observation the parameter is applied to.

property prior: Prior#

Prior object associated with the parameter.

property vsini_function: str#

Vsini function used for the prior.

property is_fixed: bool#

Whether the parameter is fixed (constant prior) or free.

property to_dict: dict#

Dictionary representation of the parameter.

classmethod from_dict(data, logger=None, log_level='INFO')[source]#

Reconstruct a Parameter from a dictionary of Parameter.

Parameters:
  • data (dict) – Dictionary containing parameter parameters

  • logger (Logger | None) – Logger

  • log_level (str) – Level of the Logger

Return type:

Parameter

Returns:

Parameter – An instance of class Parameter

Notes

Authors: Allan Denis

Parameter Set#

Container for the full set of parameters explored during nested sampling.

class ForMoSA.parameter.parameter_set.ParameterSet(logger=None, log_level='INFO')[source]#

Bases: object

Container for nested sampling parameters.

Parameters:
  • logger (Logger | None) – Logger

  • log_level (str) – Level of the logging

Notes

Authors: Allan Denis

property logger: Logger#

Logger.

property parameters: list[Parameter]#

List of parameters.

property free_parameters: list[Parameter]#

list of free parameters.

property fixed_parameters: list[Parameter]#

list of fixed parameters.

property names: list[str]#

list of parameter names.

property free_names: list[str]#

list of parameter names.

property titles: list[str]#

List of titles.

property free_titles: list[str]#

List of titles.

property kinds: list[ParameterKind]#

list of parameter kinds.

property n_free_parameters: int#

Number of free parameters.

property to_dict: dict#

Dictionary representation of the set of parameters.

classmethod from_config(config_params, logger=None, log_level='INFO')[source]#

Generate instance of ParameterSet from an instance of ConfigParameters.

Parameters:
Return type:

ParameterSet

Returns:

“ParameterSet” – As instance of ParameterSet

Notes

Authors: Allan Denis

classmethod from_dict(data, logger=None, log_level='INFO')[source]#

Reconstruct a ParameterSet from a dictionary of ParameterSet.

Parameters:
  • data (dict) – Dictionary containing ParameterSet parameters

  • logger (Logger | None) – Logger

  • log_level (str) – Level of the logging

Return type:

ParameterSet

Returns:

‘ParameterSet’ – An instance of class ParameterSet

Notes

Authors: Allan Denis

classmethod from_json(path, logger=None, log_level='INFO')[source]#

Reconstruct a ParameterSet from a json file.

Parameters:
  • path (str | PathLike) – Path to the json file

  • logger (Logger | None) – Logger

  • log_level (str) – Level of the logging

Return type:

ParameterSet

Returns:

‘ParameterSet’ – An instance of class ParameterSet

Notes

Authors: Allan Denis

prior_transform(theta)[source]#

Transform a list/array theta in [0,1]^N into physical values using each free parameter prior.

Parameters:

theta (ndarray[float]) – list/array of floats in [0,1]^N where N is the number of free parameters

Return type:

list[float]

Returns:

list[float] (physical values in the same ordering as self.free_parameters)

Notes

Authors: Allan Denis

add_parameter(parameter)[source]#

Add a Parameter to the set.

Parameters:

parameter (Parameter) – Instance of class Parameter to add

Return type:

None

Notes

Authors: Allan Denis

summary(as_dataframe=True)[source]#

Return a summary of parameters.

Parameters:

as_dataframe (bool) – If True, return pandas.DataFrame, else formatted string

Return type:

DataFrame | str

Returns:

pandas.DataFrame | str – Summary of parameters

Notes

Authors: Allan Denis

to_json(path)[source]#

Save the set of parameters to a given path as a json file.

Parameters:

path (str | PathLike) – Path to save the set of parameters

Return type:

None

Notes

Authors: Allan Denis

Priors#

Prior distribution classes used to define parameter search ranges.

Inheritance diagram of ForMoSA.parameter.prior.UniformPrior, ForMoSA.parameter.prior.LogUniformPrior, ForMoSA.parameter.prior.ConstantPrior, ForMoSA.parameter.prior.GaussianPrior
class ForMoSA.parameter.prior.Prior(logger=None, log_level='INFO')[source]#

Bases: ABC

Abstract base class for prior distributions.

Notes

Authors: Allan Denis

Parameters:
property logger: Logger#

Logger.

property to_dict: dict#

Dictionary representation of the prior.

classmethod from_dict(data, logger=None, log_level='INFO')[source]#

Reconstruct a Prior from a dictionary of Prior.

Parameters:
  • data (dict) – Dictionary containing prior parameters

  • logger (Logger | None) – Logger

  • log_level (str) – Level of the Logger

Return type:

Prior

Returns:

Prior – An instance of Prior

Notes

Authors: Allan Denis

abstractmethod sample(theta)[source]#

Sample from the prior distribution.

Parameters:

theta (float) – A value between 0 and 1 to sample from the prior

Return type:

float

Returns:

float – Sampled value from the prior distribution

Notes

Authors: Allan Denis

abstract property is_fixed: bool#

Whether the prior is fixed.

abstract property prior_type: PriorType#

Type of prior.

parse_prior(prior_type, params, logger=None, log_level='INFO')[source]#

Parse prior parameters into corresponding prior object.

Parameters:
  • prior_type (PriorType) – Type of the prior

  • params (dict) – Dictionary of prior parameters

  • logger (Logger | None) – Logger

  • log_level (str) – Level of the Logger

Return type:

Prior

Returns:

Prior – Prior object corresponding to the specified type and parameters

Examples

>>> Prior = Prior.parse_prior(prior_type, params)

Notes

Authors: Allan Denis

class ForMoSA.parameter.prior.UniformPrior(lower, upper, logger=None, log_level='INFO')[source]#

Bases: Prior

Class defining a Uniform prior.

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

  • upper (float) – Upper bound of the uniform prior

  • logger (Logger | None) – Logger

  • log_level (str) – Level of the Logger

Notes

Authors: Allan Denis

property lower: float#

Lower bound of the uniform prior.

property upper: float#

Upper bound of the uniform prior.

property bounds: list#

Bounds of the uniform prior.

property prior_type: PriorType#

Type of prior.

property is_fixed: bool#

Whether the prior is fixed.

sample(theta)[source]#

Sample from uniform prior and theta value.

Parameters:

theta (float) – theta value between 0 and 1

Return type:

float

Returns:

float – Sampled value

get_params_dict()[source]#

Return a dictionary representation of the uniform prior.

Return type:

dict

Returns:

dict – Dictionary of the parameter

Notes

Authors: Allan Denis

class ForMoSA.parameter.prior.LogUniformPrior(lower, upper, logger=None, log_level='INFO')[source]#

Bases: Prior

Class defining a Log-Uniform prior.

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

  • upper (float) – Upper bound of the log-uniform prior

  • logger (Logger | None) – Logger

  • log_level (str) – Level of the Logger

Notes

Authors: Allan Denis

property lower: float#

Lower bound of the log-uniform prior.

property upper: float#

Upper bound of the log-uniform prior.

property bounds: list#

Bounds of the log-uniform prior.

property prior_type: PriorType#

Type of prior.

property is_fixed: bool#

Whether the prior is fixed.

sample(theta)[source]#

Sample from loguniform prior and theta value.

Parameters:

theta (float) – theta value between 0 and 1

Return type:

float

Returns:

float – Sampled value

get_params_dict()[source]#

Return a dictionary representation of the loguniform prior.

Return type:

dict

Returns:

dict – Dictionary of the parameter

Notes

Authors: Allan Denis

class ForMoSA.parameter.prior.ConstantPrior(value, logger=None, log_level='INFO')[source]#

Bases: Prior

Class defining a Constant prior.

Parameters:
  • value (float) – Constant value of the prior

  • logger (Logger | None) – Logger

  • log_level (str) – Level of the Logger

Notes

Authors: Allan Denis

property value: float#

Constant value of the prior.

property prior_type: PriorType#

Type of prior.

property is_fixed: bool#

Whether the prior is fixed.

property bounds: float#

Bounds of the constant prior.

sample(theta)[source]#

Sample from constant prior and theta value.

Parameters:

theta (float) – theta value between 0 and 1

Return type:

float

Returns:

float – Sampled value

get_params_dict()[source]#

Return a dictionary representation of the uniform prior.

Return type:

dict

Returns:

dict – Dictionary of the parameter

Notes

Authors: Allan Denis

class ForMoSA.parameter.prior.GaussianPrior(mean, stddev, logger=None, log_level='INFO')[source]#

Bases: Prior

Class defining a Gaussian prior.

Parameters:
  • mean (float) – Mean of the Gaussian prior

  • stddev (float) – Standard deviation of the Gaussian prior

  • logger (Logger | None) – Logger

  • log_level (str) – Level of the Logger

Notes

Authors: Allan Denis

property mean: float#

Mean of the Gaussian prior.

property stddev: float#

Standard deviation of the Gaussian prior.

property prior_type: PriorType#

Type of prior.

property is_fixed: bool#

Whether the prior is fixed.

property bounds: tuple[float, float]#

Bounds of the Gaussian prior (mean, stddev).

sample(theta)[source]#

Sample from gaussian prior and theta value.

Parameters:

theta (float) – theta value between 0 and 1

Return type:

float

Returns:

float – Samples value

get_params_dict()[source]#

Return a dictionary representation of the uniform prior.

Return type:

dict

Returns:

dict – Dictionary of the parameter

Notes

Authors: Allan Denis