-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
I tried to quickly add documentation for MCMC sampling and realised it is currently pretty convoluted.
I would like to refactor so that the user can do something like this:
from functools import partial
from jax import numpy as jnp
from enzax.examples import methionine
from enzax.mcmc import run_nuts
from enzax.statistical_modelling import (
ObservationSet,
prior_from_truth,
enzax_default_log_density
)
obs = ObservationSet(
conc={"met-L": 0.01},
flux={"AHC1": 0.5},
enzyme={"MS1": 1.6},
conc_error_sd=0.1,
flux_error_sd=0.2,
enzyme_error_sd={"MS1": 0.15}
)
fixed_parameters = {“temperature”: jnp.array(310.0)}
prior_mean, prior_sd = prior_from_truth(methionine.parameters, sd=0.1)
posterior = partial(
enzax_default_log_density,
fixed_parameters=fixed_parameters,
obs=obs,
prior_mean=prior_mean,
prior_sd=prior_sd,
)
samples, info = run_nuts(posterior)I think that is basically the most minimal it could be
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels