Context

Context in appletree is like a run manager. It takes registered Likelihood together with prior from parameters, and sends to MCMC ensemble sampler.

class appletree.Context(instruct, par_config=None)[source]

Bases: object

Combine all likelihood (e.g. Rn220, Ar37), handle MCMC and post-fitting analysis.

__getitem__(keys)[source]

Get likelihood in context.

__init__(instruct, par_config=None)[source]

Create an appletree context.

Parameters

instruct – dict or str, instruct file name or dictionary.

_dump_meta(batch_size, metadata=None)[source]

Save parameters name as attributes.

_sanity_check()[source]

Check if needed parameters are provided.

continue_fitting(context=None, iteration=500, batch_size=1000000, moves=None)[source]

Continue a fitting of another context.

Parameters
  • context – appletree context.

  • iteration – int, number of steps to generate.

dump_post_parameters(file_name)[source]

Dump max posterior parameter in .json file.

fitting(nwalkers=200, iteration=500, batch_size=1000000, moves=None)[source]

Fitting posterior distribution of needed parameters.

Parameters
  • nwalkers – int, number of walkers in the ensemble.

  • iteration – int, number of steps to generate.

classmethod from_backend(backend_h5_file_name, moves=None)[source]

Initialize context from a backend_h5 file.

get_all_post_parameters(**kwargs)[source]

Return all posterior parameters.

get_num_events_accepted(parameters, batch_size=1000000)[source]

Get number of events in the histogram under given parameters.

Parameters
  • batch_size – int of number of simulated events.

  • parameters – dict of parameters used in simulation.

get_parameter_config(par_config)[source]

Get configuration for parameter manager.

Parameters

par_config – str, parameters configuration file.

get_post_parameters(which='mpe')[source]

Get parameters from the backend.

Parameters
  • which – str, ‘mpe’, ‘random’ or ‘median’. ‘mpe’ is the maximum posterior estimate,

  • a (i.e. the parameter set with the highest posterior value. 'random' returns) –

  • medians. (random parameter set from the posterior distribution. 'median' is the marginal) –

get_template(likelihood_name: str, component_name: str, batch_size: int = 1000000, seed: Optional[int] = None)[source]

Get parameters correspondes to max posterior.

Parameters
  • likelihood_name – name of Likelihood.

  • component_name – name of Component.

  • batch_size – int of number of simulated events.

  • seed – random seed.

property lineage
property lineage_hash
log_posterior(parameters, batch_size=1000000)[source]

Get log likelihood of given parameters.

Parameters
  • batch_size – int of number of simulated events.

  • parameters – dict of parameters used in simulation.

pre_fitting(nwalkers=100, read_only=True, reset=False, batch_size=1000000, moves=None)[source]

Prepare for fitting, initialize backend and sampler.

print_context_summary(short=True)[source]

Print summary of the context.

register_all_likelihood(config)[source]

Create all appletree likelihoods.

Parameters

config – dict, configuration file name or dictionary.

register_component(likelihood_name, component_cls, component_name, file_name=None)[source]

Register component to likelihood.

Parameters
  • likelihood_name – name of Likelihood.

  • component_cls – class of Component.

  • component_name – name of Component.

register_likelihood(likelihood_name, likelihood_config)[source]

Create an appletree likelihood.

Parameters
  • likelihood_name – name of Likelihood.

  • likelihood_config – dict of likelihood configuration.

update_parameter_config(likelihoods)[source]
update_url_base(url_base)[source]

Update url_base in appletree.share.

See also