def PSRfits(): """ Fixture psrfits class """ fitspath = "data/test.fits" tempfits = "data/B1855+09.L-wide.PUPPI.11y.x.sum.sm" return PSRFITS(path=fitspath, template=tempfits, fits_mode='copy')
def test_more_psrfits(): """ Additional PSRFITS file tests. Lines to test: 313-315 (can't test without multiple polarizations), 326-328 (Can't test without using folded file), 386-394 (Can't test without many more files), 486, 506 (Can't test without SEARCH mode implemented) 547-548 (Can't test without additional files), 566-567 (can't test without different version of fitsio), """ # Test initialization with no template, obs_mode SEARCH fitspath = "data/test.fits" tempfits = "data/B1855+09.L-wide.PUPPI.11y.x.sum.sm" pf = PSRFITS(path=fitspath, obs_mode='SEARCH', template=None) os.remove(fitspath)
def test_edit_header(pulsar): """ Test editing the psrfits file header. """ fitspath = "data/test.fits" tempfits = "data/B1855+09.L-wide.PUPPI.11y.x.sum.sm" PSRfits = PSRFITS(path=fitspath, template=tempfits, fits_mode='copy') S = PSRfits.make_signal_from_psrfits() obslen = 3.0 pulsar.make_pulses(S, tobs=obslen) pri_dict, sub_dict = PSRfits._gen_metadata(S, pulsar, ref_MJD=56000.0, inc_len=0.0) parfile = "data/J1910+1256_NANOGrav_11yv1.gls.par" poly_dict = PSRfits._gen_polyco(parfile=parfile, MJD_start=56000.0) PSRfits._nsblk = 1 PSRfits._make_psrfits_pars_dict() PSRfits.copy_psrfit_BinTables() PSRfits._edit_psrfits_header(poly_dict, sub_dict, pri_dict)
def test_edit_header(pulsar): """ Test editing the psrfits file header. """ fitspath = "data/test.fits" tempfits = "data/B1855+09.L-wide.PUPPI.11y.x.sum.sm" PSRfits = PSRFITS(path=fitspath, template=tempfits, fits_mode='copy') S = PSRfits.make_signal_from_psrfits() obslen = 3.0 pulsar.make_pulses(S, tobs=obslen) pri_dict, sub_dict = PSRfits._gen_metadata(S, pulsar, ref_MJD=56000.0, inc_len=0.0) sub_dict['POL_TYPE'] = 'AA+BB' # Then the bandwidth sub_dict['CHAN_BW'] = PSRfits.chan_bw.value # Get TSUBINT length sub_dict['TSUBINT'] = np.repeat(PSRfits.tsubint.value, PSRfits.nsubint) # Change TBIN sub_dict['TBIN'] = pulsar.period.value / PSRfits.nbin # Change TBIN sub_dict['DM'] = S.dm.value # Change TBIN sub_dict['NBIN'] = PSRfits.nbin parfile = "data/J1910+1256_NANOGrav_11yv1.gls.par" poly_dict = PSRfits._gen_polyco(parfile=parfile, MJD_start=56000.0) PSRfits._nsblk = 1 PSRfits._make_psrfits_pars_dict() PSRfits.copy_psrfit_BinTables() PSRfits._edit_psrfits_header(poly_dict, sub_dict, pri_dict)