Geometric helper function
- gwmemory.angles.analytic_gamma(lm1: Tuple[int, int], lm2: Tuple[int, int], ell: int) float
Analytic function to compute gamma_lmlm_l Eq. (8) of arXiv:1807.0090
The primary component is taken from https://github.com/moble/spherical/blob/c3fe00ab6d79732fe1cbc6d56574ea94702d89ae/spherical/multiplication.py.
- Parameters:
- lm1: tuple
tuple of first spherical harmonic mode
- lm2: tuple
tuple of second spherical harmonic mode
- ell: int
The degree of the output spherical harmonic
- Returns:
- float: the gamma coefficient
- gwmemory.angles.cross_tensor(wx: ndarray, wy: ndarray) ndarray
Calculate the cross polarization tensor for some basis. c.f., eq. 2 of https://arxiv.org/pdf/1710.03794.pdf
- gwmemory.angles.memory_correction(ell: int, ss: int = 0) float
Correction to the Gamma function for the operator in Eq. (12) of arXiv:2011.01309
- Parameters:
- ell: int
degree of the spherical harmonic
- ss: int
spin-weight of the waveform being adjusted, ss=0 for out purpose
- Returns:
- int: the correction
- gwmemory.angles.omega_ij_to_omega_pol(omega_ij: ndarray, inc: float, phase: float) Tuple[ndarray, ndarray]
Map from strain tensor to plus and cross modes.
We assume that only plus and cross are present.
- Parameters:
- omega_ij: array
3x3 matrix describing strain or a proxy for strain
- inc: float
inclination of source
- phase: float
phase at coalescence of source
- Returns:
- hp: float
Magnitude of plus mode.
- hx: float
Magnitude of cross mode.
- gwmemory.angles.plus_tensor(wx: ndarray, wy: ndarray) ndarray
Calculate the plus polarization tensor for some basis. c.f., eq. 2 of https://arxiv.org/pdf/1710.03794.pdf
- gwmemory.angles.wave_frame(theta: float, phi: float, psi: float = 0) Tuple[ndarray, ndarray]
Generate wave-frame basis from three angles, see Nishizawa et al. (2009)