gwinferno.models.bsplines.separable.BSplineIndependentSpinMagnitudes#
- class BSplineIndependentSpinMagnitudes(n_splines1, n_splines2, a1, a2, a1_inj, a2_inj, kwargs1={}, kwargs2={}, **kwargs)[source]#
Bases:
object
A B-Spline model for the spin magnitudes of the primary and secondary components assuming they are independently distributed,
\[p(a_1, a_2 \mid \mathbf{c}_1, \mathbf{c}_2) = p(a_1 \mid \mathbf{c}_1) p(a_2 \mid \mathbf{c}_2),\]where \(\mathbf{c}_1, \mathbf{c}_2\) are vectors of the
n_splines1
,n_splines2
basis spline coefficients for the primary and secondary component spin magnitudes, respectively.- Parameters:
- n_splines1, n_splines2int
Number of basis functions, i.e., the number of degrees of freedom, of the primary and secondary component spline models.
- a1, a2array_like
Primary and secondary component spin magnitude parameter estimation samples for basis evaluation.
- a1_inj, a2_injarray_like
Primary and secondary component spin magnitude injection samples for basis evaluation.
- kwargs1, kwargs2dict, optional
Additional keyword arguments to pass to the basis spline model for the primary and secondary components.
- **kwargsdict, optional
Additional keyword arguments to pass to both basis spline models.
Methods
- __call__(pcoefs, scoefs, 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:
- pcoefs, scoefsarray_like
Spline coefficients for the (p)rimary and (s)econdary components.
- 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.