TailFitMCMC
- class gwtails.bayesian_tails.TailFitMCMC(t, A, t_tail_window, lsq_params=None, log_Atail_range=(-5, 15), ctail_range=(0, 2500), ptail_range=(-15, -1), fixed_params=None, percentage_err_in_data=2.5)[source]
Bases:
objectUnified Bayesian fitting class for tail decay function: Atail * (t + ctail)**ptail Supports fixing any combination of parameters.
Example
# Create fit instance fitter = gwtails.TailFitMCMC(t=t, # post-merger time
A=abs(h[(2,2)]), # post-merger amplitue t_tail_window=[1200, 8000], lsq_params=None, # no initial guess log_Atail_range=(0, 20), ctail_range=(0, 2500), ptail_range=(-15, -1), fixed_params=None, percentage_err_in_data=2.5)
# Perform fitting samples, percentiles, log_likelihood = fitter.fit(n_walkers=32, n_steps=2000, burn_in=500)
# quick corner plot fitter.plot_corner();
- __init__(t, A, t_tail_window, lsq_params=None, log_Atail_range=(-5, 15), ctail_range=(0, 2500), ptail_range=(-15, -1), fixed_params=None, percentage_err_in_data=2.5)[source]
Initialize the class.
- Parameters:
t – array-like Time array
A – array-like Amplitude data
t_tail_window – list [t_start, t_end] for fitting window
lsq_params – list or array, optional [Atail, ctail, ptail] from least squares fit to use as initial guess
log_Atail_range – tuple, optional (min, max) range for log10(Atail) prior, default (-5, 15)
ctail_range – tuple, optional (min, max) range for ctail parameter prior, default (0, 2500)
ptail_range – tuple, optional (min, max) range for ptail parameter prior, default (-15, -1)
fixed_params – dict, optional Dictionary specifying fixed parameters, e.g., {‘ptail’: -6}, {‘ctail’: 0}, {‘ptail’: -6, ‘ctail’: 0}, or None for all free parameters
percentage_err_in_data – float, optional Percentage error in data for likelihood calculation, default 2.5%
- fit(n_walkers=32, n_steps=2000, burn_in=500)[source]
Perform Bayesian fitting using MCMC.
Parameters:
- n_walkersint, default 32
Number of MCMC walkers
- n_stepsint, default 2000
Number of MCMC steps
- burn_inint, default 500
Number of burn-in steps to discard