generated from erosita/uds
+++
This commit is contained in:
@@ -30,9 +30,12 @@ enkey = sys.argv[1]
|
||||
fn="detcnts.{}.fits".format(enkey)
|
||||
print("Reading {}".format(datadir+fn))
|
||||
|
||||
d = fits.getdata(datadir+fn)
|
||||
df=pd.DataFrame(np.array(d).byteswap().newbyteorder())
|
||||
#d = fits.getdata(datadir+fn)
|
||||
#df=pd.DataFrame(np.array(d).byteswap().newbyteorder())
|
||||
|
||||
with fits.open(datadir+fn) as data:
|
||||
df = pd.DataFrame(data[1].data)
|
||||
|
||||
print(df.columns)
|
||||
|
||||
#interp_a = np.interp(50, [0,100], [0, 1])
|
||||
|
@@ -1,30 +1,30 @@
|
||||
./01_bgdmodel.py E01
|
||||
./01_bgdmodel.py E02
|
||||
./01_bgdmodel.py E03
|
||||
./01_bgdmodel.py E04
|
||||
./01_bgdmodel.py E05
|
||||
./01_bgdmodel.py E06
|
||||
./01_bgdmodel.py E07
|
||||
./01_bgdmodel.py E08
|
||||
./01_bgdmodel.py E09
|
||||
./01_bgdmodel.py E10
|
||||
./01_bgdmodel.py E11
|
||||
./01_bgdmodel.py E12
|
||||
./01_bgdmodel.py E13
|
||||
./01_bgdmodel.py E14
|
||||
./01_bgdmodel.py E15
|
||||
#./01_bgdmodel.py E01
|
||||
#./01_bgdmodel.py E02
|
||||
#./01_bgdmodel.py E03
|
||||
#./01_bgdmodel.py E04
|
||||
#./01_bgdmodel.py E05
|
||||
#./01_bgdmodel.py E06
|
||||
#./01_bgdmodel.py E07
|
||||
#./01_bgdmodel.py E08
|
||||
#./01_bgdmodel.py E09
|
||||
#./01_bgdmodel.py E10
|
||||
#./01_bgdmodel.py E11
|
||||
#./01_bgdmodel.py E12
|
||||
#./01_bgdmodel.py E13
|
||||
#./01_bgdmodel.py E14
|
||||
#./01_bgdmodel.py E15
|
||||
|
||||
./01_bgdmodel.py A01
|
||||
./01_bgdmodel.py A02
|
||||
./01_bgdmodel.py A03
|
||||
./01_bgdmodel.py A04
|
||||
./01_bgdmodel.py A05
|
||||
./01_bgdmodel.py A06
|
||||
./01_bgdmodel.py A07
|
||||
./01_bgdmodel.py A08
|
||||
./01_bgdmodel.py A09
|
||||
./01_bgdmodel.py A10
|
||||
./01_bgdmodel.py A11
|
||||
#./01_bgdmodel.py A01
|
||||
#./01_bgdmodel.py A02
|
||||
#./01_bgdmodel.py A03
|
||||
#./01_bgdmodel.py A04
|
||||
#./01_bgdmodel.py A05
|
||||
#./01_bgdmodel.py A06
|
||||
#./01_bgdmodel.py A07
|
||||
#./01_bgdmodel.py A08
|
||||
#./01_bgdmodel.py A09
|
||||
#./01_bgdmodel.py A10
|
||||
#./01_bgdmodel.py A11
|
||||
|
||||
./01_bgdmodel.py B01
|
||||
./01_bgdmodel.py B02
|
||||
|
@@ -63,10 +63,13 @@ fn="detcnts.{}.fits".format(enkey)
|
||||
with open(proddir+fn.replace(".fits",".ignored_scw.pkl"), 'rb') as fp:
|
||||
ignored_scw = pickle.load(fp)
|
||||
|
||||
d = fits.getdata(datadir+fn)
|
||||
df=pd.DataFrame(np.array(d).byteswap().newbyteorder())
|
||||
#d = fits.getdata(datadir+fn)
|
||||
#df=pd.DataFrame(np.array(d).byteswap().newbyteorder())
|
||||
#print(df.columns)
|
||||
|
||||
with fits.open(datadir+fn) as data:
|
||||
df = pd.DataFrame(data[1].data)
|
||||
|
||||
crab_crd = SkyCoord(crab_ra, crab_dec, frame=FK5(), unit="deg")
|
||||
|
||||
plotme=False
|
||||
@@ -94,7 +97,7 @@ totx=[]
|
||||
toty=[]
|
||||
|
||||
for i,rec in df.iterrows():
|
||||
obsid = rec['OBSID'].decode("utf-8")
|
||||
obsid = rec['OBSID']#.decode("utf-8")
|
||||
if(obsid in ignore_scws):
|
||||
print("Remove {}".format(obsid))
|
||||
df.drop(index=i, inplace=True)
|
||||
|
@@ -1,30 +1,30 @@
|
||||
./01_crabmodel.py E01
|
||||
./01_crabmodel.py E02
|
||||
./01_crabmodel.py E03
|
||||
./01_crabmodel.py E04
|
||||
./01_crabmodel.py E05
|
||||
./01_crabmodel.py E06
|
||||
./01_crabmodel.py E07
|
||||
./01_crabmodel.py E08
|
||||
./01_crabmodel.py E09
|
||||
./01_crabmodel.py E10
|
||||
./01_crabmodel.py E11
|
||||
./01_crabmodel.py E12
|
||||
./01_crabmodel.py E13
|
||||
./01_crabmodel.py E14
|
||||
./01_crabmodel.py E15
|
||||
#./01_crabmodel.py E01
|
||||
#./01_crabmodel.py E02
|
||||
#./01_crabmodel.py E03
|
||||
#./01_crabmodel.py E04
|
||||
#./01_crabmodel.py E05
|
||||
#./01_crabmodel.py E06
|
||||
#./01_crabmodel.py E07
|
||||
#./01_crabmodel.py E08
|
||||
#./01_crabmodel.py E09
|
||||
#./01_crabmodel.py E10
|
||||
#./01_crabmodel.py E11
|
||||
#./01_crabmodel.py E12
|
||||
#./01_crabmodel.py E13
|
||||
#./01_crabmodel.py E14
|
||||
#./01_crabmodel.py E15
|
||||
|
||||
./01_crabmodel.py A01
|
||||
./01_crabmodel.py A02
|
||||
./01_crabmodel.py A03
|
||||
./01_crabmodel.py A04
|
||||
./01_crabmodel.py A05
|
||||
./01_crabmodel.py A06
|
||||
./01_crabmodel.py A07
|
||||
./01_crabmodel.py A08
|
||||
./01_crabmodel.py A09
|
||||
./01_crabmodel.py A10
|
||||
./01_crabmodel.py A11
|
||||
#./01_crabmodel.py A01
|
||||
#./01_crabmodel.py A02
|
||||
#./01_crabmodel.py A03
|
||||
#./01_crabmodel.py A04
|
||||
#./01_crabmodel.py A05
|
||||
#./01_crabmodel.py A06
|
||||
#./01_crabmodel.py A07
|
||||
#./01_crabmodel.py A08
|
||||
#./01_crabmodel.py A09
|
||||
#./01_crabmodel.py A10
|
||||
#./01_crabmodel.py A11
|
||||
|
||||
./01_crabmodel.py B01
|
||||
./01_crabmodel.py B02
|
||||
|
@@ -26,10 +26,10 @@ from numpy import arange
|
||||
from ridge.utils import *
|
||||
from ridge.config import *
|
||||
|
||||
plotme=False
|
||||
plotme=True
|
||||
enkey = sys.argv[1]
|
||||
outkey = sys.argv[2]
|
||||
#outkey = "ALL"
|
||||
#outkey = sys.argv[2]
|
||||
outkey = "ALL"
|
||||
|
||||
fn="detcnts.{}.fits".format(enkey)
|
||||
|
||||
@@ -83,8 +83,11 @@ base0=[]
|
||||
c0=[]
|
||||
texp0=[]
|
||||
|
||||
d = fits.getdata(datadir+fn)
|
||||
df = pd.DataFrame(np.array(d).byteswap().newbyteorder())
|
||||
#d = fits.getdata(datadir+fn)
|
||||
#df = pd.DataFrame(np.array(d).byteswap().newbyteorder())
|
||||
|
||||
with fits.open(datadir+fn) as data:
|
||||
df = pd.DataFrame(data[1].data)
|
||||
|
||||
# BKG
|
||||
if(outkey == 'BKG'):
|
||||
@@ -100,7 +103,7 @@ if(outkey=='ALL'):
|
||||
|
||||
for i, row in df.iterrows():
|
||||
orbit=row['REV']
|
||||
obsid=row['OBSID'].decode("UTF-8")
|
||||
obsid=row['OBSID']#.decode("UTF-8")
|
||||
|
||||
if not (orbit > revmin and orbit < revmax):
|
||||
print("Skip orbit",orbit,row['OBSID'])
|
||||
@@ -170,7 +173,6 @@ for r in range(rev_min,rev_max):
|
||||
ind = np.nonzero(orbits == r)
|
||||
if not (len(resid_arr[ind])>10):
|
||||
continue
|
||||
#print(r,np.mean(resid_arr[ind]), len(resid_arr[ind]))
|
||||
distr_val.append(np.mean(resid_arr[ind]))
|
||||
distr_rev.append(r)
|
||||
|
||||
@@ -183,13 +185,14 @@ filtered_data = sigma_clip(dval, sigma=sigma, maxiters=10, return_bounds=True)
|
||||
filtered_arr=filtered_data[0]
|
||||
filtered_min=filtered_data[1]
|
||||
filtered_max=filtered_data[2]
|
||||
print("Sigma clipping: min {:.2e} max {:.2e}".format(filtered_min,filtered_max))
|
||||
|
||||
|
||||
print("length orig: {} taken: {} filtered: {}".format(len(dval),len(dval[filtered_arr.mask==False]),len(dval[filtered_arr.mask==True])))
|
||||
|
||||
sg_mean, sg_med, sg_std = sigma_clipped_stats(distr_val, sigma=sigma, maxiters=10)
|
||||
sg_sem = sem(dval[filtered_arr.mask==False])
|
||||
print("Sigma clipping: mean {:.2f} med {:.2f} std {:.2f} ".format(sg_mean, sg_med, sg_std))
|
||||
print("Sigma clipping: mean {:.2e} med {:.2e} std {:.2e} ".format(sg_mean, sg_med, sg_std))
|
||||
|
||||
|
||||
print(len(drev[filtered_arr.mask==True]))
|
||||
@@ -208,7 +211,7 @@ if(plotme):
|
||||
|
||||
with open(proddir+fn.replace(".fits",".ignored_rev.resid.pkl"), 'wb') as fp:
|
||||
pickle.dump(drev[filtered_arr.mask==True], fp, protocol=pickle.HIGHEST_PROTOCOL)
|
||||
print("Removed REVs:",ignored_rev)
|
||||
print("Removed REVs:",drev[filtered_arr.mask==True])
|
||||
|
||||
|
||||
indices = sorted(
|
||||
@@ -256,3 +259,22 @@ with fits.open(proddir+fout, mode='update') as hdus:
|
||||
|
||||
|
||||
|
||||
coldefs = fits.ColDefs([
|
||||
fits.Column(name='REV', format='J', unit='', array=drev),
|
||||
fits.Column(name='RESID', format='D', unit='cts/s', array=dval),
|
||||
fits.Column(name='MASK', format='L', unit='', array=filtered_arr.mask),
|
||||
])
|
||||
|
||||
fout = fn.replace(".fits",".{}.resid_by_rev.fits".format(outkey))
|
||||
hdu = fits.BinTableHDU.from_columns(coldefs, name='GRXE')
|
||||
hdu.header['MISSION'] = ('INTEGRAL', '')
|
||||
hdu.header['TELESCOP'] = (outkey, '')
|
||||
hdu.header['INSTITUT'] = ('IKI', 'Affiliation')
|
||||
hdu.header['AUTHOR'] = ('Roman Krivonos', 'Responsible person')
|
||||
hdu.header['EMAIL'] = ('krivonos@cosmos.ru', 'E-mail')
|
||||
#hdu.add_checksum()
|
||||
print(hdu.columns)
|
||||
hdu.writeto(proddir+fout, overwrite=True)
|
||||
|
||||
with fits.open(proddir+fout, mode='update') as hdus:
|
||||
hdus[1].add_checksum()
|
||||
|
@@ -48,24 +48,24 @@
|
||||
#./02_grxe_resid.py B20 ALL
|
||||
#./02_grxe_resid.py B21 ALL
|
||||
|
||||
./02_grxe_resid.py B01 BKG
|
||||
./02_grxe_resid.py B02 BKG
|
||||
./02_grxe_resid.py B03 BKG
|
||||
./02_grxe_resid.py B04 BKG
|
||||
./02_grxe_resid.py B05 BKG
|
||||
./02_grxe_resid.py B06 BKG
|
||||
./02_grxe_resid.py B07 BKG
|
||||
./02_grxe_resid.py B08 BKG
|
||||
./02_grxe_resid.py B09 BKG
|
||||
./02_grxe_resid.py B10 BKG
|
||||
./02_grxe_resid.py B11 BKG
|
||||
./02_grxe_resid.py B12 BKG
|
||||
./02_grxe_resid.py B13 BKG
|
||||
./02_grxe_resid.py B14 BKG
|
||||
./02_grxe_resid.py B15 BKG
|
||||
./02_grxe_resid.py B16 BKG
|
||||
./02_grxe_resid.py B17 BKG
|
||||
./02_grxe_resid.py B18 BKG
|
||||
./02_grxe_resid.py B19 BKG
|
||||
./02_grxe_resid.py B20 BKG
|
||||
./02_grxe_resid.py B21 BKG
|
||||
./02_grxe_resid.py B01
|
||||
./02_grxe_resid.py B02
|
||||
./02_grxe_resid.py B03
|
||||
./02_grxe_resid.py B04
|
||||
./02_grxe_resid.py B05
|
||||
./02_grxe_resid.py B06
|
||||
./02_grxe_resid.py B07
|
||||
./02_grxe_resid.py B08
|
||||
./02_grxe_resid.py B09
|
||||
./02_grxe_resid.py B10
|
||||
./02_grxe_resid.py B11
|
||||
./02_grxe_resid.py B12
|
||||
./02_grxe_resid.py B13
|
||||
./02_grxe_resid.py B14
|
||||
./02_grxe_resid.py B15
|
||||
./02_grxe_resid.py B16
|
||||
./02_grxe_resid.py B17
|
||||
./02_grxe_resid.py B18
|
||||
./02_grxe_resid.py B19
|
||||
./02_grxe_resid.py B20
|
||||
./02_grxe_resid.py B21
|
||||
|
@@ -139,7 +139,15 @@ with open(proddir+'detcnts.B21.ignored_rev.resid.pkl', 'rb') as fp:
|
||||
print(ignored_rev)
|
||||
|
||||
ign=ignored_rev.tolist()
|
||||
|
||||
"""
|
||||
if(1091 in ign):
|
||||
print("Removed")
|
||||
else:
|
||||
print("Taken")
|
||||
|
||||
sys.exit()
|
||||
"""
|
||||
nsim=1000
|
||||
|
||||
for skey in skeys:
|
||||
@@ -147,23 +155,35 @@ for skey in skeys:
|
||||
print("{} not found in {}".format(skey,list(skyreg.keys())))
|
||||
sys.exit()
|
||||
for enkey in ebands0.keys():
|
||||
bkg_fn="detcnts.{}.BKG.resid.fits".format(enkey,inkey)
|
||||
syserr, bkg_sem = get_syserror(proddir+bkg_fn)
|
||||
#bkg_fn="detcnts.{}.BKG.resid.fits".format(enkey,inkey)
|
||||
#syserr, bkg_sem = get_syserror(proddir+bkg_fn)
|
||||
|
||||
fn="detcnts.{}.{}.resid.fits".format(enkey,inkey)
|
||||
d = fits.getdata(proddir+fn)
|
||||
df=pd.DataFrame(np.array(d).byteswap().newbyteorder())
|
||||
#print(df.columns)
|
||||
#d1 = fits.getdata(proddir+fn)
|
||||
#d2=np.array(d1)
|
||||
#df=pd.DataFrame(d2.view(d2.dtype.newbyteorder()))
|
||||
#df=pd.DataFrame(np.array(d).byteswap().newbyteorder())
|
||||
|
||||
#with fits.open(proddir+fn) as data:
|
||||
# df = pd.DataFrame(data[1].data)
|
||||
|
||||
dat = Table.read(proddir+fn)
|
||||
df = dat.to_pandas()
|
||||
|
||||
print(df.columns)
|
||||
#sys.exit()
|
||||
#df = df.query("REV == @ign")
|
||||
|
||||
|
||||
df = df.query("LON > {} & LON < {} & LAT > {} & LAT < {} & REV != @ign".format(
|
||||
query = "LON > {} & LON < {} & LAT > {} & LAT < {} & REV != @ign".format(
|
||||
skyreg[skey]['lon'] - skyreg[skey]['wlon']/2,
|
||||
skyreg[skey]['lon'] + skyreg[skey]['wlon']/2,
|
||||
skyreg[skey]['lat'] - skyreg[skey]['wlat']/2,
|
||||
skyreg[skey]['lat'] + skyreg[skey]['wlat']/2)
|
||||
)
|
||||
|
||||
print(query)
|
||||
#sys.exit()
|
||||
df = df.query(query)
|
||||
|
||||
|
||||
t = Table.from_pandas(df)
|
||||
|
Reference in New Issue
Block a user