gwinferno.models.bsplines.separable.PLPeakPrimaryBSplineRatio#

class PLPeakPrimaryBSplineRatio(n_splines, q, q_inj, **kwargs)[source]#

Bases: object

A powerlaw + gaussian peak primary mass model and B-Spline model in mass ratio.

\[p(m_1, q \mid \mathbf{c}, \alpha, \mu_\mathrm{peak}, \sigma_\mathrm{peak}, f_\mathrm{peak}) = p(m_1 \mid \alpha, \mu_\mathrm{peak}, \sigma_\mathrm{peak}, f_\mathrm{peak}) p(q \mid \mathbf{c}, m_1, m_{\mathrm{min}}),\]

where \(\mathbf{c}\) is a vector of the n_splines basis spline coefficients, \(\alpha\) is the powerlaw slope of the primary component mass distribution, \(\mu_\mathrm{peak}\) and \(\sigma_\mathrm{peak}\) the mean and standard deviation of the peak in mass, and \(f_\mathrm{peak}\) is the mixing fraction between the powerlaw and peak in mass.

Parameters:
n_splinesint

Number of basis functions, i.e., the number of degrees of freedom of the spline model.

qarray_like

Mass ratio parameter estimation samples for basis evaluation.

q_injarray_like

Mass ratio injection samples for basis evaluation.

**kwargsdict, optional

Additional keyword arguments to pass to the basis spline model.

See also

gwinferno.models.parametric.parametric.plpeak_primary_pdf

Powerlaw+Peak primary mass model density.

Methods

__call__(m1, alpha, mmin, mmax, peak_mean, peak_sd, peak_frac, coefs, pe_samples=True)[source]#

Evaluate the joint probability density over the parameter estimation or injection samples. Use flag pe_samples to specify which samples are being evaluated (parameter estimation or injection).

Parameters:
m1array_like

Primary masses for computing joint probability density.

alphafloat

Powerlaw slope of the primary mass distribution.

mminfloat

Minimum component mass, the lower bound on the primary mass.

mmaxfloat

Maximum component mass, the upper bound on the primary mass.

peak_meanfloat

Mean of the peak in mass.

peak_sdfloat

Standard deviation of the peak in mass.

peak_fracfloat

Fraction of binaries in the peak in mass.

coefsarray_like

Spline coefficients.

pe_samplesbool, default=True

If True, design matrix is evaluated across parameter estimation samples. If False, design matrix is evaluated across injection samples.

Returns:
array_like

Joint probability density for parameter estimation or injection samples.

__init__(n_splines, q, q_inj, **kwargs)[source]#