pypomp.functional.abc¶
- pypomp.functional.abc(struct: PompStruct, thetas_array: Array, proposal: Any, dprior: Callable, probe_fn: Callable, obs_probes: Array, scale_arr: Array, epsilon: float, ydim: int, M: int, keys: Array) tuple[Array, Array, Array, Array][source]¶
Functional ABC-MCMC entry point.
- Parameters:
struct (PompStruct) – Compiled POMP model (see
PompStruct). Requiresstruct.rmeas_pfto be non-None.thetas_array (jax.Array) – Starting parameter vectors, shape
(n_chains, d).proposal – Proposal object (see
pypomp.proposals).dprior (Callable) – Pure-JAX log-prior,
dprior(theta_arr) -> scalar.probe_fn (Callable) – Pure-JAX probe function,
probe_fn(y_arr) -> (n_probes,)wherey_arrhas shape(n_obs, ydim).obs_probes (jax.Array) – Observed probes, shape
(n_probes,).scale_arr (jax.Array) – Per-probe scale, shape
(n_probes,).epsilon (float) – ABC distance threshold (acceptance requires
distance < epsilon**2).ydim (int) – Observation dimensionality (static).
M (int) – Number of MCMC iterations per chain.
keys (jax.Array) – PRNG keys, shape
(n_chains, ...).
- Returns:
(distance_traces, log_prior_traces, theta_traces, accepts)with shapes(n_chains, M + 1),(n_chains, M + 1),(n_chains, M + 1, d),(n_chains,)respectively.- Return type: