示例#1
0
        dtype=('i', 'i', 'U9', 'U30', 'U30', 'd', 'd', 'd', 'd', 'd', 'd', 'd',
               'd', 'd', 'd', 'd', 'd', 'd', 'd', 'd', 'd', 'd', 'd', 'd', 'd',
               'd', 'd'))
    i = 0
    for obsid in epic_observations:
        obs = Observation(obsid=obsid, target_dir=target_dir)
        print('-----------------------------------------------------------')

        #Process each observation
        obs.cifbuild()
        obs.odfingest()
        obs.epproc()
        obs.filter_epic(pileup=True)
        obs.epiclccorr(pileup=True)  #always correct for pile-up
        obs.epic_lightcurve(mjdref=mjdref)
        obs.fracvartest(instrument='epic')
        obs.pn_spectrum(pileup=True)
        obs.pn_xspec(target_REDSHIFT)

        #Save attributes of observation into the EPIC_table (to edit)
        EPIC_obs_table.add_row(
            (str(obs.obsid), str(obs.revolution), f"{obs.epic_expid}",
             str(obs.starttime), str(obs.endtime), str(int(
                 obs.duration)), obs.epicrate[0], obs.epic_erate[0],
             obs.epicrate[1], obs.epic_erate[1], obs.mean_hr,
             obs.fracvardict[0].get('Fractional Variability'),
             obs.fracvardict[0].get('Fractional Variability Error'),
             obs.fracvardict[0].get('Excess variance'),
             obs.fracvardict[0].get('Excess variance error'),
             obs.fracvardict[0].get('Normalized excess variance'),
             obs.fracvardict[0].get('Normalized excess variance error'),
示例#2
0
            #Process each observation
            obs.cifbuild()
            obs.odfingest()
            obs.rgsproc()
            obs.create_pairs_exposures()
            if obs.skipobs == True:
                print(
                    f'The observation {obsid} is tricky. Please analyse individually. Moving forward to next observation.'
                )
                print('----------------')
                continue
            obs.bkg_lightcurve()
            obs.check_flaring_particle_bkgr()
            obs.rgslccorr()
            obs.lightcurve(mjdref=mjdref)
            obs.fracvartest(screen=True, instrument='rgs')
            obs.vaughan_panel(N=30,
                              M=20,
                              timescale=timescale_fvar,
                              timebinsize=25)
            obs.divide_spectrum()
            obs.xspec_divided_spectra_average(target_REDSHIFT)
            obs.xspec_divided_spectra(target_REDSHIFT)

            #Save attributes of observable into a table
            if len(obs.rgsrate) == 0:
                obs_table.add_row(
                    (str(obs.obsid), str(obs.revolution), None,
                     str(obs.starttime), str(obs.endtime),
                     str(int(obs.duration)), None, None, None, None, None,
                     None, None, None, None, None, None))