{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## GBGPU Tutorial" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "`GBGPU` is a GPU-accelerated version of the `FastGB` waveform which has been developed by Neil Cornish, Tyson Littenberg, Travis Robson, and Stas Babak. It computes gravitational waveforms for Galactic binary systems observable by LISA using a fast/slow-type decomposition. For more details on the original construction of `FastGB` see [arXiv:0704.1808](https://arxiv.org/abs/0704.1808).\n", "\n", "The current version of the code is very closely related to the implementation of `FastGB` in the LISA Data Challenges' Python code package. The waveform code is entirely Python-based. It is about 1/2 the speed of the full C version, but much simpler in Python for right now. There are also many additional functions including fast likelihood computations for individual Galactic binaries, as well as fast C-based methods to combine waveforms into global fitting templates. \n", "\n", "The code is CPU/GPU agnostic. CUDA and NVIDIA GPUs are required to run these codes for GPUs.\n", "\n", "See the [documentation](https://mikekatz04.github.io/GBGPU) for more details. This code was designed for [arXiv:2205.03461](https://arxiv.org/abs/2205.03461). If you use any part of this code, please cite [arXiv:2205.03461](https://arxiv.org/abs/2205.03461), its [Zenodo page](https://zenodo.org/records/16999246), [arXiv:0704.1808](https://arxiv.org/abs/0704.1808), and [arXiv:1806.00500](https://arxiv.org/abs/1806.00500). " ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "execution": { "iopub.execute_input": "2025-09-18T19:02:33.415261Z", "iopub.status.busy": "2025-09-18T19:02:33.415042Z", "iopub.status.idle": "2025-09-18T19:02:34.893682Z", "shell.execute_reply": "2025-09-18T19:02:34.893171Z" } }, "outputs": [], "source": [ "import numpy as np\n", "import time\n", "\n", "import matplotlib.pyplot as plt\n", "%matplotlib inline\n", "\n", "from gbgpu.gbgpu import GBGPU\n", "from gbgpu.thirdbody import GBGPUThirdBody\n", "\n", "from lisatools.utils.constants import *\n", "from gbgpu.utils.utility import *" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Generating Galactic binary waveforms" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Initialize the waveform class." ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "execution": { "iopub.execute_input": "2025-09-18T19:02:34.895965Z", "iopub.status.busy": "2025-09-18T19:02:34.895685Z", "iopub.status.idle": "2025-09-18T19:02:35.099173Z", "shell.execute_reply": "2025-09-18T19:02:35.098504Z" } }, "outputs": [], "source": [ "gb = GBGPU(force_backend=\"cpu\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Setup all the binary information. GBGPU operates in a vectorized manner, so it takes arrays of parameters as inputs." ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "execution": { "iopub.execute_input": "2025-09-18T19:02:35.101418Z", "iopub.status.busy": "2025-09-18T19:02:35.101222Z", "iopub.status.idle": "2025-09-18T19:02:35.105837Z", "shell.execute_reply": "2025-09-18T19:02:35.105245Z" } }, "outputs": [], "source": [ "dt = 10.0\n", "YEAR = YRSID_SI\n", "Tobs = 1.0 * YEAR\n", "\n", "\n", "# number of points in waveform\n", "# if None, will determine inside the code based on amp, f0 (and P2 if running third-body waveform)\n", "N = None\n", "\n", "# number of binaries to batch\n", "num_bin = 10\n", "\n", "# parameters\n", "amp = 2e-23 # amplitude\n", "f0 = 2e-3 # f0\n", "fdot = 7.538331e-18 # fdot\n", "fddot = 0.0 # fddot\n", "phi0 = 0.1 # initial phase\n", "iota = 0.2 # inclination\n", "psi = 0.3 # polarization angle\n", "lam = 0.4 # ecliptic longitude\n", "beta_sky = 0.5 # ecliptic latitude\n", "\n", "\n", "# for batching\n", "amp_in = np.full(num_bin, amp)\n", "f0_in = np.full(num_bin, f0)\n", "fdot_in = np.full(num_bin, fdot)\n", "fddot_in = np.full(num_bin, fddot)\n", "phi0_in = np.full(num_bin, phi0)\n", "iota_in = np.full(num_bin, iota)\n", "psi_in = np.full(num_bin, psi)\n", "lam_in = np.full(num_bin, lam)\n", "beta_sky_in = np.full(num_bin, beta_sky)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Generate the waveforms." ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "execution": { "iopub.execute_input": "2025-09-18T19:02:35.107592Z", "iopub.status.busy": "2025-09-18T19:02:35.107425Z", "iopub.status.idle": "2025-09-18T19:02:35.230250Z", "shell.execute_reply": "2025-09-18T19:02:35.229702Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "signal length: (128,)\n" ] }, { "data": { "text/plain": [ "(0.0019993, 0.0020007000000000002)" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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XXcdlixZgrFjx6KkpATff/+97+vvvfcebrvtNjQ0NKBfv3644oorUF1djfXr1+PWW2/F119/jTfeeCPoMU+ePImxY8f69uivuuoqyLKMt99+G0uWLMHZZ5/dZM2yLOPKK6/E0qVLYbFYMHbsWGRnZ+PUqVPYs2cP/vKXv+Dmm28O+g2xJZ9++ikcDgcuuugiaDTqJ53PPPNMTJ48OeTXjh07hq+++gqAp/YlULdu3TB48GBs2rQJGzduxKhRo1RfGyXX9u3b4Xa70bdv36D77XY7unTpAgDYtWsXSkpKWnychx56CLNnzwbg+fkYPny4r1ZkyJAh2LFjB1599VXf/4e//vWv8dZbb/m+v66uDhMmTAj6f9BmszV5nh07duDqq6/GY489hksvvdR3/9atW/HNN98EZVzcbjcaGhpQV1eHtLQ0nHfeeVi/fn2zf4fc3FyUlpYG3ffvf/8bVqsVW7duxYMPPojnnnsOf/jDH1p8LQIxgCFqx6655hpcc801uP3227Fv3z786le/wu233x7y2sOHD0OWZWzfvr3JG+727dtx6623QpIkvP/++0HFiocOHcLEiRMxf/58jB8/Hrfddpvva9OnT8eePXswduxYfPzxx8jKygIAVFRU4IorrsDixYubrGP16tVYunQphgwZghUrViAzMzPo65s2bUJhYWHYr8HXX38NAHELEM4//3ycf/75Te6vqqry3f/AAw+EXPPo0aOxadMmLF26lAFMO2Sz2aDVavHtt982CWAzMjIAAL169cIPP/zQ4uMowQ4A5OXloX///kFfLykpwfvvv+/7/M9//jMeeOAB3+fjx4/Hs88+i5EjRzb7HDt37sTFF1+MqVOn4pFHHmny93jiiSdCFimbTCYAnmCkpVN1Ol3TcEP5mejfvz/cbjemTp2K+++/v8lr1exjhnUVEXUIzzzzTJPgBQCefvpp2O12PPfcc03exIqLizFv3jyMGDECL774oi+AOXLkCP773/9CkiS8+uqrvuAFADp37oxXX30VQ4YMafJcJ0+eBACMHTu2SfACAMOHD4/o7/Tdd98BQKu/5QLAGWecEdFjN8fhcODaa6/F999/jxtuuAFz5swJeZ2Sgdq8ebMqz0upZciQIXC73SgrK8PYsWNDXmMwGJpkQ1syZswY7N69O+i+H3/8EcXFxb7Pc3JykJOT4/tcp9OhoKDAl31t7Pvvv8dFF12EyZMnh6xrGTp0KHbv3t3s9wMIev5oyLIMp9MJWZYZwBBR5K6//vom98myjM8++wwAcMMNN4T8vuHDhyMjIwPfffcdGhoaYDKZsHLlSsiyjGHDhjX5jRHwbG8NHDgQ27ZtC7p/6NCh0Gq1eOONN9C3b19cd911yMvLi/rvpAREgb/FNuf666/3/WYcysKFC1t9DCEEbr/9dixfvhwXXHABFi5cCEmSQl6rrElZI7U9NpsNe/fu9X1+4MABbNmyBZ07d0bfvn1xyy234LbbbsNf//pXDBkyBKdOncLSpUsxcOBAXHnllRE/37333ovRo0fjmWeewc9//nNs2LABr7/+etTF4Dt27MBFF12Eyy67DPfdd59vm0er1aJbt24AgEcffRRXXXUVioqK8LOf/QwajQZbt27Fjh078NRTT0X8nG+//Tb0ej0GDBgAo9GITZs2YebMmbjhhhug1+vDf6CYKnCIqE1orlhWCH8Ra05OTsjvLSsrC6tIVbkdPXpUCCHE7NmzBQDxs5/9rNl1XX311SHX9eKLL/qK++AtML7xxhvFW2+9Jex2e0R/d71e32KBrtrHqB966CEBQPTv319UVFS0+HhffPGFACBKSkpa+VtQqlq2bFnIn4PJkycLIYRwOBzi0UcfFT179hR6vV7k5eWJa6+9Vmzbti3q5/z444/FOeecI4xGo+jXr594/fXXW7y+pSLe5gr9i4uLg65bsmSJGD16tDCbzcJisYgRI0a0+rzNWbRoka9APz09XfTv318888wzor6+PqLHYQaGiAAAZrM55P2yLPv+3FyxaiCj0RjzWn7729/i5z//ORYvXozVq1dj9erVWLRoERYtWoTHHnsMq1atCjsroxQA19TUxLyu1rzyyit49tlnkZeXh08//bTF5mKA57gqgFavo9Q1fvx4CCGa/bper8cTTzyBJ554QrXnvOqqq3DVVVeFfX1LHaYff/xxPP74460+xmWXXYbLLrss7OdsyQ033NBsNjcSDGCIqEVdu3aF2WxGfX09nnvuOXTt2jWs7ysoKADQ8ptnS1/Lzc3FnXfeiTvvvBOA57TGlClTsHbtWsyYMSOs7RzAUw9w6tQplJeXh3V9tD7++GP89re/RWZmJv73v/+FVROgrCk3NzeuayNqj9jIjohapNVq8ZOf/AQA8O6774b9fRdccAEkScLmzZuxa9euJl/funVrk/qXlvTr1w8PPfQQAM9ohHANHToUgOeURbxs3LgRN954IyRJwnvvvReyODmUHTt2AACGDRsWt7URtVcMYIioVY899hgMBgMefPBBLFy4MGhbSbFjxw7897//9X1eVFSEa6+9FrIs4+677w7awqmsrMRvfvObkKn3r7/+Gp9++mmTwW5CCHzyyScAIjvxcOGFFwIA1q5dG/b3RGL//v246qqrUFdXh9dffz2iNPuaNWsAABdddFFc1kbUnnELiYhaNXToULz11lu4/fbbcfvtt+ORRx5B//790a1bN1RUVGD79u04evQobrjhhqBj1i+//DK2bt2K5cuX44wzzvDVCyxbtgxdunTBT3/60ya9YLZt24Z7770XFosFQ4cORX5+Purr67F582YcOnQIWVlZ+POf/xz22q+44gro9Xp8/fXXcLvdYR/RDNfTTz+NsrIydOvWDStWrMCKFStCXtd4++3UqVPYtm0b8vPzce6556q6JqKOgAEMEYVl0qRJOPfcc/Hiiy/iyy+/xDfffAO3243c3FyceeaZmD59On72s58FfU/37t2xfv16PPHEE/jggw/wySefICcnBzfeeCOefPLJoGZbiokTJ6K6uhqrVq3Cnj17sG7dOpjNZhQWFmLGjBmYNm0aevToEfa6c3NzMWnSJLzzzjv44osvMGHChJhfi0ButxuAJyBpqS7n8ccfDwpg3nrrLbhcLtx1110hm3wRUcsk0VL5NBFRHN1+++1YuHAh5s+f32yHYDVs3LgRI0aMwHXXXRfUsTRZhBAYNGgQ9u7di/3796N79+7JXhJRm8MaGCJq984991zcfPPN+OCDDyIqHI6X//znP9i+fTseeughBi9EUWIAQ0Qdwpw5c5CWloaHH344qetwu93405/+hKKioogG1xFRMG68ElGHUFBQEHICb6JptdqQx8qJKDKsgSEiIqI2h1tIRERE1OYwgCEiIqI2hwEMERERtTkMYIiIiKjNYQBDREREbQ4DGCIiImpzGMAQERFRm8MAhoiIiNocBjBERETU5vx/WxNAqMIUAhgAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "params = np.array(\n", " [amp_in, f0_in, fdot_in, fddot_in, phi0_in, iota_in, psi_in, lam_in, beta_sky_in,]\n", ")\n", "\n", "gb.run_wave(*params, N=N, dt=dt, T=Tobs, oversample=2)\n", "\n", "# signal from first binary\n", "A = gb.A[0]\n", "freqs = gb.freqs[0]\n", "print(\"signal length:\", A.shape)\n", "plt.plot(freqs, np.abs(A))\n", "plt.ylabel(\"TDI-A Channel\", fontsize=16)\n", "plt.xlabel(\"freqs (Hz)\", fontsize=16)\n", "dx = 7e-7\n", "plt.xlim(f0 - dx, f0 + dx)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Adding additional GB astrophysics" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "It is possible in `GBGPU` to inherit [`gbgpu.gbgpu.GBGPUBase`)](https://mikekatz04.github.io/GBGPU/user/derivedwaves.html#gbgpu.gbgpu.GBGPUBase) that allows users to add other types of astrophysics to the FastGB waveform. This requires that the astrophysical effects vary slowly.\n", "\n", "The methods that need to be written when adding astrophysics are `prepare_additional_args`, `special_get_N`, `shift_frequency`, and `add_to_argS`.\n", "\n", "`prepare_additional_args`: Prepares all arguments beyond the base GB parameters.\n", "\n", "`special_get_N`: Implemented if the new setup puts limitations on the sampling rate in the time-domain for the slow part of the waveform. \n", "\n", "`shift_frequency`: Shifts the frequency in the slow computation. \n", "\n", "`add_to_argS`: Adjusts the phasing in the transfer function of the slow waveform. \n", "\n", "See [`gbgpu.thirdbody.GBGPUThirdBody`](https://mikekatz04.github.io/GBGPU/user/derivedwaves.html#gbgpu.thirdbody.GBGPUThirdBody) for an example and more information." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example: Third-body in orbit around the inner binary" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "execution": { "iopub.execute_input": "2025-09-18T19:02:35.232387Z", "iopub.status.busy": "2025-09-18T19:02:35.232097Z", "iopub.status.idle": "2025-09-18T19:02:35.465412Z", "shell.execute_reply": "2025-09-18T19:02:35.464721Z" } }, "outputs": [], "source": [ "gb_third = GBGPUThirdBody(force_backend=\"cpu\")\n", "\n", "A2 = 400.0 # third body amplitude parameter\n", "varpi = 0.0 # varpi phase parameter\n", "e2 = 0.3 # eccentricity of third body\n", "P2 = 1.2 # period of third body\n", "T2 = 0.5 * P2 # time of periapsis passage of third body\n", "\n", "\n", "A2_in = np.full(num_bin, A2)\n", "P2_in = np.full(num_bin, P2)\n", "varpi_in = np.full(num_bin, varpi)\n", "e2_in = np.full(num_bin, e2)\n", "T2_in = np.full(num_bin, T2)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "execution": { "iopub.execute_input": "2025-09-18T19:02:35.467579Z", "iopub.status.busy": "2025-09-18T19:02:35.467384Z", "iopub.status.idle": "2025-09-18T19:02:35.575581Z", "shell.execute_reply": "2025-09-18T19:02:35.574892Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Third-body signal length: (128,)\n" ] }, { "data": { "text/plain": [ "(0.0019993, 0.0020007000000000002)" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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EINQMBiksrKy18cMyX1gTNNk06ZNlJeXo2laqYdDa2srDQ0NrF+/Xval6UDel57Je9MzeW96Ju9Nz+S96dlAem+UUgSDQcaMGYPD0XuXy5CswDgcDsaNG1fqYXRRUVFR8r8cA5G8Lz2T96Zn8t70TN6bnsl707OB8t70VXlJkSZeIYQQQgw6EmCEEEIIMehIgCkCj8fD1VdfjcfjKfVQBhR5X3om703P5L3pmbw3PZP3pmeD9b0Zkk28QgghhBjapAIjhBBCiEFHAowQQgghBh0JMEIIIYQYdCTA9IPm5mbOOussKioqqKqq4pvf/CahUKjP5y1atIgjjjiCQCBARUUFhx56KJFIpAgjLp5c3xuwNjg6/vjj0TSNxx9/vH8HWgLZvjfNzc1873vfY++998bn8zF+/Hj++7//m5aWliKOun/ceeedTJgwAa/Xy0EHHcRbb73V6+MfffRRpkyZgtfrZfr06Tz11FNFGmnxZfPe3HPPPcybN4/q6mqqq6s56qij+nwvB7Ns/96kPPzww2iaxhe/+MX+HWAJZfve7Nq1i4suuoj6+no8Hg+TJ08eeP+ulCi44447Tu23337qjTfeUK+88orac8891Ve/+tVen/P666+riooKdeONN6oVK1aojz76SD3yyCMqGo0WadTFkct7k3Lbbbep448/XgHqscce69+BlkC2783y5cvVaaedphYsWKA++eQTtXDhQrXXXnupL33pS0UcdeE9/PDDyu12q/vuu0+9//776oILLlBVVVVq69at3T7+tddeU7quq1tuuUV98MEH6qc//alyuVxq+fLlRR55/8v2vfna176m7rzzTvXee++pDz/8UJ177rmqsrJSbdiwocgj73/Zvjcpa9euVWPHjlXz5s1Tp5xySnEGW2TZvjexWEzNmTNHnXDCCerVV19Va9euVS+++KJasmRJkUfeOwkwBfbBBx8oQL399tvp255++mmlaZrauHFjj8876KCD1E9/+tNiDLFkcn1vlFLqvffeU2PHjlWbN28ekgEmn/emo7/97W/K7XarRCLRH8MsigMPPFBddNFF6c8Nw1BjxoxRN954Y7eP/8pXvqJOPPHETrcddNBB6lvf+la/jrMUsn1vdpdMJlV5ebl68MEH+2uIJZPLe5NMJtUhhxyi/vjHP6pzzjlnyAaYbN+b3//+92rixIkqHo8Xa4g5kSmkAlu0aBFVVVXMmTMnfdtRRx2Fw+HgzTff7PY5TU1NvPnmm9TW1nLIIYdQV1fH/PnzefXVV4s17KLI5b0BCIfDfO1rX+POO+9k9OjRxRhq0eX63uyupaWFiooKnM7BeUpIPB7nnXfe4aijjkrf5nA4OOqoo1i0aFG3z1m0aFGnxwMce+yxPT5+sMrlvdldOBwmkUhQU1PTX8MsiVzfm1/84hfU1tbyzW9+sxjDLIlc3psFCxZw8MEHc9FFF1FXV8e+++7LDTfcgGEYxRp2RiTAFNiWLVuora3tdJvT6aSmpoYtW7Z0+5w1a9YAcM0113DBBRfwzDPPMHv2bI488khWrVrV72MullzeG4BLLrmEQw45hFNOOaW/h1gyub43HW3fvp1f/vKXXHjhhf0xxKLYvn07hmFQV1fX6fa6uroe34ctW7Zk9fjBKpf3ZndXXHEFY8aM6RL4Brtc3ptXX32Ve++9l3vuuacYQyyZXN6bNWvW8Pe//x3DMHjqqaf42c9+xq9//Wuuu+66Ygw5YxJgMnTllVeiaVqvHx999FFO1zZNE4BvfetbnHfeecyaNYvf/OY37L333tx3332F/DL6RX++NwsWLOD555/n9ttvL+ygi6Q/35uOWltbOfHEE5k2bRrXXHNN/gMXQ85NN93Eww8/zGOPPYbX6y31cEoqGAzyjW98g3vuuYeRI0eWejgDjmma1NbWcvfdd7P//vtzxhln8JOf/IS77rqr1EPrZHDWmUvg0ksv5dxzz+31MRMnTmT06NE0NTV1uj2ZTNLc3Nzj9Ed9fT0A06ZN63T71KlTWbduXe6DLpL+fG+ef/55Vq9eTVVVVafbv/SlLzFv3jxefPHFPEbe//rzvUkJBoMcd9xxlJeX89hjj+FyufIddsmMHDkSXdfZunVrp9u3bt3a4/swevTorB4/WOXy3qTceuut3HTTTfznP/9hxowZ/TnMksj2vVm9ejWffvopJ598cvq21C+STqeTlStXMmnSpP4ddJHk8vemvr4el8uFruvp26ZOncqWLVuIx+O43e5+HXPGSt2EM9SkmjEXL16cvu3ZZ5/ttRnTNE01ZsyYLk28M2fOVFdddVW/jreYcnlvNm/erJYvX97pA1C//e1v1Zo1a4o19H6Xy3ujlFItLS3qc5/7nJo/f75qa2srxlD73YEHHqguvvji9OeGYaixY8f22sR70kkndbrt4IMPHrJNvNm8N0opdfPNN6uKigq1aNGiYgyxZLJ5byKRSJfvK6eccoo64ogj1PLly1UsFivm0Ptdtn9vrrrqKtXY2KgMw0jfdvvtt6v6+vp+H2s2JMD0g+OOO07NmjVLvfnmm+rVV19Ve+21V6flsBs2bFB77723evPNN9O3/eY3v1EVFRXq0UcfVatWrVI//elPldfrVZ988kkpvoR+k8t7szuG4CokpbJ/b1paWtRBBx2kpk+frj755BO1efPm9EcymSzVl5G3hx9+WHk8HvXAAw+oDz74QF144YWqqqpKbdmyRSml1De+8Q115ZVXph//2muvKafTqW699Vb14YcfqquvvnpIL6PO5r256aablNvtVn//+987/f0IBoOl+hL6Tbbvze6G8iqkbN+bdevWqfLycnXxxRerlStXqn/961+qtrZWXXfddaX6ErolAaYf7NixQ331q19VZWVlqqKiQp133nmdvmGsXbtWAeqFF17o9Lwbb7xRjRs3Tvn9fnXwwQerV155pcgj73+5vjcdDdUAk+1788ILLyig24+1a9eW5osokDvuuEONHz9eud1udeCBB6o33ngjfd/8+fPVOeec0+nxf/vb39TkyZOV2+1W++yzj/q///u/Io+4eLJ5bxobG7v9+3H11VcXf+BFkO3fm46GcoBRKvv35vXXX1cHHXSQ8ng8auLEier6668fcL8YyWnUQgghhBh0ZBWSEEIIIQYdCTBCCCGEGHQkwAghhBBi0JEAI4QQQohBRwKMEEIIIQYdCTBCCCGEGHQkwAghhBBi0JEAI4QQQohBRwKMEMPEk08+ybx586ioqEifhD3QD8MspE2bNlFeXt7pAD+ATz/9NP1+fPrpp71eoxDvm2EYTJkyhcbGRiKRSM7XEQPDyy+/zMknn8yYMWPQNI3HH3+8319z48aNfP3rX2fEiBH4fD6mT5/O4sWLc7rW0qVL+epXv0pDQwM+n4+pU6fy29/+tsAj7mzlypUcfvjh1NXV4fV6mThxIj/96U9JJBJZXUdOoxZiGFiyZAlf+tKXME2TI444gvr6ejRNG3InNvfm8ssvJxwOc8MNN5R0HLquc91113H66adzyy23cPXVV5d0PCI/bW1t7Lfffpx//vmcdtpp/f56O3fuZO7cuRx++OE8/fTTjBo1ilWrVlFdXd3jcyZMmMADDzzAYYcd1uW+d955h9raWh566CEaGhp4/fXXufDCC9F1nYsvvrhfvgaXy8XZZ5/N7NmzqaqqYunSpVxwwQWYppndv89Sn2UghOh/V199tQLUj3/841IPpSTeeustBajTTz+9y32pM6bI4Ayp1ON6O6srU9OnT1c+n09t3rw572uJgYFuzmmLRqPq0ksvVWPGjFF+v18deOCBef39ueKKK9TnP//5rJ7T2NiY1Wt+97vfVYcffnin2x5//HE1a9Ys5fF41B577KGuueYalUgkshpHby655JKsvy6ZQhJiGFi3bh0Ae+21V4lHUhq33347AN/85jdLO5AOzj//fCKRCHfffXephyL60cUXX8yiRYt4+OGHWbZsGaeffjrHHXccq1atyul6CxYsYM6cOZx++unU1tYya9Ys7rnnnoKOuaWlhZqamvTnr7zyCmeffTbf//73+eCDD/jDH/7AAw88wPXXX1+Q1/vkk0945plnmD9/fnZPLFh8EkIMOKnKS3cf8+fPV0q1VyAaGxtVMplUv/71r9XMmTNVIBBQu3+LWLlypbrwwgvVxIkTlcfjURUVFWrevHnqz3/+c49j2LFjh/r+97+fPgm3oaFBXXTRRWrHjh3qnHPOUYC6//77Oz0nGo2qW265Rc2ePVuVlZUpl8ul6urq1Jw5c9Tll1+uduzYkfF7sGXLFuV2u9WYMWOUYRhd7s+3AnP//ff3+B53/Nj92k1NTcrpdKoxY8YU9DdZUTrsVoH57LPPlK7rauPGjZ0ed+SRR6qrrroqp9fweDzK4/Goq666Sr377rvqD3/4g/J6veqBBx7o8TnZVGBee+015XQ61bPPPttpvDfccEOnx/35z39W9fX1OX0NKQcffLDyeDwKUBdeeGG3/z57Iz0wQgxhM2fO5JxzzuHVV19l9erVzJ07lz333BOAKVOmdHqsUorTTjuNZ555hnnz5jF16lTef//99P2PPvooZ599NtFolClTpnDCCSfQ0tLCm2++yTe+8Q2ef/557rvvvk7X3Lp1K/PmzUvP0Z900kmYpslf/vIXnnnmGfbZZ58uYzZNkxNPPJGFCxdSUVHBvHnzqKqqYtu2baxatYpf/epXfO1rX+v0G2JvnnrqKeLxOEcccQQOR+GLznvuuSfnnHNOt/dt3LiR//znP4DV+9LRqFGjmDlzJosXL+btt9/m4IMPLvjYRGktX74cwzCYPHlyp9tjsRgjRowA4KOPPmLq1Km9XueKK67gpptuAqx/H3PmzEn3isyaNYsVK1Zw1113pf8efvvb3+ahhx5KPz8cDnP88cd3+jsYCoW6vM6KFSs45ZRTuPrqqznmmGPSty9dupTXXnutU8XFMAyi0SjhcBi/38/nPvc53nzzzR6/hrq6OrZs2dLptkceeYRgMMjSpUu5/PLLufXWW/nRj37U63vRkQQYIYawL37xi3zxi1/k3HPPZfXq1fzXf/0X5557brePXbduHaZpsnz58i7fcJcvX843vvENNE3jH//4R6dmxc8++4yTTz6Z+++/n8MOO4yzzz47fd/FF1/MqlWrmDdvHk8++SSVlZUANDc3c8IJJ7BgwYIu43j11VdZuHAhs2bN4qWXXqK8vLzT/YsXL6ahoSHj9+D5558H6LeA8PnPf57Pf/7zXW7ftWtX+vbLLrus2zEfcsghLF68mIULF0qAGYJCoRC6rvPOO+90CbBlZWUATJw4kQ8//LDX66TCDkB9fT3Tpk3rdP/UqVP5xz/+kf78F7/4BZdddln688MOO4ybb76Zgw46qMfX+OCDDzjyyCO58MIL+elPf9rl67j22mu7bVL2er2AFUZ6W1XndHaNG6l/E9OmTcMwDC688EIuvfTSLu9Vj9fM6FFCiGHhhhtu6BJeAK6//npisRi33nprl29ijY2N3HvvvRx44IH87ne/SweY9evX889//hNN07jrrrvS4QWgpqaGu+66i1mzZnV5ra1btwIwb968LuEFYM6cOVl9Te+99x5An7/lAuyxxx5ZXbsn8XicU089lffff58zzjiDW265pdvHpSpQ7777bkFeVwwss2bNwjAMmpqamDdvXrePcbvdXaqhvZk7dy4rV67sdNvHH39MY2Nj+vPa2lpqa2vTnzudTsaOHZuuvu7u/fff54gjjuCcc87ptq9l9uzZrFy5ssfnA51ePxemaZJIJDBNUwKMECJ7X/rSl7rcZpomTz/9NABnnHFGt8+bM2cOZWVlvPfee0SjUbxeLy+//DKmabL//vt3+Y0RrOmtGTNmsGzZsk63z549G13Xue+++5g8eTKnnXYa9fX1OX9NqUDU8bfYnnzpS19K/2bcnQcffLDPayilOPfcc3nxxRc59NBDefDBB9E0rdvHpsaUGqMYfEKhEJ988kn687Vr17JkyRJqamqYPHkyZ511FmeffTa//vWvmTVrFtu2bWPhwoXMmDGDE088MevXu+SSSzjkkEO44YYb+MpXvsJbb73F3XffnXMz+IoVKzjiiCM49thj+eEPf5ie5tF1nVGjRgHw85//nJNOOonx48fz5S9/GYfDwdKlS1mxYgXXXXdd1q/5l7/8BZfLxfTp0/F4PCxevJirrrqKM844A5fLlfmF8urAEUIMCj01yyrV3sRaW1vb7XObmpoyalJNfWzYsEEppdRNN92kAPXlL3+5x3Gdcsop3Y7rd7/7Xbq5D7vB+Mwzz1QPPfSQisViWX3tLper1wbdQi+jvuKKKxSgpk2bppqbm3u93nPPPacANXXq1D6+CjFQvfDCC93+OzjnnHOUUkrF43H185//XE2YMEG5XC5VX1+vTj31VLVs2bKcX/PJJ59U++67r/J4PGrKlCnq7rvv7vXxvTXx9tTo39jY2OlxzzzzjDrkkEOUz+dTFRUV6sADD+zzdXvy8MMPpxv0A4GAmjZtmrrhhhtUJBLJ6jpSgRFCAODz+bq93TTN9J97albtyOPx5D2W733ve3zlK19hwYIFvPrqq7z66qs8/PDDPPzww1x99dW88sorGVdlUg3Ara2teY+rL7///e+5+eabqa+v56mnnup1czGwlqsCfT5ODFyHHXYYSqke73e5XFx77bVce+21BXvNk046iZNOOinjx/e2w/Q111zDNddc0+c1jj32WI499tiMX7M3Z5xxRo/V3GxIgBFC9GrkyJH4fD4ikQi33norI0eOzOh5Y8eOBXr/5tnbfXV1dVxwwQVccMEFgLVa4/zzz2fRokVceeWVGU3ngNUPsG3bNnbs2JHR43P15JNP8r3vfY/y8nL+7//+L6OegNSY6urq+nVsQgxFspGdEKJXuq5z9NFHA/C3v/0t4+cdeuihaJrGu+++y0cffdTl/qVLl3bpf+nNlClTuOKKKwDraIRMzZ49G7BWWfSXt99+mzPPPBNN03j00Ue7bU7uzooVKwDYf//9+21sQgxVEmCEEH26+uqrcbvdXH755Tz44IOdppVSVqxYwT//+c/05+PHj+fUU0/FNE2+853vdJrC2blzJ9/97ne7Lb0///zzPPXUU10OdlNK8a9//QvIbsXD4YcfDsCiRYsyfk421qxZw0knnUQ4HObuu+/Oqsz++uuvA3DEEUf0y9iEGMpkCkkI0afZs2fz0EMPce6553Luuefy05/+lGnTpjFq1Ciam5tZvnw5GzZs4Iwzzui0zPrOO+9k6dKlvPjii+yxxx7pfoEXXniBESNG8IUvfKHLXjDLli3jkksuoaKigtmzZzNmzBgikQjvvvsun332GZWVlfziF7/IeOwnnHACLpeL559/HsMwMl6imanrr7+epqYmRo0axUsvvcRLL73U7eN2n37btm0by5YtY8yYMRxwwAEFHZMQw4EEGCFERk4//XQOOOAAfve73/Hvf/+b1157DcMwqKurY8899+Tiiy/my1/+cqfnjB49mjfffJNrr72Wxx57jH/961/U1tZy5pln8stf/rLTZlspJ598Mi0tLbzyyiusWrWKN954A5/PR0NDA1deeSUXXXQR48aNy3jcdXV1nH766fz1r3/lueee4/jjj8/7vejIMAzACiS99eVcc801nQLMQw89RDKZ5Fvf+la3m3wJIXqnqd7ap4UQoh+de+65PPjgg9x///097hBcCG+//TYHHnggp512WqcdS0tFKcV+++3HJ598wpo1axg9enSphyTEoCM9MEKIIe+AAw7ga1/7Go899lhWjcP95e9//zvLly/niiuukPAiRI4kwAghhoVbbrkFv9/Pj3/845KOwzAMfvaznzF+/PisDq4TQnQmE69CiGFh7Nix3Z7AW2y6rne7rFwIkR3pgRFCCCHEoCNTSEIIIYQYdCTACCGEEGLQkQAjhBBCiEFHAowQQgghBh0JMEIIIYQYdCTACCGEEGLQkQAjhBBCiEFHAowQQgghBh0JMEIIIYQYdP4/4iPVAPsQj/kAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "params = np.array(\n", " [amp_in, f0_in, fdot_in, fddot_in, phi0_in, iota_in, psi_in, lam_in, beta_sky_in, A2_in, varpi_in, e2_in, P2_in, T2_in]\n", ")\n", "\n", "gb_third.run_wave(*params, N=N, dt=dt, T=Tobs, oversample=2)\n", "\n", "# signal from first binary\n", "A_third = gb_third.A[0]\n", "freqs = gb_third.freqs[0]\n", "print(\"Third-body signal length:\", A_third.shape)\n", "plt.plot(freqs, np.abs(A), label=\"No third body\")\n", "plt.plot(freqs, np.abs(A_third), label=\"No third body\")\n", "plt.ylabel(\"TDI-A Channel\", fontsize=16)\n", "plt.xlabel(\"freqs (Hz)\", fontsize=16)\n", "dx = 7e-7\n", "plt.xlim(f0 - dx, f0 + dx)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Calculating the Information Matrix" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "execution": { "iopub.execute_input": "2025-09-18T19:02:35.577505Z", "iopub.status.busy": "2025-09-18T19:02:35.577315Z", "iopub.status.idle": "2025-09-18T19:02:35.861794Z", "shell.execute_reply": "2025-09-18T19:02:35.861153Z" } }, "outputs": [ { "data": { "text/plain": [ "(10, 8, 8)" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "params = np.array(\n", " [amp_in, f0_in, fdot_in, fddot_in, phi0_in, iota_in, psi_in, lam_in, beta_sky_in,]\n", ")\n", "\n", "inds = np.array([0, 1, 2, 4, 5, 6, 7, 8])\n", "\n", "info_matrix = gb.information_matrix(\n", " params,\n", " easy_central_difference=False,\n", " eps=1e-9,\n", " inds=inds,\n", " N=1024,\n", " dt=dt,\n", " T=Tobs,\n", ")\n", "\n", "cov = np.linalg.pinv(info_matrix)\n", "\n", "cov.shape" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Covariance Matrix for first binary:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "execution": { "iopub.execute_input": "2025-09-18T19:02:35.863655Z", "iopub.status.busy": "2025-09-18T19:02:35.863463Z", "iopub.status.idle": "2025-09-18T19:02:35.867884Z", "shell.execute_reply": "2025-09-18T19:02:35.867418Z" } }, "outputs": [ { "data": { "text/plain": [ "array([[ 1.03442737e-02, -2.87238449e-09, -4.15993568e-06,\n", " 8.57639087e-05, -4.15324031e-04, 5.14629169e-04,\n", " -4.71985013e-05, 4.36940792e-04],\n", " [-2.87238447e-09, 2.68317881e-12, 4.54439274e-09,\n", " -1.27915656e-07, 2.14914765e-10, -7.67486290e-07,\n", " 1.11430798e-07, -5.90709505e-08],\n", " [-4.15993564e-06, 4.54439274e-09, 8.83510194e-06,\n", " -2.49399833e-04, 3.58458501e-07, -1.49638412e-03,\n", " 1.71484317e-04, -7.25797481e-05],\n", " [ 8.57639077e-05, -1.27915656e-07, -2.49399833e-04,\n", " 7.05413158e-03, -8.85462706e-06, 4.23243719e-02,\n", " -4.99212604e-03, 1.72812226e-03],\n", " [-4.15324031e-04, 2.14914759e-10, 3.58458489e-07,\n", " -8.85462671e-06, 1.66794834e-05, -5.31292750e-05,\n", " 5.96476665e-06, -1.90884177e-05],\n", " [ 5.14629163e-04, -7.67486290e-07, -1.49638412e-03,\n", " 4.23243719e-02, -5.31292771e-05, 2.53943726e-01,\n", " -2.99525109e-02, 1.03685615e-02],\n", " [-4.71985007e-05, 1.11430798e-07, 1.71484317e-04,\n", " -4.99212604e-03, 5.96476691e-06, -2.99525109e-02,\n", " 1.07342983e-02, -7.66519463e-04],\n", " [ 4.36940792e-04, -5.90709505e-08, -7.25797481e-05,\n", " 1.72812226e-03, -1.90884178e-05, 1.03685615e-02,\n", " -7.66519463e-04, 9.34785074e-03]])" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cov[0]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Standard deviation on the marginalized parameters:" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "execution": { "iopub.execute_input": "2025-09-18T19:02:35.869599Z", "iopub.status.busy": "2025-09-18T19:02:35.869423Z", "iopub.status.idle": "2025-09-18T19:02:35.873409Z", "shell.execute_reply": "2025-09-18T19:02:35.872911Z" } }, "outputs": [ { "data": { "text/plain": [ "array([2.03413606e-24, 3.27608230e-09, 2.24068592e-20, 8.39888777e-03,\n", " 8.16810465e-04, 1.51178488e-01, 4.14425835e-02, 4.83421419e-02])" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "params[inds, 0] * cov[0].diagonal() ** (1/2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Plot the Information Matrix ellipse for the intial frequency and frequency derivative:" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "execution": { "iopub.execute_input": "2025-09-18T19:02:35.875246Z", "iopub.status.busy": "2025-09-18T19:02:35.875049Z", "iopub.status.idle": "2025-09-18T19:02:35.972089Z", "shell.execute_reply": "2025-09-18T19:02:35.971477Z" } }, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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jvbRFRYREZFcMnToUPbu3cvMmTMJDQ1lzpw5tG/fnl27dlGhQoUcHSsjI4PMzEzc3d2ve93Dw4M1a9bkWs0JCQkEBARkP1+9ejW9e/dmzJgxNG/enCNHjjBo0CAAXnvttbs+3+HDh1m4cGHOr1DlWlwSEREpQvh/V1hiYmIcVqvVERcXd912bdq0cbzyyit3dI7GjRs7WrZs6YiLi3NkZGQ4pk2b5rBYLI6KFSvedJ+cXGFZu3atw2azORYtWnRdve+88851202bNs0REhJyR5/hD40bN3a4ubk5AMegQYMcmZmZOdpfg25FRERywa5du8jMzKRixYp4e3tnP1auXMmRI0cA2L9/P4Zh3PLxt7/9LfuY06ZNw+FwUKpUKdzc3BgzZgw9evTAYvnvz/fgwYOvO19sbCz333//da/9md27d9OlSxdee+017rvvvuzXd+zYwZtvvnnd/gMHDuT06dNcuXIFgEaNGt3yM5QsWfKG882aNYutW7cyY8YMfv75Zz744IMcfb+6JSQiIpILkpOTsVqtbNmyBavVet17f4SGsmXLsm/fvlsep3jx4tn/u1y5cqxcuZKUlBQSExMJCQmhe/fulC1bNnubN998kxdffDH7eatWrXj33Xdp2LDhTc+xd+9e2rRpw6BBg/jHP/5xw+d44403/vSWzR+3p2bNmsXVq1dvenyb7cZ4ER4eDkDVqlXJzMxk0KBBvPDCCzd8Vzc95m1tJSIiIrcUFRVFZmYm586do3nz5n+6jaurK5UrV87xsb28vPDy8uLy5cssWrSI9957L/u94OBggoODs5/bbDZKlSpF+fLl//RYe/bs4Z577qFPnz78+9//vuH9OnXqcODAgZvuDxAREZHjz/C/7HY76enp2O12BRYREZHclpyczOHDh7OfHzt2jO3btxMQEEDFihV54okn6N27Nx9++CFRUVGcP3+eZcuWUbNmTTp27Jjj8y1atAiHw0GlSpU4fPgwI0eOpHLlyjz55JN3VP/u3bu55557aNeuHSNGjODMmTMAWK1WgoKCAPjXv/7FAw88QOnSpenatSsWi4UdO3awe/du3n777Ryf85tvvsHFxYUaNWrg5ubG5s2beeWVV+jevTsuLi63f6C7GkEjIiJShCxfvtwB3PDo06ePw+FwONLS0hz/+te/HJGRkQ4XFxdHSEiI46GHHnLs3Lnzjs43a9YsR9myZR2urq6OkiVLOoYMGeKIj4+/5T63GnT72muv/Wn9ERER1223cOFCR5MmTRweHh4OX19fR4MGDRwTJky4o88wc+ZMR506dRze3t4OLy8vR9WqVR3vvPOO4+rVqzk6juFwOBw5jksiIiIi+UizhERERMTpKbCIiIiI01NgEREREaenwCIiIiJOT4FFREREnJ4Ci4iIiDg9BRYRERFxegosIiIi4vQUWERERMTpKbCIiIiI01NgEREREaf3f6nAzc6FvGZlAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ind1 = 1 \n", "ind2 = 2\n", "inds_get = np.array([\n", " [ind1, ind1],\n", " [ind1, ind2],\n", " [ind2, ind1],\n", " [ind2, ind2]\n", "]).T\n", "sub_mat = cov[0][tuple(inds_get)].reshape(2, 2)\n", "\n", "# calculate and draw covariance ellipse\n", "a, b, b, c = sub_mat.flatten()\n", "\n", "lam1 = (a + c) / 2. + np.sqrt(((a-c)/2) ** 2 + b ** 2)\n", "lam2 = (a + c) / 2. - np.sqrt(((a-c)/2) ** 2 + b ** 2)\n", "\n", "if b == 0. and a >= c:\n", " theta = 0.0\n", "elif b == 0. and a < c:\n", " theta = np.pi / 2.\n", "else:\n", " theta = -np.arctan2(lam1 - a, b)\n", "\n", "t_vals = np.linspace(0., 2 * np.pi, 1000)\n", "x = np.sqrt(lam1) * np.cos(theta) * np.cos(t_vals) - np.sqrt(lam2) * np.sin(theta) * np.sin(t_vals)\n", "y = np.sqrt(lam1) * np.sin(theta) * np.cos(t_vals) + np.sqrt(lam2) * np.cos(theta) * np.sin(t_vals)\n", "\n", "x_in = params[1, 0] * (1 + x)\n", "y_in = params[2, 0] * (1 + y)\n", "plt.plot(x_in, y_in)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Utility functions" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "`GBGPU` provides many utility functions. Below are some examples of `GBGPU` utility functions. This may not include all utility functions. See the [utility documentation](https://mikekatz04.github.io/GBGPU/user/utils.html#gbgpu-utility-functions) for all included utility functions." ] }, { "cell_type": "markdown", "metadata": {}, "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Get the instantaneous gravitational wave frequency" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Given $f_0$, $\\dot{f}_0$, and $\\ddot{f}_0$ calculate the instantaneous frequency of the gravitational waves approximating the frequency evolution to quadratic order:" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "execution": { "iopub.execute_input": "2025-09-18T19:02:35.974249Z", "iopub.status.busy": "2025-09-18T19:02:35.974047Z", "iopub.status.idle": "2025-09-18T19:02:36.179924Z", "shell.execute_reply": "2025-09-18T19:02:36.179332Z" } }, "outputs": [ { "data": { "text/plain": [ "Text(0, 0.5, '$f_{gw}$ (Hz)')" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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Lk375vK0fy5N++bynG3/GIZBVlYWwcHBuLhc/lUt1e7Ii4uLC40bN67U6/D393eKO4IZtG8uT/vn0rRvLk/759K0by7PmfbPlY64/Eov2BURERGnovIiIiIiTkXlpRysVitPPfUUVqvV7CgOR/vm8rR/Lk375vK0fy5N++byqvP+qXYv2BUREZHqTUdeRERExKmovIiIiIhTUXkRERERp6Ly8jsJCQk0bdoUT09POnXqxKZNmy67/pIlS4iMjMTT05Po6Gg+/fTTKkpa9cqzb9577z0sFkupH09PzypMW7W+++47Bg4cSHBwMBaLhZUrV17xMmvXriU+Ph6r1UqLFi147733Kj2nGcq7b9auXfuH+47FYuHkyZNVE7gKTZ8+nQ4dOuDn50f9+vUZPHgwe/bsueLlasLjztXsm5r0uPP666/Ttm3bks9w6dKlC5999tllL1Od7jcqL7/x4YcfMnHiRJ566ikSExOJiYmhX79+pKenX3T9DRs2MHLkSO6++26SkpIYPHgwgwcPZvv27VWcvPKVd9/ALx+MdOLEiZKfw4cPV2HiqpWTk0NMTAwJCQllWv/gwYMMGDCAXr16kZyczAMPPMDf/vY3vvjii0pOWvXKu29+tWfPnlL3n/r161dSQvOsW7eOsWPH8uOPP/LVV19RVFRE3759ycnJueRlasrjztXsG6g5jzuNGzfmhRdeYMuWLfz888/07t2bQYMGsWPHjouuX+3uN4aU6NixozF27NiS0zabzQgODjamT59+0fWHDx9uDBgwoNSyTp06Gf/4xz8qNacZyrtv5s2bZwQEBFRROscCGCtWrLjsOv/617+MqKioUstGjBhh9OvXrxKTma8s++bbb781AOP8+fNVksmRpKenG4Cxbt26S65Tkx53fqss+6YmP+4YhmHUrl3beOeddy56XnW73+jIy/8pLCxky5Yt9OnTp2SZi4sLffr0YePGjRe9zMaNG0utD9CvX79Lru+srmbfAGRnZxMaGkpISMhl/yKoiWrKfedaxMbGEhQUxA033MAPP/xgdpwqkZGRAUCdOnUuuU5Nve+UZd9AzXzcsdlsLFq0iJycHLp06XLRdarb/Ubl5f+cOXMGm81GgwYNSi1v0KDBJWftJ0+eLNf6zupq9k1ERAT/+c9/+Oijj5g/fz52u52uXbty9OjRqojs8C5138nMzCQvL8+kVI4hKCiIN954g2XLlrFs2TJCQkLo2bMniYmJZkerVHa7nQceeIDrrruONm3aXHK9mvK481tl3Tc17XEnJSUFX19frFYr9957LytWrKB169YXXbe63W+q3RczimPo0qVLqb8AunbtSqtWrXjzzTd55plnTEwmji4iIoKIiIiS0127dmX//v3MmjWL999/38RklWvs2LFs376d9evXmx3F4ZR139S0x52IiAiSk5PJyMhg6dKljBkzhnXr1l2ywFQnOvLyfwIDA3F1deXUqVOllp86dYqGDRte9DINGzYs1/rO6mr2ze+5u7sTFxfHvn37KiOi07nUfcff3x8vLy+TUjmujh07Vuv7zrhx4/jkk0/49ttvady48WXXrSmPO78qz775ver+uOPh4UGLFi1o164d06dPJyYmhldfffWi61a3+43Ky//x8PCgXbt2fP311yXL7HY7X3/99SVniF26dCm1PsBXX311yfWd1dXsm9+z2WykpKQQFBRUWTGdSk2571SU5OTkannfMQyDcePGsWLFCr755huaNWt2xcvUlPvO1eyb36tpjzt2u52CgoKLnlft7jdmv2LYkSxatMiwWq3Ge++9Z+zcudP4+9//btSqVcs4efKkYRiGcccddxhTpkwpWf+HH34w3NzcjBkzZhi7du0ynnrqKcPd3d1ISUkx6yZUmvLum2nTphlffPGFsX//fmPLli3G7bffbnh6eho7duww6yZUqqysLCMpKclISkoyAGPmzJlGUlKScfjwYcMwDGPKlCnGHXfcUbL+gQMHDG9vb2Py5MnGrl27jISEBMPV1dX4/PPPzboJlaa8+2bWrFnGypUrjdTUVCMlJcWYMGGC4eLiYqxZs8asm1Bp7rvvPiMgIMBYu3atceLEiZKf3NzcknVq6uPO1eybmvS4M2XKFGPdunXGwYMHjW3bthlTpkwxLBaL8eWXXxqGUf3vNyovvzNnzhyjSZMmhoeHh9GxY0fjxx9/LDmvR48expgxY0qtv3jxYiM8PNzw8PAwoqKijNWrV1dx4qpTnn3zwAMPlKzboEED46abbjISExNNSF01fn177+9/ft0nY8aMMXr06PGHy8TGxhoeHh5G8+bNjXnz5lV57qpQ3n3z4osvGmFhYYanp6dRp04do2fPnsY333xjTvhKdrH9ApS6L9TUx52r2Tc16XHnrrvuMkJDQw0PDw+jXr16xvXXX19SXAyj+t9v9K3SIiIi4lT0mhcRERFxKiovIiIi4lRUXkRERMSpqLyIiIiIU1F5EREREaei8iIiIiJOReVFREREnIrKi4iIiDgVlRcREREpk++++46BAwcSHByMxWJh5cqV5d7GF198QefOnfHz86NevXrceuutHDp0qFzbUHkRERGRMsnJySEmJoaEhISruvzBgwcZNGgQvXv3Jjk5mS+++IIzZ84wdOjQcm1H5UVEnMLZs2epX79+mf9Cu/3223n55ZcrN5RIDXPjjTfy7LPPMmTIkIueX1BQwKRJk2jUqBE+Pj506tSJtWvXlpy/ZcsWbDYbzz77LGFhYcTHxzNp0iSSk5MpKioqcw6VFxEx3YMPPnjFv7yee+45Bg0aRNOmTcu0zccff5znnnuOjIyMCkgoImUxbtw4Nm7cyKJFi9i2bRvDhg2jf//+pKamAtCuXTtcXFyYN28eNpuNjIwM3n//ffr06YO7u3uZr0flRURMt2nTJtq3b3/J83Nzc3n33Xe5++67y7zNNm3aEBYWxvz58ysioohcQVpaGvPmzWPJkiV0796dsLAwJk2aRLdu3Zg3bx4AzZo148svv+TRRx/FarVSq1Ytjh49yuLFi8t1XSovImKawsJC3N3d2bBhA4899hgWi4XOnTv/Yb1PP/0Uq9X6h/OWLl1KdHQ0Xl5e1K1blz59+pCTk1Ny/sCBA1m0aFGl3w4RgZSUFGw2G+Hh4fj6+pb8rFu3jv379wNw8uRJ7rnnHsaMGcPmzZtZt24dHh4e3HbbbRiGUebrcqusGyEiciVubm788MMPdOrUieTkZBo0aICnp+cf1vv+++9p165dqWUnTpxg5MiRvPTSSwwZMoSsrCy+//77Ug+AHTt25LnnnqOgoACr1Vrpt0ekJsvOzsbV1ZUtW7bg6upa6jxfX18AEhISCAgI4KWXXio5b/78+YSEhPDTTz9d9I+Xi1F5ERHTuLi4cPz4cerWrUtMTMwl1zt8+DDBwcGllp04cYLi4mKGDh1KaGgoANHR0aXWCQ4OprCwkJMnT5asIyKVIy4uDpvNRnp6Ot27d7/oOrm5ubi4lB76/Fp07HZ7ma9LYyMRMVVSUtJliwtAXl7eH47IxMTEcP311xMdHc2wYcN4++23OX/+fKl1vLy8gF8eMEXk2mVnZ5OcnExycjLwy1ufk5OTSUtLIzw8nNGjR3PnnXeyfPlyDh48yKZNm5g+fTqrV68GYMCAAWzevJmnn36a1NRUEhMT+etf/0poaChxcXFlzqHyIiKmSk5OvmJ5CQwM/EMxcXV15auvvuKzzz6jdevWzJkzh4iICA4ePFiyzrlz5wCoV69exQcXqYF+/vln4uLiSorGxIkTiYuL48knnwRg3rx53HnnnTz00ENEREQwePBgNm/eTJMmTQDo3bs3CxYsYOXKlcTFxdG/f3+sViuff/55yR8bZWExyvMKGRGRCta8eXOmTp3KnXfeecl1ZsyYwfz580v+2rsYm81GaGgoEydOZOLEiQC8++67TJ06lSNHjlR0bBExkY68iIip7HY7e/bs4fjx45f8TJZ+/fqxY8eOUkdffvrpJ55//nl+/vln0tLSWL58OadPn6ZVq1Yl63z//ff07du30m+DiFQtlRcRMdWzzz7Le++9R6NGjXj22Wcvuk50dDTx8fGlPgvC39+f7777jptuuonw8HAef/xxXn75ZW688UYA8vPzWblyJffcc0+V3A4RqToaG4mIU1i9ejWTJ09m+/btf3i3wsW8/vrrrFixgi+//LIK0olIVdJbpUXEKQwYMIDU1FSOHTtGSEjIFdd3d3dnzpw5VZBMRKqajryIiIiIU9FrXkRERMSpqLyIiIiIU1F5EREREaei8iIiIiJOReVFREREnIrKi4iIiDgVlRcRERFxKiovIiIi4lRUXkRERMSpqLyIiIiIU/l/jC2KXQtgRwUAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "num = 15\n", "f0 = np.random.uniform(0.001, 0.002, num)\n", "fdot = np.random.uniform(1e-17, 2e-17, num)\n", "fddot = np.random.uniform(1e-28, 2e-28, num)\n", "\n", "t = np.arange(0.0, 10 * YEAR, YEAR/200)\n", "\n", "# cast t to be for all binaries\n", "t = t[None, :]\n", "\n", "f = get_fGW(f0, fdot, fddot, t)\n", "\n", "plt.plot(t[0], f[0])\n", "plt.xlabel(r\"$t$ (s)\")\n", "plt.ylabel(r\"$f_{gw}$ (Hz)\")\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Get amplitude (for slowly evolving source)" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "execution": { "iopub.execute_input": "2025-09-18T19:02:36.181934Z", "iopub.status.busy": "2025-09-18T19:02:36.181739Z", "iopub.status.idle": "2025-09-18T19:02:36.185564Z", "shell.execute_reply": "2025-09-18T19:02:36.184987Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[6.37562267e-23 6.37562267e-23 6.37562267e-23 6.37562267e-23\n", " 6.37562267e-23 6.37562267e-23 6.37562267e-23 6.37562267e-23\n", " 6.37562267e-23 6.37562267e-23 6.37562267e-23 6.37562267e-23\n", " 6.37562267e-23 6.37562267e-23 6.37562267e-23]\n" ] } ], "source": [ "m1 = np.full(num, 0.2)\n", "m2 = np.full(num, 0.1)\n", "f0 = np.full(num, 0.1)\n", "d = np.full(num, 6.0) # kpc\n", "amp = get_amplitude(m1, m2, f0, d)\n", "\n", "print(amp)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Get $\\dot{f}$" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "execution": { "iopub.execute_input": "2025-09-18T19:02:36.187342Z", "iopub.status.busy": "2025-09-18T19:02:36.187131Z", "iopub.status.idle": "2025-09-18T19:02:36.191045Z", "shell.execute_reply": "2025-09-18T19:02:36.190562Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[1.73157515e-19 1.73157515e-19 1.73157515e-19 1.73157515e-19\n", " 1.73157515e-19 1.73157515e-19 1.73157515e-19 1.73157515e-19\n", " 1.73157515e-19 1.73157515e-19 1.73157515e-19 1.73157515e-19\n", " 1.73157515e-19 1.73157515e-19 1.73157515e-19]\n" ] } ], "source": [ "m1 = np.full(num, 0.2)\n", "m2 = np.full(num, 0.1)\n", "f0 = np.full(num, 0.001)\n", "\n", "fdot = get_fdot(f0, m1=m1, m2=m2)\n", "\n", "print(fdot)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Determine necessary sampling rate in the time-domin" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "execution": { "iopub.execute_input": "2025-09-18T19:02:36.192823Z", "iopub.status.busy": "2025-09-18T19:02:36.192601Z", "iopub.status.idle": "2025-09-18T19:02:36.196745Z", "shell.execute_reply": "2025-09-18T19:02:36.196282Z" } }, "outputs": [ { "data": { "text/plain": [ "array([64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64])" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "get_N(amp, f0, Tobs, oversample=1)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Citations" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "You can access the necessary citations for the specific waveforms with the `citation` property." ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "execution": { "iopub.execute_input": "2025-09-18T19:02:36.198782Z", "iopub.status.busy": "2025-09-18T19:02:36.198610Z", "iopub.status.idle": "2025-09-18T19:02:36.201281Z", "shell.execute_reply": "2025-09-18T19:02:36.200726Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "@software{michael_l_katz_2022_6500434,\n", " author = {Michael L. Katz},\n", " title = {mikekatz04/GBGPU: First official public release!},\n", " month = apr,\n", " year = 2022,\n", " publisher = {Zenodo},\n", " version = {v1.0.0},\n", " doi = {10.5281/zenodo.6500434},\n", " url = {https://doi.org/10.5281/zenodo.6500434}\n", "}\n", "\n", "@article{Cornish:2007if,\n", " author = \"Cornish, Neil J. and Littenberg, Tyson B.\",\n", " title = \"{Tests of Bayesian Model Selection Techniques for Gravitational Wave Astronomy}\",\n", " eprint = \"0704.1808\",\n", " archivePrefix = \"arXiv\",\n", " primaryClass = \"gr-qc\",\n", " doi = \"10.1103/PhysRevD.76.083006\",\n", " journal = \"Phys. Rev. D\",\n", " volume = \"76\",\n", " pages = \"083006\",\n", " year = \"2007\"\n", "}\n", "\n", "@article{Robson:2018svj,\n", " author = \"Robson, Travis and Cornish, Neil J. and Tamanini, Nicola and Toonen, Silvia\",\n", " title = \"{Detecting hierarchical stellar systems with LISA}\",\n", " eprint = \"1806.00500\",\n", " archivePrefix = \"arXiv\",\n", " primaryClass = \"gr-qc\",\n", " doi = \"10.1103/PhysRevD.98.064012\",\n", " journal = \"Phys. Rev. D\",\n", " volume = \"98\",\n", " number = \"6\",\n", " pages = \"064012\",\n", " year = \"2018\"\n", "}\n", "\n" ] } ], "source": [ "print(gb.citation)" ] } ], "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.11" } }, "nbformat": 4, "nbformat_minor": 4 }