Commit 62c408f8 authored by Yan Zhaojun's avatar Yan Zhaojun
Browse files

update

parent 1aa0db48
Pipeline #7735 failed with stage
in 0 seconds
...@@ -356,7 +356,7 @@ class cosmicrays(): ...@@ -356,7 +356,7 @@ class cosmicrays():
exposure time. exposure time.
""" """
def __init__(self, log, image, exposuretime,crInfo=None, information=None): def __init__(self, log, image, exposuretime, crInfo=None, information=None):
""" """
Cosmic ray generation class. Can either draw events from distributions or Cosmic ray generation class. Can either draw events from distributions or
set the energy of the events to a constant. set the energy of the events to a constant.
...@@ -376,7 +376,7 @@ class cosmicrays(): ...@@ -376,7 +376,7 @@ class cosmicrays():
# set up the information dictionary, first with defaults and then overwrite with inputs if given # set up the information dictionary, first with defaults and then overwrite with inputs if given
self.information = (dict(cosmicraylengths='/home/yan/csst-master/data/cdf_cr_length.dat', self.information = (dict(cosmicraylengths='/home/yan/csst-master/data/cdf_cr_length.dat',
cosmicraydistance='/home/yan/csst-master/data/cdf_cr_total.dat',exptime=exposuretime)) cosmicraydistance='/home/yan/csst-master/data/cdf_cr_total.dat', exptime=exposuretime))
if information is not None: if information is not None:
self.information.update(information) self.information.update(information)
...@@ -2157,76 +2157,76 @@ class IFSsimulator(): ...@@ -2157,76 +2157,76 @@ class IFSsimulator():
return FlatMat return FlatMat
#################################################################### ####################################################################
def getFrameTransferImg(self): def getFrameTransferImg(self):
""" """
Returns Returns
------- -------
None. None.
""" """
""" """
get frame transfer image from original image of self.image_b and self.image_r get frame transfer image from original image of self.image_b and self.image_r
""" """
overscan=320 overscan=320
self.frame_b_4 = np.zeros((1024+overscan, 2048), dtype=float) self.frame_b_4 = np.zeros((1024+overscan, 2048), dtype=float)
self.frame_b_3 = np.zeros((1024+overscan, 2048), dtype=float) self.frame_b_3 = np.zeros((1024+overscan, 2048), dtype=float)
self.frame_b_2 = np.zeros((1024+overscan, 2048), dtype=float) self.frame_b_2 = np.zeros((1024+overscan, 2048), dtype=float)
self.frame_b_1 = np.zeros((1024+overscan, 2048), dtype=float) self.frame_b_1 = np.zeros((1024+overscan, 2048), dtype=float)
self.frame_r_4 = np.zeros((1536+overscan, 3072), dtype=float) self.frame_r_4 = np.zeros((1536+overscan, 3072), dtype=float)
self.frame_r_3 = np.zeros((1536+overscan, 3072), dtype=float) self.frame_r_3 = np.zeros((1536+overscan, 3072), dtype=float)
self.frame_r_2 = np.zeros((1536+overscan, 3072), dtype=float) self.frame_r_2 = np.zeros((1536+overscan, 3072), dtype=float)
self.frame_r_1 = np.zeros((1536+overscan, 3072), dtype=float) self.frame_r_1 = np.zeros((1536+overscan, 3072), dtype=float)
# OSH, part2 ,no change # OSH, part2 ,no change
b_2 = np.sum(self.image_b[0:1024, 0:2048], axis=0) b_2 = np.sum(self.image_b[0:1024, 0:2048], axis=0)
# flip right to left of part1 # flip right to left of part1
temp_b_1 = np.fliplr(self.image_b[0:1024, 2048:4096]) # left to right temp_b_1 = np.fliplr(self.image_b[0:1024, 2048:4096]) # left to right
b_1 = np.sum(temp_b_1, axis=0) b_1 = np.sum(temp_b_1, axis=0)
# part 4, left to right and up to down # part 4, left to right and up to down
temp_b_4 = np.fliplr( temp_b_4 = np.fliplr(
self.image_b[1024:1024+1024, 2048:2048+2048]) # left to right self.image_b[1024:1024+1024, 2048:2048+2048]) # left to right
b_4 = np.sum(temp_b_4, axis=0) b_4 = np.sum(temp_b_4, axis=0)
# part 3,OSE, up to dwon # part 3,OSE, up to dwon
b_3 = np.sum(self.image_b[1024:1024+1024, 0:2048], axis=0) b_3 = np.sum(self.image_b[1024:1024+1024, 0:2048], axis=0)
#### ####
for k in range(1024+overscan): for k in range(1024+overscan):
# part # part
self.frame_b_4[k, :] += b_4*0.09216/self.information['exptime'] self.frame_b_4[k, :] += b_4*0.09216/self.information['exptime']
self.frame_b_3[k, :] += b_3*0.09216/self.information['exptime'] self.frame_b_3[k, :] += b_3*0.09216/self.information['exptime']
self.frame_b_2[k, :] += b_2*0.09216/self.information['exptime'] self.frame_b_2[k, :] += b_2*0.09216/self.information['exptime']
self.frame_b_1[k, :] += b_1*0.09216/self.information['exptime'] self.frame_b_1[k, :] += b_1*0.09216/self.information['exptime']
################### ###################
# red channle # red channle
# OSH, part2 ,no change # OSH, part2 ,no change
r_2 = np.sum(self.image_r[0:1536, 0:3072], axis=0) r_2 = np.sum(self.image_r[0:1536, 0:3072], axis=0)
# # flip right to left of part1 # # flip right to left of part1
temp_r_1 = np.fliplr(self.image_r[0:1536, 3072:6144]) # left to right temp_r_1 = np.fliplr(self.image_r[0:1536, 3072:6144]) # left to right
r_1 = np.sum(temp_r_1, axis=0) r_1 = np.sum(temp_r_1, axis=0)
# part 4, left to right and up to down # part 4, left to right and up to down
temp_r_4 = np.fliplr( temp_r_4 = np.fliplr(
self.image_r[1536:1536+1536, 3072:6144]) # left to right self.image_r[1536:1536+1536, 3072:6144]) # left to right
r_4 = np.sum(temp_r_4, axis=0) r_4 = np.sum(temp_r_4, axis=0)
# part 3,OSE, up to dwon # part 3,OSE, up to dwon
r_3 = np.sum(self.image_r[1536:1536+1536, 0:3072], axis=0) r_3 = np.sum(self.image_r[1536:1536+1536, 0:3072], axis=0)
for k in range(1536+overscan): for k in range(1536+overscan):
# part 4, OSH zone; # part 4, OSH zone;
self.frame_r_4[k, :] += r_4*0.13824/self.information['exptime'] self.frame_r_4[k, :] += r_4*0.13824/self.information['exptime']
self.frame_r_3[k, :] += r_3*0.13824/self.information['exptime'] self.frame_r_3[k, :] += r_3*0.13824/self.information['exptime']
self.frame_r_2[k, :] += r_2*0.13824/self.information['exptime'] self.frame_r_2[k, :] += r_2*0.13824/self.information['exptime']
self.frame_r_1[k, :] += r_1*0.13824/self.information['exptime'] self.frame_r_1[k, :] += r_1*0.13824/self.information['exptime']
# end # end
############################################################################### ###############################################################################
def applyflatfield(self, simnumber): def applyflatfield(self, simnumber):
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment