Coverage report: 96%

Files Functions Classes

coverage.py v7.16.1, created at 2026-09-15 19:54 +0000

File function   statements missing excluded   coverage
gemlib/__init__.py (no function)   6 0 0   100%
gemlib/abc/__init__.py (no function)   2 0 0   100%
gemlib/abc/abc_rejection_sampler.py abc_rejection_sampler   4 0 0   100%
gemlib/abc/abc_rejection_sampler.py abc_rejection_sampler.fn   3 0 0   100%
gemlib/abc/abc_rejection_sampler.py (no function)   9 0 0   100%
gemlib/deterministic/__init__.py (no function)   2 0 0   100%
gemlib/deterministic/ode_model.py _total_flux   4 0 0   100%
gemlib/deterministic/ode_model.py ode_model   18 6 0   67%
gemlib/deterministic/ode_model.py ode_model.derivs   4 0 0   100%
gemlib/deterministic/ode_model.py (no function)   17 0 0   100%
gemlib/distributions/__init__.py (no function)   3 0 0   100%
gemlib/distributions/brownian.py BrownianMotion.__init__   8 0 0   100%
gemlib/distributions/brownian.py BrownianMotion._batch_shape   1 0 0   100%
gemlib/distributions/brownian.py BrownianMotion._event_shape   1 0 0   100%
gemlib/distributions/brownian.py BrownianMotion._sample_n   1 0 0   100%
gemlib/distributions/brownian.py BrownianMotion._log_prob   3 0 0   100%
gemlib/distributions/brownian.py BrownianBridge.__init__   9 0 0   100%
gemlib/distributions/brownian.py BrownianBridge._batch_shape   1 0 0   100%
gemlib/distributions/brownian.py BrownianBridge._event_shape   1 0 0   100%
gemlib/distributions/brownian.py BrownianBridge._sample_n   6 0 0   100%
gemlib/distributions/brownian.py BrownianBridge._log_prob   4 0 0   100%
gemlib/distributions/brownian.py (no function)   19 0 0   100%
gemlib/distributions/continuous_markov.py _one_hot_expand_state   3 0 0   100%
gemlib/distributions/continuous_markov.py _total_flux   4 0 0   100%
gemlib/distributions/continuous_markov.py compute_state   16 0 0   100%
gemlib/distributions/continuous_markov.py exponential_propogate   3 0 0   100%
gemlib/distributions/continuous_markov.py exponential_propogate.propogate_fn   9 0 0   100%
gemlib/distributions/continuous_markov.py continuous_markov_simulation   10 0 0   100%
gemlib/distributions/continuous_markov.py continuous_markov_simulation.cond   4 0 0   100%
gemlib/distributions/continuous_markov.py continuous_markov_simulation.body   5 0 0   100%
gemlib/distributions/continuous_markov.py continuous_time_log_likelihood   11 0 0   100%
gemlib/distributions/continuous_markov.py (no function)   22 0 0   100%
gemlib/distributions/continuous_time_state_transition_model.py ContinuousTimeStateTransitionModel.__init__   7 0 0   100%
gemlib/distributions/continuous_time_state_transition_model.py ContinuousTimeStateTransitionModel.transition_rate_fn   1 1 0   0%
gemlib/distributions/continuous_time_state_transition_model.py ContinuousTimeStateTransitionModel.incidence_matrix   1 0 0   100%
gemlib/distributions/continuous_time_state_transition_model.py ContinuousTimeStateTransitionModel.initial_state   1 0 0   100%
gemlib/distributions/continuous_time_state_transition_model.py ContinuousTimeStateTransitionModel.num_steps   1 0 0   100%
gemlib/distributions/continuous_time_state_transition_model.py ContinuousTimeStateTransitionModel.initial_time   1 0 0   100%
gemlib/distributions/continuous_time_state_transition_model.py ContinuousTimeStateTransitionModel.compute_state   1 1 0   0%
gemlib/distributions/continuous_time_state_transition_model.py ContinuousTimeStateTransitionModel._sample_n   5 0 0   100%
gemlib/distributions/continuous_time_state_transition_model.py ContinuousTimeStateTransitionModel._sample_n.one_sample   1 0 0   100%
gemlib/distributions/continuous_time_state_transition_model.py ContinuousTimeStateTransitionModel._log_prob   7 0 0   100%
gemlib/distributions/continuous_time_state_transition_model.py ContinuousTimeStateTransitionModel._log_prob.one_log_prob   1 0 0   100%
gemlib/distributions/continuous_time_state_transition_model.py ContinuousTimeStateTransitionModel._event_shape   1 0 0   100%
gemlib/distributions/continuous_time_state_transition_model.py ContinuousTimeStateTransitionModel._batch_shape   1 0 0   100%
gemlib/distributions/continuous_time_state_transition_model.py (no function)   32 0 0   100%
gemlib/distributions/discrete_markov.py _scatter_to_transition_matrix   5 0 0   100%
gemlib/distributions/discrete_markov.py _approx_expm   10 1 0   90%
gemlib/distributions/discrete_markov.py make_transition_prob_matrix_fn   3 0 0   100%
gemlib/distributions/discrete_markov.py make_transition_prob_matrix_fn.fn   4 0 0   100%
gemlib/distributions/discrete_markov.py _multinomial_log_prob   4 0 0   100%
gemlib/distributions/discrete_markov.py _multinomial_log_prob_fwd   4 0 0   100%
gemlib/distributions/discrete_markov.py _multinomial_log_prob_bwd   5 0 0   100%
gemlib/distributions/discrete_markov.py compute_state   8 0 0   100%
gemlib/distributions/discrete_markov.py chain_binomial_propagate   2 0 0   100%
gemlib/distributions/discrete_markov.py chain_binomial_propagate.propagate_fn   16 0 0   100%
gemlib/distributions/discrete_markov.py discrete_markov_simulation   9 0 0   100%
gemlib/distributions/discrete_markov.py discrete_markov_simulation.scan_fn   4 0 0   100%
gemlib/distributions/discrete_markov.py discrete_markov_log_prob   12 0 0   100%
gemlib/distributions/discrete_markov.py (no function)   21 0 0   100%
gemlib/distributions/discrete_time_state_transition_model.py DiscreteTimeStateTransitionModel.__init__   6 0 0   100%
gemlib/distributions/discrete_time_state_transition_model.py DiscreteTimeStateTransitionModel.transition_rate_fn   1 0 0   100%
gemlib/distributions/discrete_time_state_transition_model.py DiscreteTimeStateTransitionModel.incidence_matrix   1 0 0   100%
gemlib/distributions/discrete_time_state_transition_model.py DiscreteTimeStateTransitionModel.initial_state   1 0 0   100%
gemlib/distributions/discrete_time_state_transition_model.py DiscreteTimeStateTransitionModel.initial_step   1 0 0   100%
gemlib/distributions/discrete_time_state_transition_model.py DiscreteTimeStateTransitionModel.source_states   1 0 0   100%
gemlib/distributions/discrete_time_state_transition_model.py DiscreteTimeStateTransitionModel.time_delta   1 0 0   100%
gemlib/distributions/discrete_time_state_transition_model.py DiscreteTimeStateTransitionModel.num_steps   1 0 0   100%
gemlib/distributions/discrete_time_state_transition_model.py DiscreteTimeStateTransitionModel.num_units   1 1 0   0%
gemlib/distributions/discrete_time_state_transition_model.py DiscreteTimeStateTransitionModel.num_states   1 1 0   0%
gemlib/distributions/discrete_time_state_transition_model.py DiscreteTimeStateTransitionModel._batch_shape   1 0 0   100%
gemlib/distributions/discrete_time_state_transition_model.py DiscreteTimeStateTransitionModel._event_shape   2 0 0   100%
gemlib/distributions/discrete_time_state_transition_model.py DiscreteTimeStateTransitionModel.compute_state   1 0 0   100%
gemlib/distributions/discrete_time_state_transition_model.py DiscreteTimeStateTransitionModel.transition_prob_matrix   5 1 0   80%
gemlib/distributions/discrete_time_state_transition_model.py DiscreteTimeStateTransitionModel._sample_n   6 0 0   100%
gemlib/distributions/discrete_time_state_transition_model.py DiscreteTimeStateTransitionModel._sample_n.one_sample   2 0 0   100%
gemlib/distributions/discrete_time_state_transition_model.py DiscreteTimeStateTransitionModel._log_prob   6 0 0   100%
gemlib/distributions/discrete_time_state_transition_model.py DiscreteTimeStateTransitionModel._log_prob.one_log_prob   1 0 0   100%
gemlib/distributions/discrete_time_state_transition_model.py _compute_source_states   3 0 0   100%
gemlib/distributions/discrete_time_state_transition_model.py (no function)   42 0 0   100%
gemlib/distributions/hypergeometric.py _log_factorial   1 1 0   0%
gemlib/distributions/hypergeometric.py _log_choose   1 1 0   0%
gemlib/distributions/hypergeometric.py Hypergeometric.__init__   11 2 0   82%
gemlib/distributions/hypergeometric.py Hypergeometric._parameter_properties   1 0 0   100%
gemlib/distributions/hypergeometric.py Hypergeometric._param_shapes   1 1 0   0%
gemlib/distributions/hypergeometric.py Hypergeometric._params_event_ndims   1 1 0   0%
gemlib/distributions/hypergeometric.py Hypergeometric.N   1 0 0   100%
gemlib/distributions/hypergeometric.py Hypergeometric.K   1 0 0   100%
gemlib/distributions/hypergeometric.py Hypergeometric.n   1 0 0   100%
gemlib/distributions/hypergeometric.py Hypergeometric._default_event_space_bijector   1 1 0   0%
gemlib/distributions/hypergeometric.py Hypergeometric._event_shape_tensor   1 1 0   0%
gemlib/distributions/hypergeometric.py Hypergeometric._event_shape   1 0 0   100%
gemlib/distributions/hypergeometric.py Hypergeometric._sample_n   3 0 0   100%
gemlib/distributions/hypergeometric.py Hypergeometric._log_prob   3 3 0   0%
gemlib/distributions/hypergeometric.py Hypergeometric._mode   1 1 0   0%
gemlib/distributions/hypergeometric.py Hypergeometric._mean   1 0 0   100%
gemlib/distributions/hypergeometric.py Hypergeometric._variance   4 4 0   0%
gemlib/distributions/hypergeometric.py (no function)   31 0 0   100%
gemlib/distributions/hypergeometric_sampler.py sample_hypergeometric   32 0 0   100%
gemlib/distributions/hypergeometric_sampler.py sample_hypergeometric._log_hypergeometric_coeff   1 0 0   100%
gemlib/distributions/hypergeometric_sampler.py sample_hypergeometric.generate_and_test_samples   9 0 0   100%
gemlib/distributions/hypergeometric_sampler.py (no function)   9 0 0   100%
gemlib/distributions/kcategorical.py _log_choose   1 0 0   100%
gemlib/distributions/kcategorical.py UniformKCategorical.__init__   6 0 0   100%
gemlib/distributions/kcategorical.py UniformKCategorical._parameter_properties   1 1 0   0%
gemlib/distributions/kcategorical.py UniformKCategorical.k   1 1 0   0%
gemlib/distributions/kcategorical.py UniformKCategorical.mask   1 1 0   0%
gemlib/distributions/kcategorical.py UniformKCategorical._batch_shape   1 0 0   100%
gemlib/distributions/kcategorical.py UniformKCategorical._event_shape   1 0 0   100%
gemlib/distributions/kcategorical.py UniformKCategorical._sample_n   5 0 0   100%
gemlib/distributions/kcategorical.py UniformKCategorical._log_prob   2 0 0   100%
gemlib/distributions/kcategorical.py (no function)   18 0 0   100%
gemlib/distributions/uniform_integer.py UniformInteger.__init__   8 1 0   88%
gemlib/distributions/uniform_integer.py UniformInteger._parameter_properties   1 0 0   100%
gemlib/distributions/uniform_integer.py UniformInteger.low   1 0 0   100%
gemlib/distributions/uniform_integer.py UniformInteger.high   1 0 0   100%
gemlib/distributions/uniform_integer.py UniformInteger.float_dtype   1 0 0   100%
gemlib/distributions/uniform_integer.py UniformInteger._event_shape_tensor   1 1 0   0%
gemlib/distributions/uniform_integer.py UniformInteger._event_shape   1 0 0   100%
gemlib/distributions/uniform_integer.py UniformInteger._sample_n   6 0 0   100%
gemlib/distributions/uniform_integer.py UniformInteger._prob   4 0 0   100%
gemlib/distributions/uniform_integer.py UniformInteger._log_prob   1 0 0   100%
gemlib/distributions/uniform_integer.py (no function)   20 0 0   100%
gemlib/func_util.py _check_deprecated   2 0 0   100%
gemlib/func_util.py _check_deprecated.dep_fn   4 0 0   100%
gemlib/func_util.py maybe_combine_fn   4 0 0   100%
gemlib/func_util.py maybe_combine_fn.fn_combined   1 0 0   100%
gemlib/func_util.py (no function)   4 0 0   100%
gemlib/math.py cumsum   9 0 0   100%
gemlib/math.py cumsum_np   11 1 0   91%
gemlib/math.py multiply_no_nan   2 0 0   100%
gemlib/math.py (no function)   7 0 0   100%
gemlib/mcmc/__init__.py (no function)   13 0 0   100%
gemlib/mcmc/adaptive_hmc.py make_initial_running_variance   4 0 0   100%
gemlib/mcmc/adaptive_hmc.py make_initial_running_variance.fn   1 0 0   100%
gemlib/mcmc/adaptive_hmc.py adaptive_hmc   6 0 0   100%
gemlib/mcmc/adaptive_hmc.py adaptive_hmc._build_kernel   5 0 0   100%
gemlib/mcmc/adaptive_hmc.py adaptive_hmc.init_fn   4 0 0   100%
gemlib/mcmc/adaptive_hmc.py adaptive_hmc.step_fn   11 0 0   100%
gemlib/mcmc/adaptive_hmc.py (no function)   16 0 0   100%
gemlib/mcmc/adaptive_random_walk_metropolis.py adaptive_rwmh   3 0 0   100%
gemlib/mcmc/adaptive_random_walk_metropolis.py adaptive_rwmh.init_fn   13 2 0   85%
gemlib/mcmc/adaptive_random_walk_metropolis.py adaptive_rwmh.step_fn   25 0 0   100%
gemlib/mcmc/adaptive_random_walk_metropolis.py (no function)   27 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/__init__.py (no function)   4 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/fixtures.py sir_metapop_example   4 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/fixtures.py (no function)   4 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_impl.py _update_state   7 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_impl.py _reverse_update   2 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_impl.py UncalibratedLeftCensoredEventTimesUpdate.__init__   2 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_impl.py UncalibratedLeftCensoredEventTimesUpdate.target_log_prob_fn   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_impl.py UncalibratedLeftCensoredEventTimesUpdate.transition_index   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_impl.py UncalibratedLeftCensoredEventTimesUpdate.incidence_matrix   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_impl.py UncalibratedLeftCensoredEventTimesUpdate.max_timepoint   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_impl.py UncalibratedLeftCensoredEventTimesUpdate.max_events   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_impl.py UncalibratedLeftCensoredEventTimesUpdate.name   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_impl.py UncalibratedLeftCensoredEventTimesUpdate.parameters   1 1 0   0%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_impl.py UncalibratedLeftCensoredEventTimesUpdate.is_calibrated   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_impl.py UncalibratedLeftCensoredEventTimesUpdate.one_step   13 1 0   92%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_impl.py UncalibratedLeftCensoredEventTimesUpdate.bootstrap_results   6 1 0   83%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_impl.py (no function)   40 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_mh.py _get_state_tuple   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_mh.py _repack_state_tuple   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_mh.py left_censored_events_mh   6 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_mh.py left_censored_events_mh._build_kernel   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_mh.py left_censored_events_mh.init_fn   5 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_mh.py left_censored_events_mh.step_fn   5 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_mh.py (no function)   25 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_proposal.py _mask_max   2 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_proposal.py left_censored_event_time_proposal   11 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_proposal.py left_censored_event_time_proposal.unit   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_proposal.py left_censored_event_time_proposal.timepoint   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_proposal.py left_censored_event_time_proposal.direction   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_proposal.py left_censored_event_time_proposal.num_events   8 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_proposal.py left_censored_event_time_proposal.num_events.pull_from_past   4 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_proposal.py left_censored_event_time_proposal.num_events.push_to_past   6 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/left_censored_events_proposal.py (no function)   11 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events.py move_events   4 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events.py move_events._build_kernel   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events.py move_events.init_fn   5 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events.py move_events.step_fn   5 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events.py (no function)   18 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py events_state_count_bounding_fn   2 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py events_state_count_bounding_fn.fn   11 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py _is_within   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py _timepoint_selector   3 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py _delta_selector   4 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py _make_event_count_selector   2 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py _make_event_count_selector.fn   3 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py discrete_move_events_proposal   4 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py discrete_move_events_proposal.proposal   11 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py _apply_move   4 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py _reverse_move   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py UncalibratedEventTimesUpdate.__init__   2 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py UncalibratedEventTimesUpdate.target_log_prob_fn   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py UncalibratedEventTimesUpdate.incidence_matrix   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py UncalibratedEventTimesUpdate.initial_conditions   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py UncalibratedEventTimesUpdate.target_transition_id   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py UncalibratedEventTimesUpdate.num_units   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py UncalibratedEventTimesUpdate.delta_max   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py UncalibratedEventTimesUpdate.count_max   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py UncalibratedEventTimesUpdate.name   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py UncalibratedEventTimesUpdate.parameters   1 1 0   0%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py UncalibratedEventTimesUpdate.is_calibrated   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py UncalibratedEventTimesUpdate._proposal   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py UncalibratedEventTimesUpdate.one_step   16 3 0   81%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py UncalibratedEventTimesUpdate.bootstrap_results   6 2 0   67%
gemlib/mcmc/discrete_time_state_transition_model/move_events_impl.py (no function)   55 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_impl.py _is_row_nonzero   1 1 0   0%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_impl.py _maybe_expand_dims   1 1 0   0%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_impl.py _add_events   2 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_impl.py UncalibratedOccultUpdate.__init__   3 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_impl.py UncalibratedOccultUpdate.target_log_prob_fn   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_impl.py UncalibratedOccultUpdate.incidence_matrix   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_impl.py UncalibratedOccultUpdate.target_transition_id   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_impl.py UncalibratedOccultUpdate.initial_conditions   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_impl.py UncalibratedOccultUpdate.count_max   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_impl.py UncalibratedOccultUpdate.t_range   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_impl.py UncalibratedOccultUpdate.name   1 1 0   0%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_impl.py UncalibratedOccultUpdate.parameters   1 1 0   0%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_impl.py UncalibratedOccultUpdate.is_calibrated   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_impl.py UncalibratedOccultUpdate.one_step   16 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_impl.py UncalibratedOccultUpdate.one_step.add_occult_fn   10 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_impl.py UncalibratedOccultUpdate.one_step.del_occult_fn   10 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_impl.py UncalibratedOccultUpdate.bootstrap_results   6 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_impl.py (no function)   49 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_mh.py right_censored_events_mh   4 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_mh.py right_censored_events_mh._build_kernel   1 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_mh.py right_censored_events_mh.init_fn   7 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_mh.py right_censored_events_mh.step_fn   7 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_mh.py (no function)   21 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_proposal.py _slice_min   3 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_proposal.py add_occult_proposal   6 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_proposal.py add_occult_proposal.proposal   5 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_proposal.py del_occult_proposal   4 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_proposal.py del_occult_proposal.proposal   13 0 0   100%
gemlib/mcmc/discrete_time_state_transition_model/right_censored_events_proposal.py (no function)   10 0 0   100%
gemlib/mcmc/hmc.py hmc   5 0 0   100%
gemlib/mcmc/hmc.py hmc._make_momentum_distribution   3 1 0   67%
gemlib/mcmc/hmc.py hmc._build_kernel   1 0 0   100%
gemlib/mcmc/hmc.py hmc.init_fn   5 0 0   100%
gemlib/mcmc/hmc.py hmc.step_fn   7 0 0   100%
gemlib/mcmc/hmc.py (no function)   14 0 0   100%
gemlib/mcmc/mcmc_sampler.py _split_seed   1 0 0   100%
gemlib/mcmc/mcmc_sampler.py _scan   1 0 0   100%
gemlib/mcmc/mcmc_sampler.py mcmc   7 0 0   100%
gemlib/mcmc/mcmc_sampler.py mcmc.one_step   2 0 0   100%
gemlib/mcmc/mcmc_sampler.py (no function)   9 0 0   100%
gemlib/mcmc/mcmc_util.py is_list_like   1 0 0   100%
gemlib/mcmc/mcmc_util.py get_flattening_bijector   5 0 0   100%
gemlib/mcmc/mcmc_util.py (no function)   5 0 0   100%
gemlib/mcmc/multi_scan.py multi_scan   4 0 0   100%
gemlib/mcmc/multi_scan.py multi_scan.init_fn   2 0 0   100%
gemlib/mcmc/multi_scan.py multi_scan.step_fn   8 0 0   100%
gemlib/mcmc/multi_scan.py multi_scan.step_fn.body   3 0 0   100%
gemlib/mcmc/multi_scan.py multi_scan.step_fn.cond   2 0 0   100%
gemlib/mcmc/multi_scan.py (no function)   6 0 0   100%
gemlib/mcmc/mwg_step.py as_list   3 0 0   100%
gemlib/mcmc/mwg_step.py _make_target_type   3 0 0   100%
gemlib/mcmc/mwg_step.py _make_position_projector   3 0 0   100%
gemlib/mcmc/mwg_step.py _make_position_projector.fn   7 1 0   86%
gemlib/mcmc/mwg_step.py MwgStep.__new__   7 0 0   100%
gemlib/mcmc/mwg_step.py MwgStep.__new__._name_target   1 1 0   0%
gemlib/mcmc/mwg_step.py MwgStep.__new__.init   5 0 0   100%
gemlib/mcmc/mwg_step.py MwgStep.__new__.init.conditional_tlp   2 0 0   100%
gemlib/mcmc/mwg_step.py MwgStep.__new__.step   8 0 0   100%
gemlib/mcmc/mwg_step.py MwgStep.__new__.step.conditional_tlp   2 0 0   100%
gemlib/mcmc/mwg_step.py (no function)   13 0 0   100%
gemlib/mcmc/random_walk_metropolis.py rwmh   4 0 0   100%
gemlib/mcmc/random_walk_metropolis.py rwmh._build_kernel   1 0 0   100%
gemlib/mcmc/random_walk_metropolis.py rwmh.init_fn   5 0 0   100%
gemlib/mcmc/random_walk_metropolis.py rwmh.step_fn   5 0 0   100%
gemlib/mcmc/random_walk_metropolis.py (no function)   11 0 0   100%
gemlib/mcmc/sampling_algorithm.py TargetDensityFnType.__call__   0 0 1   100%
gemlib/mcmc/sampling_algorithm.py KernelInitFnType.__call__   0 0 1   100%
gemlib/mcmc/sampling_algorithm.py KernelStepFnType.__call__   0 0 1   100%
gemlib/mcmc/sampling_algorithm.py _maybe_flatten   5 5 0   0%
gemlib/mcmc/sampling_algorithm.py _squeeze   3 0 0   100%
gemlib/mcmc/sampling_algorithm.py _maybe_list   3 0 0   100%
gemlib/mcmc/sampling_algorithm.py _maybe_tuple   3 3 0   0%
gemlib/mcmc/sampling_algorithm.py KernelInitMonad.__init__   1 0 0   100%
gemlib/mcmc/sampling_algorithm.py KernelInitMonad.__call__   1 0 0   100%
gemlib/mcmc/sampling_algorithm.py KernelInitMonad.then   3 0 0   100%
gemlib/mcmc/sampling_algorithm.py KernelInitMonad.then.compound_init_fn   3 0 0   100%
gemlib/mcmc/sampling_algorithm.py KernelInitMonad.__rshift__   1 0 0   100%
gemlib/mcmc/sampling_algorithm.py KernelStepMonad.__init__   1 0 0   100%
gemlib/mcmc/sampling_algorithm.py KernelStepMonad.__call__   1 0 0   100%
gemlib/mcmc/sampling_algorithm.py KernelStepMonad.then   3 0 0   100%
gemlib/mcmc/sampling_algorithm.py KernelStepMonad.then.compound_step_kernel   7 0 0   100%
gemlib/mcmc/sampling_algorithm.py KernelStepMonad.__rshift__   1 0 0   100%
gemlib/mcmc/sampling_algorithm.py SamplingAlgorithm.__init__   5 0 0   100%
gemlib/mcmc/sampling_algorithm.py SamplingAlgorithm.init   1 0 0   100%
gemlib/mcmc/sampling_algorithm.py SamplingAlgorithm.step   1 0 0   100%
gemlib/mcmc/sampling_algorithm.py SamplingAlgorithm.then   1 0 0   100%
gemlib/mcmc/sampling_algorithm.py SamplingAlgorithm.__rshift__   1 0 0   100%
gemlib/mcmc/sampling_algorithm.py SamplingAlgorithm.__mul__   1 0 0   100%
gemlib/mcmc/sampling_algorithm.py SamplingAlgorithm.__rmul__   1 0 0   100%
gemlib/mcmc/sampling_algorithm.py _repeat_sampling_algorithm   3 0 0   100%
gemlib/mcmc/sampling_algorithm.py _repeat_sampling_algorithm.init_fn   2 0 0   100%
gemlib/mcmc/sampling_algorithm.py _repeat_sampling_algorithm.step_fn   8 0 0   100%
gemlib/mcmc/sampling_algorithm.py _repeat_sampling_algorithm.step_fn.body   3 0 0   100%
gemlib/mcmc/sampling_algorithm.py _repeat_sampling_algorithm.step_fn.cond   2 0 0   100%
gemlib/mcmc/sampling_algorithm.py (no function)   49 0 17   100%
gemlib/mcmc/test_util.py counting_kernel   3 0 0   100%
gemlib/mcmc/test_util.py counting_kernel.init_fn   3 0 0   100%
gemlib/mcmc/test_util.py counting_kernel.step_fn   5 0 0   100%
gemlib/mcmc/test_util.py (no function)   8 0 0   100%
gemlib/mcmc/transformed_sampling_algorithm.py map_structure   5 0 0   100%
gemlib/mcmc/transformed_sampling_algorithm.py map_structure.is_leaf   1 0 0   100%
gemlib/mcmc/transformed_sampling_algorithm.py _transform_tlp_fn   4 0 0   100%
gemlib/mcmc/transformed_sampling_algorithm.py _transform_tlp_fn.fn   5 0 0   100%
gemlib/mcmc/transformed_sampling_algorithm.py transform_sampling_algorithm   3 0 0   100%
gemlib/mcmc/transformed_sampling_algorithm.py transform_sampling_algorithm.init_fn   5 0 0   100%
gemlib/mcmc/transformed_sampling_algorithm.py transform_sampling_algorithm.step_fn   10 0 0   100%
gemlib/mcmc/transformed_sampling_algorithm.py (no function)   8 0 0   100%
gemlib/prng_util.py sanitize_key   5 1 0   80%
gemlib/prng_util.py (no function)   3 0 0   100%
gemlib/spatial/__init__.py (no function)   2 0 0   100%
gemlib/spatial/sp_dist.py pdist   3 0 0   100%
gemlib/spatial/sp_dist.py include_all   2 2 0   0%
gemlib/spatial/sp_dist.py _pdist_indices_mask   7 0 0   100%
gemlib/spatial/sp_dist.py compress_distance   2 0 0   100%
gemlib/spatial/sp_dist.py sparse_pdist   14 1 1   93%
gemlib/spatial/sp_dist.py (no function)   18 0 0   100%
gemlib/tensor_util.py broadcast_together   6 0 0   100%
gemlib/tensor_util.py broadcast_fn_to   2 0 0   100%
gemlib/tensor_util.py broadcast_fn_to.wrapped   4 1 0   75%
gemlib/tensor_util.py (no function)   5 0 0   100%
gemlib/util.py batch_gather   9 0 0   100%
gemlib/util.py transition_coords   3 0 0   100%
gemlib/util.py transition_coords_tuple   1 0 0   100%
gemlib/util.py states_from_transition_idx   2 0 0   100%
gemlib/util.py (no function)   9 0 0   100%
Total     1813 65 21   96%

No items found using the specified filter.