From a5945932f57519d8ff1d221963d042bf3a2cc181 Mon Sep 17 00:00:00 2001 From: yan Date: Mon, 15 Apr 2024 10:23:01 +0800 Subject: [PATCH] debug --- .../CTI/__pycache__/CTI.cpython-311.pyc | Bin 24087 -> 8699 bytes .../__pycache__/csst_mci_sim.cpython-311.pyc | Bin 266182 -> 262679 bytes csst_mci_sim/csst_mci_sim.py | 107 ++++++------------ .../__pycache__/__init__.cpython-311.pyc | Bin 0 -> 163 bytes csst_mci_sim/support/MCIinstrumentModel.py | 4 +- .../__pycache__/cosmicrays.cpython-311.pyc | Bin 22703 -> 12293 bytes .../support/__pycache__/sed.cpython-311.pyc | Bin 11473 -> 11157 bytes .../support/__pycache__/shao.cpython-311.pyc | Bin 8221 -> 8250 bytes 8 files changed, 36 insertions(+), 75 deletions(-) create mode 100644 csst_mci_sim/mci_so/__pycache__/__init__.cpython-311.pyc diff --git a/csst_mci_sim/CTI/__pycache__/CTI.cpython-311.pyc b/csst_mci_sim/CTI/__pycache__/CTI.cpython-311.pyc index 36a5b0b7f16698e60430bbe20606f3c526d7948a..76e435adab1276f8d6fe19aa2180ed8972534c9f 100644 GIT binary patch delta 1504 zcmah}TTCNW7(Qn@m(oJ%wxwJO1zZX{+`JT!gvDKVy=0B7M9Ri(R!QMZ%djo2XNJVB zY|vyiBgVti~} zW)T*7Nn$NxT8U{@9u^CA9u+StU9?5KuEc0qd<+;BUn)}~p!ut5TmL8RjCwn5vCgAn zOU1PBtC;qd8q=fg*pYj3be$|T*Cf`qPFAG4)GnH}F4`eRwC>(mIYh{kwBWB>@AT~y z1=sf#tvgop4b*)jbA-WH?-Ie2_llpjZ*^cLVn>ez>|TgCIxEM-t)b6oLcBWAC)o*cb2tIQ z!SMKyc86QI7O<|p1#P^Ct+)q9++8^}vZzkt05~oH$BuXq;TQs}5#gAC<3Hvt2vLMq zgf{VYa%!Wjvf|=&BFh^=SN3vNw2bM5!JAz1Im;}AXu9(*d#}_)+@iAo*|iMgnN=Gc z%3d>@H%l&CIbv{+z9m+;C%I_CCg~BLz_Jqv#{nGKT+KdGbUc>LxsKXlgh7N6gdv1c z1iUv#v6eF>!%+)M=7Lq^ldjIq&-=wUV~Iz-?yxwnjMHG&nsXGlGe>dTs`gNgJ)1gb zFbf_4(sOj&5sRMIsF)e=Ri6Qi^+UxTPfD_nH1vzz`)>xvK&jL7uo-vRO?6 zh4%w@v-8K0)yw|oJy|HSwY>2Fe;f?BG}c9cLl31?+<3bEwD&2ALe+o9A6@-V|6+B^ F`~@59SVRB- literal 24087 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 V#pTx%^_2T1@Yp^q+)k+X{SOcb)qMZ} delta 57498 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 diff --git a/csst_mci_sim/csst_mci_sim.py b/csst_mci_sim/csst_mci_sim.py index 3024d13..7211882 100644 --- a/csst_mci_sim/csst_mci_sim.py +++ b/csst_mci_sim/csst_mci_sim.py @@ -397,44 +397,7 @@ class StrayLight(object): return max(band_earth_e1, band_earth_e2) ############################################################################### -#################################################################################### - - -def processArgs(printHelp=False): - """ - Processes command line arguments. - """ - parser = OptionParser() - - parser.add_option('-c', '--configfile', dest='configfile', - help="Name of the configuration file", metavar="string") - - parser.add_option('-s', '--section', dest='section', - help="Name of the section of the config file [SCIENCE]", metavar="string") - - parser.add_option('-q', '--quadrant', dest='quadrant', help='CCD quadrant to simulate [0, 1, 2, 3]', - metavar='int') - - parser.add_option('-x', '--xCCD', dest='xCCD', help='CCD number in X-direction within the FPA matrix', - metavar='int') - - parser.add_option('-y', '--yCCD', dest='yCCD', help='CCD number in Y-direction within the FPA matrix', - metavar='int') - - parser.add_option('-d', '--debug', dest='debug', action='store_true', - help='Debugging mode on') - - parser.add_option('-t', '--test', dest='test', action='store_true', - help='Run unittest') - - parser.add_option('-f', '--fixed', dest='fixed', help='Use a fixed seed for the random number generators', - metavar='int') - if printHelp: - parser.print_help() - else: - return parser.parse_args() - - +############################################################################### ############################################################################### def make_c_coor(fov, step): @@ -1447,7 +1410,7 @@ class MCIsimulator(): if home_path == '/home/yan': - self.result_path = '../MCI_simData/'+self.source+ss+result_day + self.result_path = '../MCI_simResult/'+self.source+"_"+result_day else: self.result_path = '/data/mcisimdata/'+result_day @@ -1713,32 +1676,33 @@ class MCIsimulator(): theta = rotTelPos - rotSkyPos ############ load star data catlog ##################### - ##starcat='selection_20230517_concat.csv' + starcat='selection_MACSJ0744.9 3927_20230517_concat.csv' - starcat='selection_20230517_concat.fits' - - ##starcat='GaiaSource_675688-675713.csv' + ##starcat='selection_20230517_concat.fits' + ################################################### self.log.info('Stat catlog file name is %s' % (starcat)) - da=fits.open(self.information['dir_path']+'MCI_inputData/star_input/'+starcat) - - ####da=fits.open(starcat) - df2=da[1].data - #### + ###################################################################### + # da=fits.open(self.information['dir_path']+'MCI_inputData/star_input/'+starcat) - #df2.index = range(len(df2)) - ## limit the filed of view to 600*600 arcsec^2 square zone; + # df2=da[1].data + # del da + ########################################## + df2=pandas.read_csv(self.information['dir_path']+'MCI_inputData/star_input/'+starcat) + df3=df2[ (abs(df2['ra_gaia']-df2['ra_gaia'].mean())<400/3600.0) & (abs(df2['dec_gaia']-df2['dec_gaia'].mean())<400/3600.0) ] df3.index = range(len(df3)) + ################################################### + # np.save('umag.npy', df3['umag'] ) self.star=df3 - del da,df2,df3 + del df2,df3 self.information['ra_obj'] = self.star['ra_gaia'].mean() self.information['dec_obj'] = self.star['dec_gaia'].mean() @@ -2218,7 +2182,7 @@ class MCIsimulator(): st_magz.append(zmag) - self.log.info('begin cal PSF') + ## self.log.info('begin cal PSF') ###################################################################### psf=dict() @@ -2252,11 +2216,11 @@ class MCIsimulator(): stamp_img.setOrigin(0,0) stamp_img.scale=0.025 - self.log.info('begining galsim.PhotonArray.makeFromImage') + # self.log.info('begining galsim.PhotonArray.makeFromImage') - self.log.info('stamp_img.array.max()= %i' % (stamp_img.array.max())) + # self.log.info('stamp_img.array.max()= %i' % (stamp_img.array.max())) - print('stamp_img.array.max(): ', stamp_img.array.max() ) + ###print('stamp_img.array.max(): ', stamp_img.array.max() ) ################################################# @@ -5438,11 +5402,11 @@ class MCIsimulator(): print('applyPRNUeffect') #################################################################### - # if self.source in sourcelist: - # if self.cosmicRays: - # # if self.debug == False: - # self.addCosmicRays() - # print('addCosmicRays finisth') + if self.source in sourcelist: + if self.cosmicRays: + # if self.debug == False: + self.addCosmicRays() + print('addCosmicRays finisth') ################################################## if self.skyback: @@ -5463,23 +5427,20 @@ class MCIsimulator(): ################################################# - # if self.bleeding: - # # if self.debug== False: - # self.image_g=self.applyBleeding(self.image_g.copy()) - # self.image_r=self.applyBleeding(self.image_r.copy()) - # self.image_i=self.applyBleeding(self.image_i.copy()) - # print('apply bleeding effect finisth') + if self.bleeding: + # if self.debug== False: + self.image_g=self.applyBleeding(self.image_g.copy()) + self.image_r=self.applyBleeding(self.image_r.copy()) + self.image_i=self.applyBleeding(self.image_i.copy()) + print('apply bleeding effect finisth') - # ################################################ + ################################################ - # if self.nonlinearity: - # self.applyNonlinearity() - # print('applyNonlinearity') + if self.nonlinearity: + self.applyNonlinearity() + print('applyNonlinearity') # ################################################ - - - #### read CCD image to output matrix as defined diff --git a/csst_mci_sim/mci_so/__pycache__/__init__.cpython-311.pyc b/csst_mci_sim/mci_so/__pycache__/__init__.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..46e23935a60f5b03720db0d9c6f55f9650d62955 GIT binary patch literal 163 zcmZ3^%ge<81oNIsq=D$iAOZ#$p^VRLK*n^26oz01O-8?!3`I;p{%4TnFEjm&{M=Oi z%EUbV+~myolGNf75JNw?xVR)9BvPE23zjL)*N>0S%*!l^kJl@x{Ka9Do1apelWJGQ Z3N!{}Q87P|_`uA_$oPQ)Miemv#Q=L!CWZh2 literal 0 HcmV?d00001 diff --git a/csst_mci_sim/support/MCIinstrumentModel.py b/csst_mci_sim/support/MCIinstrumentModel.py index 8777e9e..33993b6 100644 --- a/csst_mci_sim/support/MCIinstrumentModel.py +++ b/csst_mci_sim/support/MCIinstrumentModel.py @@ -64,5 +64,5 @@ def CCDnonLinearityModel(data, beta=6e-7): return out ################################################################### -if __name__ == '__main__': - print() +# if __name__ == '__main__': +# print() diff --git a/csst_mci_sim/support/__pycache__/cosmicrays.cpython-311.pyc b/csst_mci_sim/support/__pycache__/cosmicrays.cpython-311.pyc index 71d7f3c4c973d74370e9fe6231971f87a80af69c..363ea44b746a6f72300fbc41fbc30dbdbb6d62e4 100644 GIT binary patch delta 1520 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 diff --git a/csst_mci_sim/support/__pycache__/shao.cpython-311.pyc b/csst_mci_sim/support/__pycache__/shao.cpython-311.pyc index e6195600f5a5949ab8fa6657334a6e58e2ed2655..02e959d2adb78530498c102dd523d3e74130b8e8 100644 GIT binary patch delta 1174 zcmZuwO>7%Q6rS;}z4os6XKZimU3=r0#IBvtx-Q~|MB3!SfuL3u5{D{{x}cVpsy~Ym z?enD-NSvU2LV!@gy#zrdpvno5T5*IN+DM#`Dse+XNVF;kE~w0|lgMuRr1y5-d*3&+ z-~3#k|6$(z(lm7@?VY!4uf2EE{8aHpoNif7eii8tzp)tm7{9Bt_)}?d4MGhRP8trY zb(x({;54hnNM z#n_tkp_n3$c4;b);LEV{UQm7<6Ba{uCfl!2Wss9Prfn~BN7nZ6R{lVXSlGTKtE*hz3+Y4a z`;osrW{iCNoZrK%c#!`}#?Q>ERvqHeGY`YEmbi~&R+ras-l{$uM4b_?Ha_zr`+y(& zr9T-pMlhTv;|qZ)+u`x3lSB{ER_@{R?U9%sV`hfTxtSEBDrG50`l@_RYw?pxtlvyJ z2Ia{db|9RqQpHD3J4I#Ob^_dT9Q@_famNYLUGfK3eCj^cX^Lj3K~K>%?V&bxXqM*a zY1)fdL=D%4X}89;p(i|iE$q0*yI2!}vY+;2Lv)ndpqyN#=L(2!jQ~Wr-tNZ)}HtI+I2mS{1 A-2eap delta 1204 zcmZuwL2DC16rRa$vb#xkvzug_-E6k$+9qvUnlvrq#X|)z3R3kTc#v4T2yHE5yC9gC ziw94Fm3I&iVk=mMdMO1(QAEUx*w%vn08e_-g9;uLo!zz}X?-wn-n{qCoA=Gkdp3G! zRDK}KQNrZoFXQ~&ihP?Zss3_Xa%|?<`2J8K_FWj40t zDh0ufUI`P@5YQ2Zm9}COR*Z$$gknnBvrWO5Lcvl%ab-L!8fQlPo|G^0bv zYy>o{N~WXjsXgh^CMM|`xERx^iAN*{?@0zt1=lzwx5F_EUy>G;^zLGS8CZCY0rF^%+oV(8@A`PUCx}EL#=4?CQt&Js z7qdv!I(4w2_Tg()!^f&Z`|*uh=D}Q0u$t86PRK(ybb$l=pon$Nq&;{-vr2__YEXn; z=z|jU!+SXdyD4H&pD>D<5wYiH}*FV#t)ya;L5I@Ay3wc^GdA)e VHnMu!o(s_$uI01z9Dd24{0CI@=c)hz -- GitLab