Experiment Class [v1.0]


In [35]:
# imports
from imp import reload
import numpy as np

from astropy import units as u

from frb import experiment as fexp
from frb.frb import FRB

Instantitate


In [15]:
reload(fexp)
chime = fexp.Experiment('CHIME')
chime


Out[15]:
<Experiment: name=CHIME data={'Name': 'CHIME', 'CreationDate': '2017-May-28', 'Channels': 16000, 'Dnu': <Quantity 400.0 MHz>, 'FOV': <Quantity 134.0 deg2>, 'G': <Quantity 1.38 K / Jy>, 'np': 2, 'Ref': 'Chawla et al. 2017', 'Trec': <Quantity 50.0 K>, 'nu': <Quantity 600.0 MHz>}>

S/N

Define FRB first


In [9]:
frb1 = FRB(0.6*u.Jy, 350*u.MHz, 500 * u.pc/u.cm**3)
frb1


Out[9]:
<FRB: S=0.6 Jy nu_c=350.0 MHz, DM=500.0 pc / cm3>

In [11]:
frb1.set_width('Wi', 5e-3*u.s)

Calculate


In [16]:
chime.signal_to_noise(frb1)


Out[16]:
$0.18696485 \; \mathrm{}$

Testing on GBNCC


In [18]:
reload(fexp)
gbncc = fexp.Experiment('GBNCC')
gbncc


Out[18]:
<Experiment: name=GBNCC data={'Name': 'GBNCC', 'CreationDate': '2017-May-29', 'Channels': 4096, 'Dnu': <Quantity 100.0 MHz>, 'FOV': <Quantity 0.408 deg2>, 'G': <Quantity 2.0 K / Jy>, 'np': 2, 'Ref': 'Chawla et al. 2017', 'Trec': <Quantity 23.0 K>, 'nu': <Quantity 350.0 MHz>}>

In [19]:
gbncc.signal_to_noise(frb1)


Out[19]:
$0.3702923 \; \mathrm{}$

Testing


In [34]:
beta = 1.
s2n = 3.  # Not specified by Chawla+17
Trec = 23 * u.K
Tsky = 44 * u.K
Wi = 5e-3 * u.s
DM  = 756.
G = 2 * u.K / u.Jy
n_p = 2
nchan = 4096
nu_c = 350 * u.MHz
Dnu = 100 *u.MHz

In [40]:
tchan = 8.3e-6 * u.s * (100./nchan) * 1. * 756
tchan


Out[40]:
$0.00015319336 \; \mathrm{s}$

In [41]:
Wb = np.sqrt(Wi**2 + tchan**2)  # Taking tsamp = 0. s
Wb


Out[41]:
$0.0050023463 \; \mathrm{s}$

In [42]:
sterm = np.sqrt(Wb/n_p/Dnu)

In [43]:
Smin = beta * s2n * (Trec + Tsky) /  (G*Wi) * sterm
Smin.to('Jy')  # Close to the 0.6 Jy reported by Chawla+17 but not quite


Out[43]:
$0.10052358 \; \mathrm{Jy}$

In [ ]: