gemlib.mcmc.SamplingAlgorithm

gemlib.mcmc.SamplingAlgorithm#

class gemlib.mcmc.SamplingAlgorithm(init_fn, step_fn)#

Represent a sampling algorithm

__init__(init_fn, step_fn)#

Create a new sampling algorithm

Parameters:
  • init_fn (Callable[[Callable[[NamedTuple], float], NamedTuple], ChainAndKernelState] | KernelInitMonad) – the kernel initialisation function

  • step_fn (Callable[[Callable[[NamedTuple], float], ChainAndKernelState, tuple[int, int]], tuple[ChainAndKernelState, NamedTuple]] | KernelStepMonad) – the kernel step function

Methods

__init__(init_fn, step_fn)

Create a new sampling algorithm

init(*args, **kwargs)

Initialize and MCMC chain

step(*args, **kwargs)

Function to invoke the MCMC kernel

then(next_kernel)

Sequential combinator