Implemented waveform models

class gwmemory.waveforms.surrogate.Surrogate(q: float, name: str = 'nrsur7dq2', total_mass: float = None, spin_1: Tuple[float, float, float] = None, spin_2: Tuple[float, float, float] = None, distance: float = None, l_max: int = 4, modes: list = None, times: ndarray = None, minimum_frequency: float = 0, sampling_frequency: float = None)

Memory generator for a numerical relativity surrogate.

Attributes:
name: str

Name of file to extract waveform from.

modes: dict

Spherical harmonic modes which we have knowledge of, default is ell<=4.

h_lm: dict

Spherical harmonic decomposed time-domain strain.

times: array

Array on which waveform is evaluated.

q: float

Binary mass ratio

MTot: float, optional

Total binary mass in solar units.

distance: float, optional

Distance to the binary in MPC.

S1: array

Spin vector of more massive black hole.

S2: array

Spin vector of less massive black hole.

time_domain_oscillatory(times: ndarray = None, modes: list = None, inc: float = None, phase: float = None) Tuple[dict, ndarray]

Get the mode decomposition of the surrogate waveform.

Calculates a BBH waveform using the surrogate models of Field et al. (2014), Blackman et al. (2017) http://journals.aps.org/prx/references/10.1103/PhysRevX.4.031006, https://arxiv.org/abs/1705.07089 See https://data.black-holes.org/surrogates/index.html for more information.

Parameters:
times: np.array, optional

Time array on which to evaluate the waveform.

modes: list, optional

List of modes to try to generate.

inc: float, optional

Inclination of the source, if None, the spherical harmonic modes will be returned.

phase: float, optional

Phase at coalescence of the source, if None, the spherical harmonic modes will be returned.

Returns:
h_lm: dict

Spin-weighted spherical harmonic decomposed waveform.

times: np.array

Times on which waveform is evaluated.

class gwmemory.waveforms.nr.SXSNumericalRelativity(name: str, modes: list = None, extraction: str = 'OutermostExtraction.dir', total_mass: float = None, distance: float = None, times: ndarray = None)

Memory generator for a numerical relativity waveform.

Attributes:
name: str

Name of file to extract waveform from.

modes: dict

Spherical harmonic modes which we have knowledge of, default is ell<=4.

h_lm: dict

Spherical harmonic decomposed time-domain strain.

times: array

Array on which waveform is evaluated.

MTot: float, optional

Total binary mass in solar units.

distance: float, optional

Distance to the binary in MPC.

time_domain_oscillatory(times: ndarray = None, modes: list = None, inc: float = None, phase: float = None) Tuple[dict, ndarray]

Get the mode decomposition of the numerical relativity waveform.

Parameters:
inc: float, optional

Inclination of the source, if None, the spherical harmonic modes will be returned.

phase: float, optional

Phase at coalescence of the source, if None, the spherical harmonic modes will be returned.

Returns:
h_lm: dict

Spin-weighted spherical harmonic decomposed waveform.

times: np.array

Times on which waveform is evaluated.