{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Fast LISA Response Tutorial" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "%matplotlib inline \n", "\n", "import h5py\n", "from fastlisaresponse import pyResponseTDI, ResponseWrapper\n", "from astropy import units as un\n", "\n", "from lisatools.detector import EqualArmlengthOrbits, ESAOrbits\n", "\n", "YRSID_SI = 31558149.763545603" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This tutorial provides information on using `fastlisaresponse`: a generic time-domain LISA response function, including both projection on to constellation arms and TDI combinations. It is also GPU/CPU agnostic. The GPU capability is helpful for use in Bayesian inference algorithms. For more information and a detailed API, please see the [documentation](https://mikekatz04.github.io/lisa-on-gpu/).\n", "\n", "If you use this code, please cite [arXiv:2204.06633](https://arxiv.org/abs/2204.06633) and the code's [Zenodo](https://zenodo.org/record/3981654#.XzS_KRNKjlw). \n", "\n", "**Warning**: newest version (1.0.9) of code with `lisatools` orbits needs detailed testing before deployed for a paper." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Gravitational wave signal" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ " `fastlisaresponse` takes any time domain signal in the form $h(t) = h_+ + ih_\\times$. We are going to use a Galactic binary waveform given by\n", " \n", "$$\n", " h_{+,\\text{src}} = -A(1+\\cos^2{\\iota})\\cos{\\Phi(t)}\\qquad \\text{ and} \n", "$$\n", "\n", "$$\n", " h_{\\times,\\text{src}} = -2A\\cos{\\iota}\\sin{\\Phi(t)} \\text{ ,}\n", "$$\n", "\n", "where $A$ is the amplitude; $\\iota$ is the inclination; and\n", "$$\\Phi(t) \\approx -\\phi_0 + 2\\pi \\left(f_0t + \\frac{1}{2}\\dot{f}_0t^2 + \\frac{1}{6}\\ddot{f}_0t^3 \\right).$$\n", "\n", "$f$ is the initial gravitational wave frequency, and the over-dots are its time derivatives. The initial phase is $\\phi_0$. \n", "\n", "This waveform is then transformed to the solar-system barycenter (SSB) frame with the polarization angle, $\\psi$:\n", "\n", "$$\n", " \\begin{bmatrix}\n", " h_{+,\\text{SSB}} \\\\\n", " h_{\\times,\\text{SSB}} \n", " \\end{bmatrix} = \n", " \\begin{bmatrix}\n", " \\cos{2\\psi} & -\\sin{2\\psi}\\\\\n", " \\sin{2\\psi} & \\cos{2\\psi}\n", " \\end{bmatrix}\n", " \\begin{bmatrix}\n", " h_{+,\\text{src}} \\\\\n", " h_{\\times,\\text{src}} \n", " \\end{bmatrix}\\ .\n", "$$\n", "\n", "The waveform here is called with a class to allow for GPU usage. Equivalently, you can just use a function. However, please **note** that the function must take the keyword arguments `T` and `dt` which are the total observation time in in years and the sampling rate in seconds (inverse of the sampling frequency). " ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "class GBWave:\n", " def __init__(self, use_gpu=False):\n", "\n", " if use_gpu:\n", " self.xp = xp\n", " else:\n", " self.xp = np\n", "\n", " def __call__(self, A, f, fdot, iota, phi0, psi, T=1.0, dt=10.0):\n", "\n", " # get the t array \n", " t = self.xp.arange(0.0, T * YRSID_SI, dt)\n", " cos2psi = self.xp.cos(2.0 * psi)\n", " sin2psi = self.xp.sin(2.0 * psi)\n", " cosiota = self.xp.cos(iota)\n", "\n", " fddot = 11.0 / 3.0 * fdot ** 2 / f\n", "\n", " # phi0 is phi(t = 0) not phi(t = t0)\n", " phase = (\n", " 2 * np.pi * (f * t + 1.0 / 2.0 * fdot * t ** 2 + 1.0 / 6.0 * fddot * t ** 3)\n", " - phi0\n", " )\n", "\n", " hSp = -self.xp.cos(phase) * A * (1.0 + cosiota * cosiota)\n", " hSc = -self.xp.sin(phase) * 2.0 * A * cosiota\n", "\n", " hp = hSp * cos2psi - hSc * sin2psi\n", " hc = hSp * sin2psi + hSc * cos2psi\n", "\n", " return hp + 1j * hc" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "gb = GBWave(use_gpu=False)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Build waveforms" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We will now move on to the response. The method and specific maths used to determine the response function can be found in our paper: [arXiv:2204.06633](https://arxiv.org/abs/2204.06633). We recommend accessing the response through the [fastlisaresponse.ResponseWrapper](https://mikekatz04.github.io/lisa-on-gpu/html/user/main.html#response-function-wrapper). You can access the response function itself through [fastlisaresponse.pyTDIResponse](https://mikekatz04.github.io/lisa-on-gpu/html/user/main.html#fast-response-function). See the [documentation](https://mikekatz04.github.io/lisa-on-gpu/) for using this class directly as it is a bit more complicated. If you only need to use the projection portion or the TDI part, then you should access the response class itself. Otherwise, the wrapper should be fine. You can access the projections from the wrapper if need. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Setup classes" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "First we will setup everything to properly compute the response function for Galactic binary waveforms. " ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [], "source": [ "use_gpu = False\n", "\n", "T = 2.0 # years\n", "t0 = 10000.0 # time at which signal starts (chops off data at start of waveform where information is not correct)\n", "\n", "sampling_frequency = 0.1\n", "dt = 1 / sampling_frequency\n", "\n", "# order of the langrangian interpolation\n", "order = 25\n", "\n", "# 1st or 2nd or custom (see docs for custom)\n", "tdi_gen = \"2nd generation\"\n", "\n", "index_lambda = 6\n", "index_beta = 7\n", "\n", "tdi_kwargs_esa = dict(\n", " order=order, tdi=tdi_gen, tdi_chan=\"AET\",\n", ")\n", "\n", "gb_lisa_esa = ResponseWrapper(\n", " gb,\n", " T,\n", " dt,\n", " index_lambda,\n", " index_beta,\n", " t0=t0,\n", " flip_hx=False, # set to True if waveform is h+ - ihx\n", " use_gpu=use_gpu,\n", " remove_sky_coords=True, # True if the waveform generator does not take sky coordinates\n", " is_ecliptic_latitude=True, # False if using polar angle (theta)\n", " remove_garbage=True, # removes the beginning of the signal that has bad information\n", " orbits=EqualArmlengthOrbits(),\n", " **tdi_kwargs_esa,\n", ")\n", "\n", "# define GB parameters\n", "A = 1.084702251e-22\n", "f = 2.35962078e-3\n", "fdot = 1.47197271e-17\n", "iota = 1.11820901\n", "phi0 = 4.91128699\n", "psi = 2.3290324\n", "\n", "beta = 0.9805742971871619\n", "lam = 5.22979888\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Run generator" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "chans = gb_lisa_esa(A, f, fdot, iota, phi0, psi, lam, beta)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Plot results" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "image/png": "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xZz1q7B+/Xq89NJL+Pe//42RI0fWOa+dnR369esnyRFNQ9bxXgMHDqxSvy18hoIg4Ntvv8WECRPg6OhY57xSfoamUtI22FBK2Q7FINdtsCGUtg1OnToVW7ZswZ49e+Dj41PnvHLZDhmGRODo6IigoCDEx8dXmR4fH48HH3ywxvcMGjSo2vw7d+5E37594eDgUOc8tS3TUsxZP+DukejEiRPxww8/IDw8vN52BEHAsWPH0Lp16wbXbCpz1/F+KSkpVepX+mcI3L1C5MKFC3jppZfqbUfKz9BUStoGG0JJ26EY5LoNNoRStkFBEDBlyhT8/PPP2L17N/z9/et9j2y2Q9GGYqvcjz/+KDg4OAjffPONcPr0aWH69OlC48aNK0f9R0ZGChMmTKic/9KlS0KjRo2EGTNmCKdPnxa++eYbwcHBQfjPf/5TOc+vv/4qaLVaISYmRjhz5owQExMj2NvbCwcPHpT9+v3www+Cvb298PnnnwtXr16t/MnLy6ucZ+HChcL27duFixcvCikpKcKkSZMEe3t74dChQ1ZfP0EwfR0/+ugjYePGjcK5c+eE33//XYiMjBQACBs2bKicR8mfYYXnnntOGDBgQI3LlNNnWFBQIKSkpAgpKSkCAOHDDz8UUlJShD/++EMQBOVvg4Jg+joqbTs0df2Utg2aun4VlLINvv7664K7u7uQkJBQ5e/t9u3blfPIdTtkGBLR559/LrRr105wdHQU+vTpU+VywhdeeEEYNmxYlfkTEhKEwMBAwdHRUfDz8xNWrVpVbZk//fST0KVLF8HBwUEICAiospFbmynrN2zYMAFAtZ8XXnihcp7p06cLbdu2FRwdHYWWLVsKoaGhwv79+624RtWZso7Lly8XOnToIDg7OwvNmjUThgwZIsTFxVVbplI/Q0EQhLy8PMHFxUX46quvalyenD7Disusa/ubs4Vt0NR1VNp2aOr6KW0bNOdvVEnbYE3rBkCIjY2tnEeu26HmfytAREREpEocM0RERESqxjBEREREqsYwRERERKrGMERERESqxjBEREREqsYwRERERKrGMERERESqxjBEREREqsYwRERERKrGMERERESqxjBEREREqsYwRERERKr2/9tx8TeXgGd8AAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "%matplotlib inline\n", "fig, ax = plt.subplots(3, 1, sharex=True)\n", "\n", "for i, lab in enumerate([\"A\", \"E\", \"T\"]):\n", " ax[i].plot(np.arange(len(chans[0])) * dt / YRSID_SI, chans[i])\n", " ax[i].set_ylabel(lab)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Custom TDI setup" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here is an example of the 2nd Generation TDI implementation within the code." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "image/png": "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xZz1q7B+/Xq89NJL+Pe//42RI0fWOa+dnR369esnyRFNQ9bxXgMHDqxSvy18hoIg4Ntvv8WECRPg6OhY57xSfoamUtI22FBK2Q7FINdtsCGUtg1OnToVW7ZswZ49e+Dj41PnvHLZDhmGRODo6IigoCDEx8dXmR4fH48HH3ywxvcMGjSo2vw7d+5E37594eDgUOc8tS3TUsxZP+DukejEiRPxww8/IDw8vN52BEHAsWPH0Lp16wbXbCpz1/F+KSkpVepX+mcI3L1C5MKFC3jppZfqbUfKz9BUStoGG0JJ26EY5LoNNoRStkFBEDBlyhT8/PPP2L17N/z9/et9j2y2Q9GGYqvcjz/+KDg4OAjffPONcPr0aWH69OlC48aNK0f9R0ZGChMmTKic/9KlS0KjRo2EGTNmCKdPnxa++eYbwcHBQfjPf/5TOc+vv/4qaLVaISYmRjhz5owQExMj2NvbCwcPHpT9+v3www+Cvb298PnnnwtXr16t/MnLy6ucZ+HChcL27duFixcvCikpKcKkSZMEe3t74dChQ1ZfP0EwfR0/+ugjYePGjcK5c+eE33//XYiMjBQACBs2bKicR8mfYYXnnntOGDBgQI3LlNNnWFBQIKSkpAgpKSkCAOHDDz8UUlJShD/++EMQBOVvg4Jg+joqbTs0df2Utg2aun4VlLINvv7664K7u7uQkJBQ5e/t9u3blfPIdTtkGBLR559/LrRr105wdHQU+vTpU+VywhdeeEEYNmxYlfkTEhKEwMBAwdHRUfDz8xNWrVpVbZk//fST0KVLF8HBwUEICAiospFbmynrN2zYMAFAtZ8XXnihcp7p06cLbdu2FRwdHYWWLVsKoaGhwv79+624RtWZso7Lly8XOnToIDg7OwvNmjUThgwZIsTFxVVbplI/Q0EQhLy8PMHFxUX46quvalyenD7Disusa/ubs4Vt0NR1VNp2aOr6KW0bNOdvVEnbYE3rBkCIjY2tnEeu26HmfytAREREpEocM0RERESqxjBEREREqsYwRERERKrGMERERESqxjBEREREqsYwRERERKrGMERERESqxjBEREREqsYwRERERKrGMERERESqxjBEREREqsYwRERERKr2/9tx8TeXgGd8AAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "X1 = [\n", " {\"link\": 13, \"links_for_delay\": [], \"sign\": +1},\n", " {\"link\": 31, \"links_for_delay\": [13], \"sign\": +1},\n", " {\"link\": 12, \"links_for_delay\": [13, 31], \"sign\": +1},\n", " {\"link\": 21, \"links_for_delay\": [13, 31, 12], \"sign\": +1},\n", " {\"link\": 12, \"links_for_delay\": [], \"sign\": -1},\n", " {\"link\": 21, \"links_for_delay\": [12], \"sign\": -1},\n", " {\"link\": 13, \"links_for_delay\": [12, 21], \"sign\": -1},\n", " {\"link\": 31, \"links_for_delay\": [12, 21, 13], \"sign\": -1},\n", "]\n", "\n", "X2 = X1 + [\n", " {\"link\": 12, \"links_for_delay\": [13, 31, 12, 21], \"sign\": +1},\n", " {\"link\": 21, \"links_for_delay\": [13, 31, 12, 21, 12], \"sign\": +1},\n", " {\n", " \"link\": 13,\n", " \"links_for_delay\": [13, 31, 12, 21, 12, 21],\n", " \"sign\": +1,\n", " },\n", " {\n", " \"link\": 31,\n", " \"links_for_delay\": [13, 31, 12, 21, 12, 21, 13],\n", " \"sign\": +1,\n", " },\n", " {\"link\": 13, \"links_for_delay\": [12, 21, 13, 31], \"sign\": -1},\n", " {\"link\": 13, \"links_for_delay\": [12, 21, 13, 31, 13], \"sign\": -1},\n", " {\n", " \"link\": 13,\n", " \"links_for_delay\": [12, 21, 13, 31, 13, 31],\n", " \"sign\": -1,\n", " },\n", " {\n", " \"link\": 13,\n", " \"links_for_delay\": [12, 21, 13, 31, 13, 31, 12],\n", " \"sign\": -1,\n", " },\n", " ]\n", "\n", "tdi_kwargs_custom = dict(\n", " order=order, tdi=X2, tdi_chan=\"AET\",\n", ")\n", "\n", "gb_lisa_custom = ResponseWrapper(\n", " gb,\n", " T,\n", " t0,\n", " dt,\n", " index_lambda,\n", " index_beta,\n", " flip_hx=False, # set to True if waveform is h+ - ihx\n", " use_gpu=use_gpu,\n", " remove_sky_coords=True, # True if the waveform generator does not take sky coordinates\n", " is_ecliptic_latitude=True, # False if using polar angle (theta)\n", " remove_garbage=True, # removes the beginning of the signal that has bad information\n", " orbits=EqualArmlengthOrbits(),\n", " **tdi_kwargs_custom,\n", ")\n", "\n", "chans = gb_lisa_esa(A, f, fdot, iota, phi0, psi, lam, beta)\n", "\n", "fig, ax = plt.subplots(3, 1, sharex=True)\n", "\n", "for i, lab in enumerate([\"A\", \"E\", \"T\"]):\n", " ax[i].plot(np.arange(len(chans[0])) * dt / YRSID_SI, chans[i])\n", " ax[i].set_ylabel(lab)" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.8" } }, "nbformat": 4, "nbformat_minor": 4 }