Commit 59814d64 authored by Wei Chengliang's avatar Wei Chengliang
Browse files

Merge branch 'develop' of https://csst-tb.bao.ac.cn/code/csst-sims/csst_msc_sim into develop

parents fb74fc22 ab15c00f
Loading
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -11,3 +11,4 @@ Cython==3.0.6
numba==0.59.1
psutil==5.9.8
toml==0.10.2
lmfit==1.2.2
 No newline at end of file
+1 −1
Original line number Diff line number Diff line
@@ -98,7 +98,7 @@ setup(name='CSSTSim',
        'ObservationSim.Instrument.data.sls_conf': ['*.conf', '*.fits'],
        'ObservationSim.Instrument.data.flatCube': ['*.fits'],
        'Catalog.data': ['*.fits','*.so'],
        'ObservationSim.Config.Header':['*.header','*.lst'],
        'ObservationSim.Config.Header':['*.fits','*.lst'],
        'ObservationSim.Straylight.data': ['*.dat'],
        'ObservationSim.Straylight.data.sky': ['*.dat'],
        'ObservationSim.Straylight.lib': ['*'],
+28 −22
Original line number Diff line number Diff line
@@ -145,16 +145,22 @@ class TestSpecDisperse(unittest.TestCase):
    def __init__(self, methodName='runTest'):
        super(TestSpecDisperse,self).__init__(methodName)

        self.filePath('csst_fz_gc0')
        self.filePath('csst_msc_sim/test_sls_and_straylight')
        
        # self.conff = conff
        # self.throughputf = throughputf


    def filePath(self, file_name):
        fn = os.path.join(os.getenv('UNIT_TEST_DATA_ROOT'), file_name)
        self.conff= os.path.join(fn, 'CSST_GI2.conf')
        self.throughputf= os.path.join(fn, 'GI.Throughput.1st.fits')
        self.testDir = fn
        self.outDataFn = os.path.join(fn,'output')
        if os.path.isdir(self.outDataFn):
            pass
        else:
            os.mkdir(self.outDataFn)

    def test_rotate901(self):
        m = np.array([[1,2,3,4,5],[6,7,8,9,10],[11,12,13,14,15],[16,17,18,19,20],[21,22,23,24,25]])
@@ -231,16 +237,16 @@ class TestSpecDisperse(unittest.TestCase):
        ids1 = wave_pix[ids] > 6500
        print('Spec disperse flux test')
        self.assertTrue(np.mean((wave_flux[ids][ids1] - sed_i(wave_pix[ids][ids1]))/sed_i(wave_pix[ids][ids1]))<0.004)
        plt.figure()
        plt.plot(wave_pix, wave_flux)
        plt.plot(sed['WAVELENGTH'], sed['FLUX'])
        plt.xlim(6200, 10000)
        plt.ylim(1, 3)
        plt.yscale('log')
        plt.xlabel('$\lambda$')
        plt.ylabel('$F\lambda$')
        plt.legend(['extracted', 'input'])
        plt.show()
        # plt.figure()
        # plt.plot(wave_pix, wave_flux)
        # plt.plot(sed['WAVELENGTH'], sed['FLUX'])
        # plt.xlim(6200, 10000)
        # plt.ylim(1, 3)
        # plt.yscale('log')
        # plt.xlabel('$\lambda$')
        # plt.ylabel('$F\lambda$')
        # plt.legend(['extracted', 'input'])
        # plt.show()

    def test_Specdistperse2(self):

@@ -303,16 +309,16 @@ class TestSpecDisperse(unittest.TestCase):
        self.assertTrue(fwhmx/deltLamda_pix*pix_scale - psf_fwhm  < np.abs(0.02))
        # print('error is ',np.mean((wave_flux[ids][ids1] - sed_i(wave_pix[ids][ids1]))/sed_i(wave_pix[ids][ids1])))
        # self.assertTrue(np.mean((wave_flux[ids][ids1] - sed_i(wave_pix[ids][ids1]))/sed_i(wave_pix[ids][ids1]))<0.004)
        plt.figure()
        plt.plot(wave_pix, wave_flux)
        plt.plot(sed['WAVELENGTH'], sed['FLUX'])
        plt.xlim(6200, 10000)
        plt.ylim(1, 75)
        plt.yscale('log')
        plt.xlabel('$\lambda$')
        plt.ylabel('$F\lambda$')
        plt.legend(['extracted', 'input'])
        plt.show()
        # plt.figure()
        # plt.plot(wave_pix, wave_flux)
        # plt.plot(sed['WAVELENGTH'], sed['FLUX'])
        # plt.xlim(6200, 10000)
        # plt.ylim(1, 75)
        # plt.yscale('log')
        # plt.xlabel('$\lambda$')
        # plt.ylabel('$F\lambda$')
        # plt.legend(['extracted', 'input'])
        # plt.show()

    def test_Specdistperse3(self):

@@ -484,7 +490,7 @@ class TestSpecDisperse(unittest.TestCase):

        print('Spec double disperse test')
        from astropy.io import fits
        fits.writeto('test.fits',chip.img.array, overwrite = True)
        fits.writeto(os.path.join(self.outDataFn,'test_sls_doubleDisp.fits'),chip.img.array, overwrite = True)

        # plt.figure()
        # plt.imshow(chip.img.array)
+1 −1
Original line number Diff line number Diff line
@@ -74,7 +74,7 @@ class TestStraylight(unittest.TestCase):
        # print(file_name)
        # fn = os.path.join(os.getenv('UNIT_TEST_DATA_ROOT'), file_name)
        # self.pointingData = np.loadtxt(os.path.join(fn, 'Straylight_test.dat'), dtype=np.double)
        self.filePath('csst_fz_gc0')
        self.filePath('csst_msc_sim/test_sls_and_straylight')
        self.filter = filter
        self.grating = grating
        
+10 −10
Original line number Diff line number Diff line
@@ -17,7 +17,7 @@ class DetTest(unittest.TestCase):

    def __init__(self, methodName='runTest'):
        super(DetTest,self).__init__(methodName)
        self.filePath('csst_fz_gc0')
        self.filePath('csst_msc_sim/test_sls_and_straylight')

    def filePath(self, file_name):
        self.datafn = os.path.join(os.getenv('UNIT_TEST_DATA_ROOT'), file_name)
@@ -138,15 +138,15 @@ class DetTest(unittest.TestCase):
        newimg.write(os.path.join(self.outDataFn,'test_badlines.fits'))
        del newimg,img

    def test_cte(self):
        img = galsim.Image(200,200,init_value=1000)
        img.array[50,80] = 1e4
        img.array[150,150] = 3e4
        newimgcol = Effects.CTE_Effect(copy.deepcopy(img),direction='column')
        newimgrow = Effects.CTE_Effect(copy.deepcopy(img),direction='row')
        newimgcol.write(os.path.join(self.outDataFn,'test_ctecol.fits'))
        newimgrow.write(os.path.join(self.outDataFn,'test_cterow.fits'))
        del img,newimgcol,newimgrow
    # def test_cte(self):
    #     img = galsim.Image(200,200,init_value=1000)
    #     img.array[50,80] = 1e4
    #     img.array[150,150] = 3e4
    #     newimgcol = Effects.CTE_Effect(copy.deepcopy(img),direction='column')
    #     newimgrow = Effects.CTE_Effect(copy.deepcopy(img),direction='row')
    #     newimgcol.write(os.path.join(self.outDataFn,'test_ctecol.fits'))
    #     newimgrow.write(os.path.join(self.outDataFn,'test_cterow.fits'))
    #     del img,newimgcol,newimgrow

    def test_readnoise(self):
        img = galsim.Image(200,200,init_value=1000)