jesterTOV.inference.likelihoods.nicer.NICERLikelihood#
- class NICERLikelihood(
- psr_name,
- amsterdam_model_dir=None,
- maryland_model_dir=None,
- penalty_value=-99999.0,
- N_masses_evaluation=20,
- N_masses_batch_size=10,
- seed=42,
Bases:
LikelihoodBaseNICER likelihood using normalizing flows (NEW DEFAULT).
This is the recommended NICER likelihood implementation that uses pre-trained normalizing flows on M-R posteriors for efficient and deterministic likelihood evaluation.
For the legacy KDE-based version, see NICERKDELikelihood.
The likelihood loads pre-trained flow models for Amsterdam and Maryland groups and evaluates the likelihood by: 1. Pre-sampling masses ONCE at initialization (deterministic with seed) 2. During evaluation: interpolating radius from the EOS for pre-sampled masses 3. Evaluating the flow log probability at (mass, radius) 4. Averaging over all samples
- Parameters:
psr_name (str) – Pulsar name (e.g., “J0030”, “J0740”)
amsterdam_model_dir (str | None) – Path to directory containing Amsterdam flow model (flow_weights.eqx, metadata.json, flow_kwargs.json). If None, uses preset model path.
maryland_model_dir (str | None) – Path to directory containing Maryland flow model. If None, uses preset model path.
penalty_value (float, optional) – Penalty value for samples where mass exceeds Mtov (default: -99999.0)
N_masses_evaluation (int, optional) – Number of mass samples per likelihood evaluation (default: 20)
N_masses_batch_size (int, optional) – Batch size for processing mass samples (default: 10)
seed (int, optional) – Random seed for pre-sampling masses (default: 42)
- Variables:
psr_name (str) – Pulsar name
penalty_value (float) – Penalty value for samples where mass exceeds Mtov
N_masses_evaluation (int) – Number of mass samples per likelihood evaluation
N_masses_batch_size (int) – Batch size for processing mass samples
seed (int) – Random seed for deterministic pre-sampling
amsterdam_flow (Flow) – Normalizing flow for Amsterdam M-R posterior
maryland_flow (Flow) – Normalizing flow for Maryland M-R posterior
amsterdam_fixed_mass_samples (Float[Array, "n_samples"]) – Pre-sampled mass values from Amsterdam flow (fixed at initialization)
maryland_fixed_mass_samples (Float[Array, "n_samples"]) – Pre-sampled mass values from Maryland flow (fixed at initialization)
- __init__(
- psr_name,
- amsterdam_model_dir=None,
- maryland_model_dir=None,
- penalty_value=-99999.0,
- N_masses_evaluation=20,
- N_masses_batch_size=10,
- seed=42,
Methods
__init__(psr_name[, amsterdam_model_dir, ...])evaluate(params)Evaluate log likelihood for given EOS parameters.
Attributes
dataThe data for the likelihood.
modelThe model for the likelihood.