Interfaces
ripplegw.interfaces
¤
waveform_preset: dict[str, type[Waveform]] = {'IMRPhenomD': IMRPhenomD, 'IMRPhenomPv2': IMRPhenomPv2, 'TaylorF2': TaylorF2, 'IMRPhenomD_NRTidalv2': IMRPhenomD_NRTidalv2, 'IMRPhenomXAS': IMRPhenomXAS, 'IMRPhenomXAS_NRTidalv3': IMRPhenomXAS_NRTidalv3, 'IMRPhenomXPHM': IMRPhenomXPHM, 'SineGaussian': SineGaussian}
module-attribute
¤
Waveform
¤
Bases: ABC
Abstract base class for gravitational waveform models.
Subclasses implement the frequency- (or time-) domain waveform and expose it
via __call__, returning a dictionary with polarization keys "p" (plus)
and "c" (cross).
parameter_names: tuple[str, ...]
abstractmethod
property
¤
Ordered tuple of parameter names required by this waveform model.
Returns:
| Type | Description |
|---|---|
tuple[str, ...]
|
tuple[str, ...]: Parameter names in the order they are consumed,
matching the keys expected in the |
__init__()
¤
__call__(axis: Float[Array, ' n_freq'], params: dict[str, Float]) -> dict[str, Float[Array, ' n_freq']]
abstractmethod
¤
Evaluate the waveform.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
axis
|
Float[Array, ' n_freq']
|
Frequency (or time) grid. |
required |
params
|
dict[str, Float]
|
Source parameter dictionary. |
required |
Returns:
| Type | Description |
|---|---|
dict[str, Float[Array, ' n_freq']]
|
dict[str, Float[Array, " n_freq"]]: Dictionary with keys |
IMRPhenomD
¤
Bases: Waveform
IMRPhenomD frequency-domain waveform (non-precessing, aligned spins).
Attributes:
| Name | Type | Description |
|---|---|---|
f_ref |
float
|
Reference frequency in Hz. |
f_ref: float = f_ref
instance-attribute
¤
parameter_names: tuple[str, ...]
property
¤
__init__(f_ref: float = 20.0) -> None
¤
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
f_ref
|
float
|
Reference frequency in Hz. Defaults to 20.0. |
20.0
|
__call__(frequency: Float[Array, ' n_freq'], params: dict[str, Float]) -> dict[str, Float[Array, ' n_freq']]
¤
Evaluate the IMRPhenomD waveform.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
frequency
|
Float[Array, ' n_freq']
|
Frequency array in Hz. |
required |
params
|
dict[str, Float]
|
Source parameters with keys
|
required |
Returns:
| Type | Description |
|---|---|
dict[str, Float[Array, ' n_freq']]
|
dict[str, Float[Array, " n_freq"]]: Plus ( |
__repr__()
¤
IMRPhenomPv2
¤
Bases: Waveform
IMRPhenomPv2 frequency-domain waveform (precessing spins).
Attributes:
| Name | Type | Description |
|---|---|---|
f_ref |
float
|
Reference frequency in Hz. |
f_ref: float = f_ref
instance-attribute
¤
parameter_names: tuple[str, ...]
property
¤
__init__(f_ref: float = 20.0) -> None
¤
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
f_ref
|
float
|
Reference frequency in Hz. Defaults to 20.0. |
20.0
|
__call__(frequency: Float[Array, ' n_freq'], params: dict[str, Float]) -> dict[str, Float[Array, ' n_freq']]
¤
Evaluate the IMRPhenomPv2 waveform.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
frequency
|
Float[Array, ' n_freq']
|
Frequency array in Hz. |
required |
params
|
dict[str, Float]
|
Source parameters with keys
|
required |
Returns:
| Type | Description |
|---|---|
dict[str, Float[Array, ' n_freq']]
|
dict[str, Float[Array, " n_freq"]]: Plus ( |
__repr__()
¤
TaylorF2
¤
Bases: Waveform
TaylorF2 post-Newtonian frequency-domain waveform including tidal effects.
Attributes:
| Name | Type | Description |
|---|---|---|
f_ref |
float
|
Reference frequency in Hz. |
use_lambda_tildes |
bool
|
If True, expects |
f_ref: float = f_ref
instance-attribute
¤
use_lambda_tildes: bool = use_lambda_tildes
instance-attribute
¤
parameter_names: tuple[str, ...]
property
¤
__init__(f_ref: float = 20.0, use_lambda_tildes: bool = False) -> None
¤
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
f_ref
|
float
|
Reference frequency in Hz. Defaults to 20.0. |
20.0
|
use_lambda_tildes
|
bool
|
Whether to parameterise tidal deformability
via |
False
|
__call__(frequency: Float[Array, ' n_freq'], params: dict[str, Float]) -> dict[str, Float[Array, ' n_freq']]
¤
Evaluate the TaylorF2 waveform.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
frequency
|
Float[Array, ' n_freq']
|
Frequency array in Hz. |
required |
params
|
dict[str, Float]
|
Source parameters with keys |
required |
Returns:
| Type | Description |
|---|---|
dict[str, Float[Array, ' n_freq']]
|
dict[str, Float[Array, " n_freq"]]: Plus ( |
__repr__()
¤
IMRPhenomD_NRTidalv2
¤
Bases: Waveform
IMRPhenomD_NRTidalv2 frequency-domain waveform (non-precessing, NRTidalv2 tides).
Attributes:
| Name | Type | Description |
|---|---|---|
f_ref |
float
|
Reference frequency in Hz. |
use_lambda_tildes |
bool
|
If True, expects |
no_taper |
bool
|
If True, the Planck taper in the amplitude is disabled. |
f_ref: float = f_ref
instance-attribute
¤
use_lambda_tildes: bool = use_lambda_tildes
instance-attribute
¤
no_taper = no_taper
instance-attribute
¤
parameter_names: tuple[str, ...]
property
¤
__init__(f_ref: float = 20.0, use_lambda_tildes: bool = False, no_taper: bool = False) -> None
¤
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
f_ref
|
float
|
Reference frequency in Hz. Defaults to 20.0. |
20.0
|
use_lambda_tildes
|
bool
|
Whether to parameterise tidal deformability
via |
False
|
no_taper
|
bool
|
Whether to remove the Planck taper in the amplitude (useful for relative binning runs). Defaults to False. |
False
|
__call__(frequency: Float[Array, ' n_freq'], params: dict[str, Float]) -> dict[str, Float[Array, ' n_freq']]
¤
Evaluate the IMRPhenomD_NRTidalv2 waveform.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
frequency
|
Float[Array, ' n_freq']
|
Frequency array in Hz. |
required |
params
|
dict[str, Float]
|
Source parameters with keys |
required |
Returns:
| Type | Description |
|---|---|
dict[str, Float[Array, ' n_freq']]
|
dict[str, Float[Array, " n_freq"]]: Plus ( |
__repr__()
¤
IMRPhenomXAS
¤
Bases: Waveform
IMRPhenomXAS frequency-domain waveform (non-precessing, aligned spins, X family).
Attributes:
| Name | Type | Description |
|---|---|---|
f_ref |
float
|
Reference frequency in Hz. |
f_ref: float = f_ref
instance-attribute
¤
parameter_names: tuple[str, ...]
property
¤
__init__(f_ref: float = 20.0) -> None
¤
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
f_ref
|
float
|
Reference frequency in Hz. Defaults to 20.0. |
20.0
|
__call__(frequency: Float[Array, ' n_freq'], params: dict[str, Float]) -> dict[str, Float[Array, ' n_freq']]
¤
Evaluate the IMRPhenomXAS waveform.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
frequency
|
Float[Array, ' n_freq']
|
Frequency array in Hz. |
required |
params
|
dict[str, Float]
|
Source parameters with keys
|
required |
Returns:
| Type | Description |
|---|---|
dict[str, Float[Array, ' n_freq']]
|
dict[str, Float[Array, " n_freq"]]: Plus ( |
__repr__()
¤
IMRPhenomXAS_NRTidalv3
¤
Bases: Waveform
IMRPhenomXAS_NRTidalv3 frequency-domain waveform (non-precessing, NRTidalv3 tides).
Attributes:
| Name | Type | Description |
|---|---|---|
f_ref |
float
|
Reference frequency in Hz. |
use_lambda_tildes |
bool
|
If True, expects |
no_taper |
bool
|
If True, the Planck taper in the amplitude is disabled. |
f_ref: float = f_ref
instance-attribute
¤
use_lambda_tildes: bool = use_lambda_tildes
instance-attribute
¤
no_taper: bool = no_taper
instance-attribute
¤
parameter_names: tuple[str, ...]
property
¤
__init__(f_ref: float = 20.0, use_lambda_tildes: bool = False, no_taper: bool = False) -> None
¤
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
f_ref
|
float
|
Reference frequency in Hz. Defaults to 20.0. |
20.0
|
use_lambda_tildes
|
bool
|
Whether to parameterise tidal deformability
via |
False
|
no_taper
|
bool
|
Whether to disable tapering (useful for relative binning runs). Defaults to False. |
False
|
__call__(frequency: Float[Array, ' n_freq'], params: dict[str, Float]) -> dict[str, Float[Array, ' n_freq']]
¤
Evaluate the IMRPhenomXAS_NRTidalv3 waveform.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
frequency
|
Float[Array, ' n_freq']
|
Frequency array in Hz. |
required |
params
|
dict[str, Float]
|
Source parameters with keys |
required |
Returns:
| Type | Description |
|---|---|
dict[str, Float[Array, ' n_freq']]
|
dict[str, Float[Array, " n_freq"]]: Plus ( |
__repr__()
¤
IMRPhenomXPHM
¤
Bases: Waveform
IMRPhenomXPHM frequency-domain waveform (precessing spins, higher-order modes).
Attributes:
| Name | Type | Description |
|---|---|---|
f_ref |
float
|
Reference frequency in Hz. |
f_ref: float = f_ref
instance-attribute
¤
parameter_names: tuple[str, ...]
property
¤
__init__(f_ref: float = 20.0) -> None
¤
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
f_ref
|
float
|
Reference frequency in Hz. Defaults to 20.0. |
20.0
|
__call__(frequency: Float[Array, ' n_freq'], params: dict[str, Float]) -> dict[str, Float[Array, ' n_freq']]
¤
Evaluate the IMRPhenomXPHM waveform.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
frequency
|
Float[Array, ' n_freq']
|
Frequency array in Hz. |
required |
params
|
dict[str, Float]
|
Source parameters with keys
|
required |
Returns:
| Type | Description |
|---|---|
dict[str, Float[Array, ' n_freq']]
|
dict[str, Float[Array, " n_freq"]]: Plus ( |
__repr__()
¤
SineGaussian
¤
Bases: Waveform
Sine-Gaussian time-domain burst waveform.
parameter_names: tuple[str, ...]
property
¤
__init__() -> None
¤
__call__(t: Float[Array, ' n_time'], params: dict[str, Float]) -> dict[str, Float[Array, ' n_time']]
¤
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
t
|
Float[Array, ' n_time']
|
Time grid centered at t=0. Create using
|
required |
params
|
dict[str, Float]
|
Dictionary with keys |
required |