{ "cells": [ { "cell_type": "markdown", "id": "46b21fcb-ac68-4e99-92af-a596e3889c79", "metadata": {}, "source": [ "# X-ray instrument response optimization\n", "\n", "In this notebook I will discuss some ways to optimize folding a spectral-timing model through an instrument response. " ] }, { "cell_type": "code", "execution_count": 1, "id": "d10ec27d-69bc-49d4-9a0c-12063ba07cfc", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Arf missing, please load it\n", "Arf loaded\n" ] } ], "source": [ "import sys\n", "import os\n", "import gc\n", "\n", "import numpy as np\n", "from scipy.interpolate import interp1d\n", "import matplotlib.pyplot as plt\n", "import matplotlib.pylab as pl\n", "from matplotlib import cm\n", "from matplotlib.colors import TwoSlopeNorm\n", "import matplotlib.gridspec as gridspec\n", "\n", "from matplotlib import rc, rcParams\n", "rc('text',usetex=True)\n", "rc('font',**{'family':'serif','serif':['Computer Modern']})\n", "fi = 22\n", "plt.rcParams.update({'font.size': fi-5})\n", "\n", "sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath('__file__'))))\n", "from ndspec.Response import ResponseMatrix\n", "\n", "rmfpath = os.getcwd()+\"/data/nicer-rmf6s-teamonly-array50.rmf\"\n", "nicer_matrix = ResponseMatrix(rmfpath)\n", "arfpath = os.getcwd()+\"/data/nicer-consim135p-teamonly-array50.arf\"\n", "nicer_matrix.load_arf(arfpath)" ] }, { "cell_type": "markdown", "id": "d39461c6-28c6-40c7-a071-f34d51a92c05", "metadata": {}, "source": [ "## Rebin the instrument response over channels\n", "\n", "Taking tens of milliseconds to fold a model through a response matrix can be comparable to (or even larger than) the computing time of a typical Xspec models. As a result, careless folding of the instrument response can be a major bottleneck in fitting modern, multi-dimensional data.\n", "\n", "In practice however, one never needs 1500 channels when it comes to most X-ray data, particularly for the case of spectral-timing analysis. For instance, typical NICER timing products like lag spectra only use a few dozen energy bins, meaning we can (and should) rebin our instrument response to a grid of a few dozen channels instead. nDspec provides this functionality within the ```ResponseMatrix``` object.\n", "\n", "Let us define an arbitrarily spaced new grid of 35 channel bounds. We can then rebin our matrix object with the ```rebin_channels``` method to this new, smaller grid made up of only 35 channels. After doing so, let us plot the response again, comparing channel and bounds:" ] }, { "cell_type": "code", "execution_count": 2, "id": "e6c39180-cbe2-4486-984f-8cd2140487cb", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/home/matteo/Software/nDspec/src/ndspec/Response.py:534: RuntimeWarning: divide by zero encountered in log10\n", " p = plt.pcolormesh(x_axis,energy_array,np.log10(self.resp_matrix),\n" ] }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stderr", "output_type": "stream", "text": [ "/home/matteo/Software/nDspec/src/ndspec/Response.py:534: RuntimeWarning: divide by zero encountered in log10\n", " p = plt.pcolormesh(x_axis,energy_array,np.log10(self.resp_matrix),\n" ] }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "6445" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#define an arbitrary grid, from arrays of lower and upper energy bounds\n", "new_bounds_lo = np.array([0.1,0.3,0.6,1,1.5,2,2.13,2.21,2.3,2.4,2.52,2.6,2.9,3.,3.5,4.,4.25,\n", " 4.4,4.54,5,5.5,6,6.1,6.3,6.4,6.8,7,7.2,7.3,7.6,8,9.5,10.,12.,13.])\n", "new_bounds_hi = np.array([0.3,0.6,1,1.5,2,2.13,2.21,2.3,2.4,2.52,2.6,2.9,3.,3.5,4.,4.25,4.4,\n", " 4.54,5,5.5,6,6.1,6.3,6.4,6.8,7,7.2,7.3,7.6,8,9.5,10.,12.,13.,15.])\n", "\n", "#rebin the response matrix and plot the resulting new matrix\n", "rebin_chans = nicer_matrix.rebin_channels(new_bounds_lo,new_bounds_hi)\n", "rebin_chans.plot_response()\n", "rebin_chans.plot_response(plot_type=\"energy\")\n", "\n", "gc.collect()" ] }, { "cell_type": "markdown", "id": "421a232b-64ea-46de-91ae-3dc43a2c93da", "metadata": {}, "source": [ "The response natrix is now much coarser, but for spectral-timing data this is not a problem. Note also how the rough 100:1 mapping of channels to energy, initially present in the response, is no longer there, and in fact it is impossible to directly relate channel numbers to energy bounds. This is purely because we chose a very un-regularly spaced grid.\n", "\n", "Let us now define a sample spectral model, using a blackbody with a temperature of 1 keV and unity normalization, convolve it with both instrument respones, and compare the two folded models. Note how the rebinned matrix produced a much coarser folded model, but otherwise the count rate at each energy is roughly identical:" ] }, { "cell_type": "code", "execution_count": 3, "id": "107ea576-df73-46a4-aa4e-721f5402f5d7", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "def bbody(array, params):\n", " #with these defintions, this model is identical to the xspec implementation\n", " norm = params[0]\n", " temp = params[1]\n", " renorm = 8.0525*norm/np.power(temp,4.)\n", " planck = np.exp(array/temp)-1.\n", " model = renorm*np.power(array,2.)/planck\n", " return model\n", "\n", "#define the energy bin mid points and widths, from the matrix we just loaded\n", "nicer_grid = 0.5*(nicer_matrix.energ_hi+nicer_matrix.energ_lo)\n", "nicer_bins = nicer_matrix.energ_hi-nicer_matrix.energ_lo\n", "\n", "#define the model and convolve it with the response\n", "bb_params = np.array([1.,1.])\n", "bb_model = bbody(nicer_grid,bb_params)*nicer_bins\n", "nobin_fold = nicer_matrix.convolve_response(bb_model,units_in=\"xspec\",units_out=\"kev\")\n", "channel_grid = 0.5*(nicer_matrix.emax+nicer_matrix.emin)\n", "\n", "rebin_channel_fold = rebin_chans.convolve_response(bb_model,units_in=\"xspec\",units_out=\"kev\")\n", "rebin_grid = 0.5*(rebin_chans.emax+rebin_chans.emin)\n", "\n", "fig, (ax1) = plt.subplots(1,1,figsize=(6,4.5))\n", "\n", "ax1.step(channel_grid,nobin_fold,label='base',lw=2,where='mid')\n", "ax1.step(rebin_grid,rebin_channel_fold,label='rebin',lw=2,where='mid')\n", "ax1.set_xscale(\"log\")\n", "ax1.set_yscale(\"log\")\n", "ax1.set_xlabel(\"Channel bounds (keV)\")\n", "ax1.set_ylabel(\"Counts/s/keV\")\n", "ax1.legend(loc='upper right')\n", "ax1.set_xlim([0.1,20.])\n", "ax1.set_ylim([5e1,2e4])\n", "\n", "fig.tight_layout()" ] }, { "cell_type": "markdown", "id": "363cddf3-09ae-42a4-bda2-bbd62b340c3a", "metadata": {}, "source": [ "Now we can benchmark the two convolutions and note that, as we would expect, the re-binned convolution is much faster:" ] }, { "cell_type": "code", "execution_count": 4, "id": "956e984c-b4b8-4cbd-8721-92a6a21df0a7", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Unbinned convolution runtime:\n", "9.11 ms ± 354 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)\n", "Channel rebinning convolution runtime:\n", "21 µs ± 968 ns per loop (mean ± std. dev. of 7 runs, 100,000 loops each)\n" ] } ], "source": [ "from timeit import Timer\n", "\n", "print(\"Unbinned convolution runtime:\")\n", "%timeit nicer_matrix.convolve_response(bb_model,units_in=\"xspec\",units_out=\"kev\")\n", "\n", "print(\"Channel rebinning convolution runtime:\")\n", "%timeit rebin_chans.convolve_response(bb_model,units_in='xspec',units_out=\"kev\")" ] }, { "cell_type": "markdown", "id": "45eb55e2-60fc-4bcd-ad1f-4729f95e69e5", "metadata": {}, "source": [ "In general, rebinning over channels prevents one from finding fine energy-dependent features in the data, which is almost never the goal with spectral-timing analysis. Therefore, this is the preferred rebinning method to speed up the respones convolution." ] }, { "cell_type": "markdown", "id": "d6dc1b42-42f3-4c46-9081-5621d016c228", "metadata": {}, "source": [ "## Rebin the instrument response over energy\n", "\n", "Rather than over (arbitrary) instrument channels, it is also possible to rebin a response over physical photon energies. Rebinning to a coarser energy grid has the added bonus of speeding up the computation time of a model (since it has to be calculated over fewer energy bins). However, rebinning to a coarse energy grid can introduce spurious features in the model (and therefore the residuals, once that model is compared to data), so it should generally be done with care if at all. \n", "\n", "Let us look at potential issues that might appear. First, the effective area can change noticeably when rebinning over energy. Let us show this by comparing the NICER arf, before and after interpolating it over a coarse energy grid:" ] }, { "cell_type": "code", "execution_count": 5, "id": "934358dd-33b6-4124-8c11-03bdf05a6c91", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "#define a coarse, geometrically spaced energy grid:\n", "coarse_grid = np.geomspace(0.2,10.,50)\n", "\n", "#interpolate over the nicer arf:\n", "interp_obj = interp1d(nicer_grid,nicer_matrix.specresp)\n", "interp_arf = interp_obj(coarse_grid)\n", "\n", "fig, (ax1) = plt.subplots(1,1,figsize=(6,4.5))\n", "\n", "ax1.plot(nicer_grid,nicer_matrix.specresp,lw=3,label=\"Arf\")\n", "ax1.plot(coarse_grid,interp_arf,lw=3,label=\"rebin Arf\")\n", "ax1.set_xscale(\"log\")\n", "ax1.set_yscale(\"log\")\n", "ax1.set_ylim([1e2,2e3])\n", "ax1.set_xlim([0.2,10]) \n", "ax1.set_xlabel(\"Energy (keV\")\n", "ax1.set_ylabel(\"Effective area (cm$^{2}$\")\n", "plt.legend(loc=\"lower left\")" ] }, { "cell_type": "markdown", "id": "0bc13732-7b3d-4952-9fa3-6f73e23c1510", "metadata": {}, "source": [ "Note how the sharp features are all completely washed out by the interpolation over such a coarse grid. Rebinning over energy can have a similar effect to the interpolation shown above, if it is done aggressively. Let us show this explicitely by taking the NICER response, rebinning it in energy, and comparing the folded models before and after energy rebinning. \n", "\n", "In nDspec, a ```ResponseMatrix``` object can only be rebinned over energy by integer rebinning - that is, it is only possible to group a fixed number of energy bins together in a new matrix. This is done with the ```rebin_energy``` method, which takes as an input the integer factor desired by the user. Compared to allowing for an arbitrary grid this is much safer, as we do not have to deal with a new grid edges potentially not overlapping with the initial ones, and replicates the functionality in Heasoft. \n", "\n", "First, let us calculate the rebinned response for both a coarse and intermediate resolution energy grid, and compare the size of the arrays:" ] }, { "cell_type": "code", "execution_count": 6, "id": "6b165e41-f7e6-44a3-8231-f33fd8bd7988", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/home/matteo/Software/nDspec/src/ndspec/Response.py:392: UserWarning: WARNING: rebinning a response in energy is dangerous, use at your own risk!\n", " warnings.warn(\"WARNING: rebinning a response in energy is dangerous, use at your own risk!\",\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "The rebinned energy with coarse resolution grid has a size: (70,)\n", "The rebinned energy with intermediate resolution grid has a size: (346,)\n" ] } ], "source": [ "rebin_coarse = nicer_matrix.rebin_energies(50)\n", "print(\"The rebinned energy with coarse resolution grid has a size:\",rebin_coarse.energ_hi.shape)\n", "\n", "rebin_inter = nicer_matrix.rebin_energies(10)\n", "print(\"The rebinned energy with intermediate resolution grid has a size:\",rebin_inter.energ_hi.shape)" ] }, { "cell_type": "markdown", "id": "293a2977-8642-46e4-86d0-caa835dfe868", "metadata": {}, "source": [ "Let us now fold our black body model through these responses, and compare the results to the initial matrix:" ] }, { "cell_type": "code", "execution_count": 7, "id": "961527ea-9582-4ef8-be55-4aacca4f4c2c", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "#define the energy bin mid points and widths, from the matrices we just calculated\n", "inter_grid = 0.5*(rebin_inter.energ_hi+rebin_inter.energ_lo)\n", "inter_bins = rebin_inter.energ_hi-rebin_inter.energ_lo\n", "\n", "coarse_grid = 0.5*(rebin_coarse.energ_hi+rebin_coarse.energ_lo)\n", "coarse_bins = rebin_coarse.energ_hi-rebin_coarse.energ_lo\n", "\n", "#define the models and convolve them with the response\n", "bb_inter = bbody(inter_grid,bb_params)*inter_bins\n", "energy_inter_fold = rebin_inter.convolve_response(bb_inter,units_in=\"xspec\",units_out=\"kev\")\n", "\n", "bb_coarse = bbody(coarse_grid,bb_params)*coarse_bins\n", "energy_coarse_fold = rebin_coarse.convolve_response(bb_coarse,units_in=\"xspec\",units_out=\"kev\")\n", "\n", "fig, (ax1) = plt.subplots(1,1,figsize=(6,4.5))\n", "\n", "ax1.step(channel_grid,nobin_fold,label='base',lw=3,where='mid')\n", "ax1.step(channel_grid,energy_inter_fold,label='rebin inter',lw=2,where='mid')\n", "ax1.step(channel_grid,energy_coarse_fold,label='rebin coarse',lw=2,where='mid')\n", "ax1.set_xscale(\"log\")\n", "ax1.set_yscale(\"log\")\n", "ax1.set_xlabel(\"Channel bounds (keV)\")\n", "ax1.set_ylabel(\"Counts/s/keV\")\n", "ax1.legend(loc='lower right')\n", "ax1.set_xlim([0.3,10.])\n", "ax1.set_ylim([8e2,1.5e4])\n", "\n", "fig.tight_layout()" ] }, { "cell_type": "markdown", "id": "93c39647-cb16-47c2-a2e7-3bab2cae8757", "metadata": {}, "source": [ "With our extremely coarse grid, we have gone from the 3451 energy bins in the default NICER matrix, to just 70, while keeping 1501 channels. The result of folding a model through this response is the introduction of horrific features that are not present in the un-binned model, and are therefore not physical. This means our energy rebinning was much too aggressive, and is a textbook example of why energy rebinning can be dangerous.\n", "\n", "The intermediate grid, instead, has 346 energy bins. In this case, some features are still introduced in the folded model, but they are much less noticeable than with the coarse grid. These may or may not appear as residuals depending on the data quality, so users still need to exercise caution.\n", "\n", "Let us now look at what happens when we rebin in both channels and energy:" ] }, { "cell_type": "code", "execution_count": 8, "id": "9ccdf4b7-e213-4673-b710-eed03040e704", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "full_rebin = rebin_chans.rebin_energies(10)\n", "full_rebin_fold = full_rebin.convolve_response(bb_inter,units_in=\"xspec\",units_out=\"kev\")\n", "\n", "fig, (ax1) = plt.subplots(1,1,figsize=(6,4.5))\n", "\n", "ax1.step(channel_grid,nobin_fold,label='base',lw=2,where='mid')\n", "ax1.step(rebin_grid,rebin_channel_fold,label='ch rebin',lw=2,where='mid')\n", "ax1.step(rebin_grid,full_rebin_fold,label='ch+en rebin',lw=2,where='mid')\n", "ax1.set_xscale(\"log\")\n", "ax1.set_yscale(\"log\")\n", "ax1.set_xlabel(\"Channel bounds (keV)\")\n", "ax1.set_ylabel(\"Counts/s/keV\")\n", "ax1.legend(loc='lower right')\n", "ax1.set_xlim([0.1,20.])\n", "ax1.set_ylim([5e1,2e4])\n", "\n", "fig.tight_layout()" ] }, { "cell_type": "markdown", "id": "850c120a-431d-4d03-8d14-0e1c439a4516", "metadata": {}, "source": [ "Even with very coarse channel bounds, the very coarse energy rebinning introduces some unphysical features in the folded model, which are especially noticeable around 2-3 keV. Once again, this shows that energy rebinning, if done at all, should be done with care, particularly because the performance gain is much smaller than rebinning in channels: " ] }, { "cell_type": "code", "execution_count": null, "id": "938af901-078e-4a80-a313-b2906708dedc", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Unbinned convolution runtime:\n", "9.24 ms ± 406 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)\n", "Channel rebinning convolution runtime:\n", "18 µs ± 902 ns per loop (mean ± std. dev. of 7 runs, 100,000 loops each)\n", "Intermediate energy rebinning convolution runtime\n" ] } ], "source": [ "print(\"Unbinned convolution runtime:\")\n", "%timeit nicer_matrix.convolve_response(bb_model,units_in=\"xspec\",units_out=\"kev\")\n", "\n", "print(\"Channel rebinning convolution runtime:\")\n", "%timeit rebin_chans.convolve_response(bb_model,units_in='xspec',units_out=\"kev\")\n", "\n", "print(\"Intermediate energy rebinning convolution runtime\")\n", "%timeit rebin_inter.convolve_response(bb_inter,units_in=\"xspec\",units_out=\"kev\")\n", "\n", "print(\"Intermediate energy+channel rebinning convolution runtime\")\n", "%timeit full_rebin.convolve_response(bb_inter,units_in=\"xspec\",units_out=\"kev\")" ] }, { "cell_type": "markdown", "id": "7e49c3b6-8d6c-4e0e-80fa-8eb796cfbc7a", "metadata": {}, "source": [ "## Rebinning responses for two-dimensional models\n", "\n", "The same considerations also hold for folding two-dimensional models. Let us show this by defining the same impulse response function as in the last tutorial, and then compare the effects of the coarser energy grid:" ] }, { "cell_type": "code", "execution_count": null, "id": "0feafa7c-b44a-4baa-b980-9a9c479d6d81", "metadata": {}, "outputs": [], "source": [ "#define our model functions:\n", "def gaussian(array, params):\n", " center = params[0]\n", " width = params[1]\n", " norm = np.multiply(np.sqrt(2.0*np.pi),width)\n", " shape = np.exp(-np.power((array - center)/width,2.0)/2)\n", " line = shape/norm \n", " return line\n", "\n", "def powerlaw(array, params):\n", " norm = params[0]\n", " slope = params[1]\n", " model = norm*np.power(array,slope)\n", " return model\n", "\n", "def gauss_fred(array1,array2,params):\n", " times = array1\n", " energy = array2\n", " norm = params[0]\n", " width = params[1]\n", " center = params[2]\n", " rise_t = params[3]\n", " decay_t = params[4]\n", " decay_w = params[5]\n", " sigma = width*powerlaw(times,np.array([1.,decay_w]))\n", " fred_profile = np.exp(np.nan_to_num(-rise_t/times)-np.nan_to_num(times/decay_t))\n", " fred_pulse = np.zeros((len(energy),len(times)))\n", " line_profile = np.zeros(len(energy))\n", " pulse_profile = np.zeros(len(times))\n", " for i in range(len(times)):\n", " fred_pulse[:,i] = gaussian(energy,np.array([center,sigma[i]]))*fred_profile[i] \n", " line_profile = np.sum(fred_pulse,axis=1)\n", " pulse_profile = np.sum(fred_pulse,axis=0)\n", " return fred_pulse, line_profile, pulse_profile\n", "\n", "#define a time grid and evaulaute the model defined earlier\n", "time_res = 250\n", "time_array = np.linspace(0.1,400,time_res)\n", "\n", "norm = 1.\n", "width = 2.5\n", "center = 6.5\n", "rise = 10.\n", "decay = 60.\n", "slope = -0.25\n", "\n", "#first define a model with the base energy grid\n", "impulse_base, line_profile_base, pulse_profile_base = gauss_fred(time_array,nicer_grid,[norm,width,center,rise,decay,slope])\n", "#then do the same with the coarse energy grid\n", "impulse_en_rebin, line_profile_en_rebin, pulse_profile_en_rebin = gauss_fred(time_array,inter_grid,[norm,width,center,rise,decay,slope])" ] }, { "cell_type": "code", "execution_count": null, "id": "61f9c27b-c8d2-47ce-ad6d-837b548ae046", "metadata": {}, "outputs": [], "source": [ "colorscale = pl.cm.PuRd(np.linspace(0.,1.,5))\n", "\n", "fig = plt.figure(figsize=(9.,7.5))\n", "\n", "gs = gridspec.GridSpec(200,200) \n", "gs.update(wspace=0,hspace=0)\n", "ax = plt.subplot(gs[:-50,:-50])\n", "side = plt.subplot(gs[:-50,-50:200])\n", "below = plt.subplot(gs[-50:200,:-50])\n", "\n", "c = ax.pcolormesh(time_array,nicer_grid,impulse_base,cmap=\"PuRd\",\n", " shading='auto',linewidth=0,rasterized=True)\n", "\n", "ax.set_xticklabels([])\n", "ax.set_xlim([0,400.])\n", "ax.set_ylim([0.1,10.])\n", "ax.xaxis.set_visible(False)\n", "\n", "below.semilogy(time_array,pulse_profile_base,linewidth=2.5,color=colorscale[3])\n", "below.set_xlabel(\"Time ($\\\\rm{R_g}/c$)\",fontsize=18)\n", "below.set_ylabel(\"Response\",fontsize=18)\n", "below.set_xlim([0,400.])\n", "below.set_ylim([1e-1,3e2])\n", "\n", "side.step(line_profile_base,nicer_grid,linewidth=2.5,color=colorscale[3],where='mid')\n", "side.invert_xaxis()\n", "side.yaxis.tick_right()\n", "side.yaxis.set_label_position('right')\n", "side.yaxis.set_ticks_position('both')\n", "side.set_yticklabels([], minor=False)\n", "side.set_xlabel(\"Line profile \\n (arb. units)\",fontsize=18)\n", "side.set_ylim([0.1,10.5])\n", "side.set_xlim([12.5,-0.5])\n", "\n", "fig.colorbar(c, ax=side)\n", "\n", "ax.set_title(\"Energy space model\")\n", "\n", "plt.show()\n", "\n", "gc.collect()" ] }, { "cell_type": "code", "execution_count": null, "id": "d59ecfa3-4aee-41f0-b464-27d9f3d47166", "metadata": {}, "outputs": [], "source": [ "#and now the low resolution model\n", "fig = plt.figure(figsize=(9.,7.5))\n", "\n", "gs = gridspec.GridSpec(200,200) \n", "gs.update(wspace=0,hspace=0)\n", "ax = plt.subplot(gs[:-50,:-50])\n", "side = plt.subplot(gs[:-50,-50:200])\n", "below = plt.subplot(gs[-50:200,:-50])\n", "\n", "c = ax.pcolormesh(time_array,inter_grid,impulse_en_rebin,cmap=\"PuRd\",\n", " shading='auto',linewidth=0,rasterized=True)\n", "ax.set_xticklabels([])\n", "ax.set_ylim([0.1,10.5])\n", "ax.set_xlim([0,400])\n", "ax.set_ylabel(\"Energy (keV)\",fontsize=18)\n", "ax.xaxis.set_visible(False)\n", "\n", "below.semilogy(time_array,pulse_profile_en_rebin,linewidth=2.5,color=colorscale[3])\n", "below.set_xlabel(\"Time ($\\\\rm{R_g}/c$)\",fontsize=18)\n", "below.set_ylabel(\"Response\",fontsize=18)\n", "below.set_xlim([0,400.])\n", "below.set_ylim([1e-1,3e1])\n", "\n", "side.step(line_profile_en_rebin,inter_grid,linewidth=2.5,color=colorscale[3],where='mid')\n", "side.invert_xaxis()\n", "side.yaxis.tick_right()\n", "side.yaxis.set_label_position('right')\n", "side.yaxis.set_ticks_position('both')\n", "side.set_yticklabels([], minor=False)\n", "side.set_xlabel(\"Line profile \\n (arb. units)\",fontsize=18)\n", "side.set_ylim([0.1,10.5])\n", "side.set_xlim([12.5,-0.5])\n", "\n", "fig.colorbar(c, ax=side)\n", "\n", "ax.set_title(\"Energy space model\")\n", "\n", "plt.show()\n", "\n", "gc.collect()" ] }, { "cell_type": "markdown", "id": "e7273c5c-40b8-4bb3-8df6-ff3ec2947954", "metadata": {}, "source": [ "We can now fold these two models with the rebinned respones we calculated earlier, and compare the output for each combination." ] }, { "cell_type": "code", "execution_count": null, "id": "29eb7a13-8e03-4d42-97e1-5d9dcdba7827", "metadata": {}, "outputs": [], "source": [ "#now let us fold the models through all the rebinned responses, and compare the outputs:\n", "nobin_fold = nicer_matrix.convolve_response(impulse_base,units_in=\"rate\")\n", "channel_fold = rebin_chans.convolve_response(impulse_base,units_in=\"rate\")\n", "energy_fold = rebin_inter.convolve_response(impulse_en_rebin,units_in=\"rate\")\n", "both_fold = full_rebin.convolve_response(impulse_en_rebin,units_in=\"rate\")" ] }, { "cell_type": "code", "execution_count": null, "id": "d409472e-7858-493d-bdb3-c99539aa350a", "metadata": {}, "outputs": [], "source": [ "#first: plot the unbinned model\n", "convolved_line_profile = np.sum(nobin_fold,axis=1)\n", "\n", "fig = plt.figure(figsize=(9.,7.5))\n", "\n", "gs = gridspec.GridSpec(200,200) \n", "gs.update(wspace=0,hspace=0)\n", "ax = plt.subplot(gs[:-50,:-50])\n", "side = plt.subplot(gs[:-50,-50:200])\n", "below = plt.subplot(gs[-50:200,:-50])\n", "\n", "c = ax.pcolormesh(time_array,channel_grid,nobin_fold,cmap=\"PuRd\",\n", " shading='auto',linewidth=0,rasterized=True)\n", "ax.set_xticklabels([])\n", "ax.set_ylim([0.1,10.5])\n", "ax.set_xlim([0,400])\n", "ax.set_ylabel(\"Energy (keV)\",fontsize=18)\n", "ax.xaxis.set_visible(False)\n", "\n", "below.semilogy(time_array,pulse_profile_base,linewidth=2.5,color=colorscale[3])\n", "below.set_xlabel(\"Time ($\\\\rm{R_g}/c$)\",fontsize=18)\n", "below.set_ylabel(\"Response\",fontsize=18)\n", "below.set_ylim([1e-1,3e2])\n", "below.set_xlim([0,400])\n", "\n", "side.step(convolved_line_profile,channel_grid,linewidth=2.5,color=colorscale[3],where='mid')\n", "side.invert_xaxis()\n", "side.yaxis.tick_right()\n", "side.yaxis.set_label_position('right')\n", "side.yaxis.set_ticks_position('both')\n", "side.set_yticklabels([], minor=False)\n", "side.set_xlabel(\"Line profile \\n (arb. units)\",fontsize=18)\n", "side.set_xscale(\"log\")\n", "side.set_ylim([0.1,10.5])\n", "side.set_xlim([1e4,1])\n", "\n", "fig.colorbar(c, ax=side)\n", "\n", "ax.set_title(\"Detector space model, no rebin\")\n", "\n", "plt.show()\n", "\n", "gc.collect()" ] }, { "cell_type": "code", "execution_count": null, "id": "1d1b1fc9-5484-441f-8ffa-99613f05b200", "metadata": {}, "outputs": [], "source": [ "#first: plot the channel-rebinned model\n", "convolved_line_profile = np.sum(channel_fold,axis=1)\n", "\n", "fig = plt.figure(figsize=(9.,7.5))\n", "\n", "gs = gridspec.GridSpec(200,200) \n", "gs.update(wspace=0,hspace=0)\n", "ax = plt.subplot(gs[:-50,:-50])\n", "side = plt.subplot(gs[:-50,-50:200])\n", "below = plt.subplot(gs[-50:200,:-50])\n", "\n", "c = ax.pcolormesh(time_array,rebin_grid,channel_fold,cmap=\"PuRd\",\n", " shading='auto',linewidth=0,rasterized=True)\n", "ax.set_xticklabels([])\n", "ax.set_ylim([0.1,10.5])\n", "ax.set_xlim([0,400])\n", "ax.set_ylabel(\"Energy (keV)\",fontsize=18)\n", "ax.xaxis.set_visible(False)\n", "\n", "below.semilogy(time_array,pulse_profile_base,linewidth=2.5,color=colorscale[3])\n", "below.set_xlabel(\"Time ($\\\\rm{R_g}/c$)\",fontsize=18)\n", "below.set_ylabel(\"Response\",fontsize=18)\n", "below.set_ylim([1e-1,3e2])\n", "below.set_xlim([0,400])\n", "\n", "side.step(convolved_line_profile,rebin_grid,linewidth=2.5,color=colorscale[3],where='mid')\n", "side.invert_xaxis()\n", "side.yaxis.tick_right()\n", "side.yaxis.set_label_position('right')\n", "side.yaxis.set_ticks_position('both')\n", "side.set_yticklabels([], minor=False)\n", "side.set_xlabel(\"Line profile \\n (arb. units)\",fontsize=18)\n", "side.set_xscale(\"log\")\n", "side.set_ylim([0.1,10.5])\n", "side.set_xlim([1e4,1])\n", "\n", "fig.colorbar(c, ax=side)\n", "\n", "ax.set_title(\"Detector space model, channel rebin\")\n", "\n", "plt.show()\n", "\n", "gc.collect()" ] }, { "cell_type": "markdown", "id": "453fecf3-5537-4c19-bb79-b77786e86616", "metadata": {}, "source": [ "Unsurprisingly, rebinning to a coarse channel grid causes the instrumental features to barely appear in the folded line profile." ] }, { "cell_type": "code", "execution_count": null, "id": "e5562e08-8935-4a17-b225-552d786d1ae8", "metadata": {}, "outputs": [], "source": [ "#first: plot the energy-rebinned model\n", "convolved_line_profile = np.sum(energy_fold,axis=1)\n", "\n", "fig = plt.figure(figsize=(9.,7.5))\n", "\n", "gs = gridspec.GridSpec(200,200) \n", "gs.update(wspace=0,hspace=0)\n", "ax = plt.subplot(gs[:-50,:-50])\n", "side = plt.subplot(gs[:-50,-50:200])\n", "below = plt.subplot(gs[-50:200,:-50])\n", "\n", "c = ax.pcolormesh(time_array,channel_grid,energy_fold,cmap=\"PuRd\",\n", " shading='auto',linewidth=0,rasterized=True)\n", "ax.set_xticklabels([])\n", "ax.set_ylim([0.1,10.5])\n", "ax.set_xlim([0,400])\n", "ax.set_ylabel(\"Energy (keV)\",fontsize=18)\n", "ax.xaxis.set_visible(False)\n", "\n", "below.semilogy(time_array,pulse_profile_base,linewidth=2.5,color=colorscale[3])\n", "below.set_xlabel(\"Time ($\\\\rm{R_g}/c$)\",fontsize=18)\n", "below.set_ylabel(\"Response\",fontsize=18)\n", "below.set_ylim([1e-1,3e2])\n", "below.set_xlim([0,400])\n", "\n", "side.step(convolved_line_profile,channel_grid,linewidth=2.5,color=colorscale[3],where='mid')\n", "side.invert_xaxis()\n", "side.yaxis.tick_right()\n", "side.yaxis.set_label_position('right')\n", "side.yaxis.set_ticks_position('both')\n", "side.set_yticklabels([], minor=False)\n", "side.set_xlabel(\"Line profile \\n (arb. units)\",fontsize=18)\n", "side.set_xscale(\"log\")\n", "side.set_ylim([0.1,10.5])\n", "side.set_xlim([1e4,1])\n", "\n", "fig.colorbar(c, ax=side)\n", "\n", "ax.set_title(\"Detector space model, energy rebin\")\n", "\n", "plt.show()\n", "\n", "gc.collect()" ] }, { "cell_type": "markdown", "id": "a34fc090-ecec-4e4e-8222-66c753f8817e", "metadata": {}, "source": [ "Once again, rebinning in energy causes issues in the folded model. Despite the fine channel grid we're using, there are clear distortions in the line profile that are not present in the unbinned model, and are therefore unphysical." ] }, { "cell_type": "code", "execution_count": null, "id": "d03cab83-465a-48d6-8f9c-bf8895190e48", "metadata": {}, "outputs": [], "source": [ "#finally, the channel+energy rebin mode\n", "convolved_line_profile = np.sum(both_fold,axis=1)\n", "\n", "fig = plt.figure(figsize=(9.,7.5))\n", "\n", "gs = gridspec.GridSpec(200,200) \n", "gs.update(wspace=0,hspace=0)\n", "ax = plt.subplot(gs[:-50,:-50])\n", "side = plt.subplot(gs[:-50,-50:200])\n", "below = plt.subplot(gs[-50:200,:-50])\n", "\n", "c = ax.pcolormesh(time_array,rebin_grid,both_fold,cmap=\"PuRd\",\n", " shading='auto',linewidth=0,rasterized=True)\n", "ax.set_xticklabels([])\n", "ax.set_ylim([0.1,10.5])\n", "ax.set_xlim([0,400])\n", "ax.set_ylabel(\"Energy (keV)\",fontsize=18)\n", "ax.xaxis.set_visible(False)\n", "\n", "below.semilogy(time_array,pulse_profile_base,linewidth=2.5,color=colorscale[3])\n", "below.set_xlabel(\"Time ($\\\\rm{R_g}/c$)\",fontsize=18)\n", "below.set_ylabel(\"Response\",fontsize=18)\n", "below.set_ylim([1e-1,3e2])\n", "below.set_xlim([0,400])\n", "\n", "side.step(convolved_line_profile,rebin_grid,linewidth=2.5,color=colorscale[3],where='mid')\n", "side.invert_xaxis()\n", "side.yaxis.tick_right()\n", "side.yaxis.set_label_position('right')\n", "side.yaxis.set_ticks_position('both')\n", "side.set_yticklabels([], minor=False)\n", "side.set_xlabel(\"Line profile \\n (arb. units)\",fontsize=18)\n", "side.set_xscale(\"log\")\n", "side.set_ylim([0.1,10.5])\n", "side.set_xlim([1e4,1])\n", "\n", "fig.colorbar(c, ax=side)\n", "\n", "ax.set_title(\"Detector space model, energy+channel rebin\")\n", "\n", "plt.show()\n", "\n", "gc.collect()" ] }, { "cell_type": "markdown", "id": "6b0fe7ff-2fca-426b-b5dd-bdda8979c843", "metadata": {}, "source": [ "Finally, folding with a response rebinned in both energy and channel to a coarse grid behaves somewhat similarly to the channel-rebinned response; however, there are still some small (unphysical) introduced by rebinning in energy. This further reiterates that energy rebinning should be carried out very carefully. Finally, let us compare the performance in each case:" ] }, { "cell_type": "code", "execution_count": null, "id": "30c99b0b-3d26-4829-985b-05713679843a", "metadata": {}, "outputs": [], "source": [ "print(\"Unbinned response fold time:\")\n", "%timeit nicer_matrix.convolve_response(impulse_base,units_in=\"rate\")\n", "print(\"Channel rebinned response fold time:\")\n", "%timeit rebin_chans.convolve_response(impulse_base,units_in=\"rate\")\n", "print(\"Energy rebinned response fold time:\")\n", "%timeit rebin_inter.convolve_response(impulse_en_rebin,units_in=\"rate\")\n", "print(\"Channel+energy response fold time:\")\n", "%timeit full_rebin.convolve_response(impulse_en_rebin,units_in=\"rate\")" ] }, { "cell_type": "markdown", "id": "6394f6b0-2fcf-443d-9f81-a0d501634cdf", "metadata": {}, "source": [ "Note that in this case energy rebinning does provide a major performance improvement, at the expense of model accuracy as discussed above." ] } ], "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.10.12" } }, "nbformat": 4, "nbformat_minor": 5 }