diff --git a/ObservationSim/Instrument/Filter.py b/ObservationSim/Instrument/Filter.py index d02416950904d970585f4873e0183823c99377fa..16ec892191314bbe92637be69a549530069ad439 100755 --- a/ObservationSim/Instrument/Filter.py +++ b/ObservationSim/Instrument/Filter.py @@ -40,6 +40,7 @@ class Filter(object): self.sky_background = filter_param.param[filter_type][5] self.mag_saturation = filter_param.param[filter_type][6] self.mag_limiting = filter_param.param[filter_type][7] + self.zodical_spec = None def is_too_bright(self, mag, margin=-2.5): return mag <= self.mag_saturation + margin @@ -114,10 +115,14 @@ class Filter(object): sl = Straylight(jtime=jtime, sat_pos=sat_pos, pointing_radec=pointing_radec,sun_pos=sun_pos) if self.filter_type in ["GU","GV","GI"]: s_pix, spec = sl.calculateStrayLightGrating(grating = self.filter_type.upper()) + if s_pix>0.8: + s_pix = 0.8 self.sky_background = s_pix self.zodical_spec = spec elif self.filter_type.lower() in ["nuv","u","g","r","i","z","y"]: s_pix = sl.calculateStrayLightFilter(filter=self.filter_type.lower()) + if s_pix>1: + s_pix = 1 self.sky_background = s_pix self.zodical_spec = None diff --git a/ObservationSim/ObservationSim.py b/ObservationSim/ObservationSim.py index 05e77fc64e71f1fab4db04a2e4aeacd6af612ab8..14bc8b4a56f32ceb3ec518ec428258272ac6e9d0 100755 --- a/ObservationSim/ObservationSim.py +++ b/ObservationSim/ObservationSim.py @@ -107,9 +107,10 @@ class Observation(object): chip.img.setOrigin(chip.bound.xmin, chip.bound.ymin) chip.img.wcs = wcs_fp - filt.setFilterStrayLightPixel(jtime = pointing.jdt, sat_pos = np.array([pointing.sat_x, pointing.sat_y, pointing.sat_z]), pointing_radec = np.array([pointing.ra,pointing.dec]), sun_pos = np.array([pointing.sun_x,pointing.sun_y,pointing.sun_z])) + if self.config["obs_setting"]["enable_straylight_model"]: + filt.setFilterStrayLightPixel(jtime = pointing.jdt, sat_pos = np.array([pointing.sat_x, pointing.sat_y, pointing.sat_z]), pointing_radec = np.array([pointing.ra,pointing.dec]), sun_pos = np.array([pointing.sun_x,pointing.sun_y,pointing.sun_z])) - print("========================sky pix========================\n") + print("========================sky pix========================") print(filt.sky_background) if chip.survey_type == "photometric": diff --git a/config/config_C6.yaml b/config/config_C6.yaml index c7b089d4c34f8fbe40c92fbbfc07fc3bd19deffd..b68442fe42e5fd329fbd6b3a2b60c71f9744c6b8 100644 --- a/config/config_C6.yaml +++ b/config/config_C6.yaml @@ -105,6 +105,9 @@ obs_setting: # Whether to enable astrometric modeling enable_astrometric_model: True + # Whether to enable straylight model + enable_straylight_model: False + # Cut by saturation magnitude in which band? cut_in_band: "z"