Loading Catalog/C6_50sqdeg.py +1 −1 Original line number Diff line number Diff line Loading @@ -71,7 +71,7 @@ class Catalog(CatalogBase): def __init__(self, config, chip, pointing, chip_output, filt, **kwargs): super().__init__() self.cat_dir = os.path.join(config["data_dir"], config["catalog_options"]["input_path"]["cat_dir"]) self.seed_Av = config["catalog_options"]["seed_Av"] # self.seed_Av = config["catalog_options"]["seed_Av"] self.cosmo = FlatLambdaCDM(H0=67.66, Om0=0.3111) Loading ObservationSim/ObservationSim.py +2 −2 Original line number Diff line number Diff line Loading @@ -93,7 +93,7 @@ class Observation(object): chip = self.prepare_chip_for_exposure(chip, ra_cen, dec_cen, pointing) # Load catalogues self.cat = self.Catalog(config=self.config, chip=chip, pointing=pointing, cat_dir=cat_dir, sed_dir=sed_dir, chip_output=chip_output, filt=filt) # self.cat = self.Catalog(config=self.config, chip=chip, pointing=pointing, cat_dir=cat_dir, sed_dir=sed_dir, chip_output=chip_output, filt=filt) # Initialize SimSteps sim_steps = SimSteps(overall_config=self.config, chip_output=chip_output, all_filters=self.all_filters) Loading @@ -112,7 +112,7 @@ class Observation(object): filt=filt, tel=self.tel, pointing=pointing, catalog=self.cat, catalog=self.Catalog, obs_param=obs_param) chip_output.Log_info("Finished simulation step: %s"%(step)) except Exception as e: Loading ObservationSim/_util.py +1 −1 Original line number Diff line number Diff line Loading @@ -13,7 +13,7 @@ def parse_args(): ''' parser = argparse.ArgumentParser() parser.add_argument('--config_file', type=str, required=True, help='.yaml config file for simulation settings.') parser.add_argument('--catalog', type=str, required=True, help='name of the catalog interface class to be loaded.') parser.add_argument('--catalog', type=str, help='name of the catalog interface class to be loaded.') parser.add_argument('-c', '--config_dir', type=str, help='Directory that houses the .yaml config file.') parser.add_argument('-d', '--data_dir', type=str, help='Directory that houses the input data.') parser.add_argument('-w', '--work_dir', type=str, help='The path for output.') Loading ObservationSim/sim_steps/add_objects.py +12 −6 Original line number Diff line number Diff line Loading @@ -12,6 +12,12 @@ def add_objects(self, chip, filt, tel, pointing, catalog, obs_param): # Prepare output file(s) for this chip self.chip_output.create_output_file() # Load catalogues if catalog is None: self.chip_output.Log_error("Catalog interface class must be specified for SCIE-OBS") raise ValueError("Catalog interface class must be specified for SCIE-OBS") cat = catalog(config=self.overall_config, chip=chip, pointing=pointing, chip_output=self.chip_output, filt=filt) # Prepare the PSF model if self.overall_config["psf_setting"]["psf_model"] == "Gauss": psf_model = PSFGauss(chip=chip, psfRa=self.overall_config["psf_setting"]["psf_rcont"]) Loading Loading @@ -48,7 +54,7 @@ def add_objects(self, chip, filt, tel, pointing, catalog, obs_param): chip_wcs = galsim.FitsWCS(header = self.h_ext) # Loop over objects nobj = len(catalog.objs) nobj = len(cat.objs) missed_obj = 0 bright_obj = 0 dim_obj = 0 Loading @@ -56,19 +62,19 @@ def add_objects(self, chip, filt, tel, pointing, catalog, obs_param): # # [DEBUG] [TODO] # if j >= 10: # break obj = catalog.objs[j] obj = cat.objs[j] # load and convert SED; also caculate object's magnitude in all CSST bands try: sed_data = catalog.load_sed(obj) norm_filt = catalog.load_norm_filt(obj) obj.sed, obj.param["mag_%s"%filt.filter_type.lower()], obj.param["flux_%s"%filt.filter_type.lower()] = catalog.convert_sed( sed_data = cat.load_sed(obj) norm_filt = cat.load_norm_filt(obj) obj.sed, obj.param["mag_%s"%filt.filter_type.lower()], obj.param["flux_%s"%filt.filter_type.lower()] = cat.convert_sed( mag=obj.param["mag_use_normal"], sed=sed_data, target_filt=filt, norm_filt=norm_filt, ) _, obj.param["mag_%s"%cut_filter.filter_type.lower()], obj.param["flux_%s"%cut_filter.filter_type.lower()] = catalog.convert_sed( _, obj.param["mag_%s"%cut_filter.filter_type.lower()], obj.param["flux_%s"%cut_filter.filter_type.lower()] = cat.convert_sed( mag=obj.param["mag_use_normal"], sed=sed_data, target_filt=cut_filter, Loading ObservationSim/sim_steps/add_pattern_noise.py +2 −0 Original line number Diff line number Diff line Loading @@ -4,6 +4,8 @@ from ObservationSim.Instrument.Chip import Effects def apply_PRNU(self, chip, filt, tel, pointing, catalog, obs_param): chip.img *= chip.prnu_img if self.overall_config["output_setting"]["prnu_output"] == True: chip.prnu_img.write("%s/FlatImg_PRNU_%s.fits" % (self.chip_output.subdir, chip.chipID)) return chip, filt, tel, pointing def add_poisson_and_dark(self, chip, filt, tel, pointing, catalog, obs_param): Loading Loading
Catalog/C6_50sqdeg.py +1 −1 Original line number Diff line number Diff line Loading @@ -71,7 +71,7 @@ class Catalog(CatalogBase): def __init__(self, config, chip, pointing, chip_output, filt, **kwargs): super().__init__() self.cat_dir = os.path.join(config["data_dir"], config["catalog_options"]["input_path"]["cat_dir"]) self.seed_Av = config["catalog_options"]["seed_Av"] # self.seed_Av = config["catalog_options"]["seed_Av"] self.cosmo = FlatLambdaCDM(H0=67.66, Om0=0.3111) Loading
ObservationSim/ObservationSim.py +2 −2 Original line number Diff line number Diff line Loading @@ -93,7 +93,7 @@ class Observation(object): chip = self.prepare_chip_for_exposure(chip, ra_cen, dec_cen, pointing) # Load catalogues self.cat = self.Catalog(config=self.config, chip=chip, pointing=pointing, cat_dir=cat_dir, sed_dir=sed_dir, chip_output=chip_output, filt=filt) # self.cat = self.Catalog(config=self.config, chip=chip, pointing=pointing, cat_dir=cat_dir, sed_dir=sed_dir, chip_output=chip_output, filt=filt) # Initialize SimSteps sim_steps = SimSteps(overall_config=self.config, chip_output=chip_output, all_filters=self.all_filters) Loading @@ -112,7 +112,7 @@ class Observation(object): filt=filt, tel=self.tel, pointing=pointing, catalog=self.cat, catalog=self.Catalog, obs_param=obs_param) chip_output.Log_info("Finished simulation step: %s"%(step)) except Exception as e: Loading
ObservationSim/_util.py +1 −1 Original line number Diff line number Diff line Loading @@ -13,7 +13,7 @@ def parse_args(): ''' parser = argparse.ArgumentParser() parser.add_argument('--config_file', type=str, required=True, help='.yaml config file for simulation settings.') parser.add_argument('--catalog', type=str, required=True, help='name of the catalog interface class to be loaded.') parser.add_argument('--catalog', type=str, help='name of the catalog interface class to be loaded.') parser.add_argument('-c', '--config_dir', type=str, help='Directory that houses the .yaml config file.') parser.add_argument('-d', '--data_dir', type=str, help='Directory that houses the input data.') parser.add_argument('-w', '--work_dir', type=str, help='The path for output.') Loading
ObservationSim/sim_steps/add_objects.py +12 −6 Original line number Diff line number Diff line Loading @@ -12,6 +12,12 @@ def add_objects(self, chip, filt, tel, pointing, catalog, obs_param): # Prepare output file(s) for this chip self.chip_output.create_output_file() # Load catalogues if catalog is None: self.chip_output.Log_error("Catalog interface class must be specified for SCIE-OBS") raise ValueError("Catalog interface class must be specified for SCIE-OBS") cat = catalog(config=self.overall_config, chip=chip, pointing=pointing, chip_output=self.chip_output, filt=filt) # Prepare the PSF model if self.overall_config["psf_setting"]["psf_model"] == "Gauss": psf_model = PSFGauss(chip=chip, psfRa=self.overall_config["psf_setting"]["psf_rcont"]) Loading Loading @@ -48,7 +54,7 @@ def add_objects(self, chip, filt, tel, pointing, catalog, obs_param): chip_wcs = galsim.FitsWCS(header = self.h_ext) # Loop over objects nobj = len(catalog.objs) nobj = len(cat.objs) missed_obj = 0 bright_obj = 0 dim_obj = 0 Loading @@ -56,19 +62,19 @@ def add_objects(self, chip, filt, tel, pointing, catalog, obs_param): # # [DEBUG] [TODO] # if j >= 10: # break obj = catalog.objs[j] obj = cat.objs[j] # load and convert SED; also caculate object's magnitude in all CSST bands try: sed_data = catalog.load_sed(obj) norm_filt = catalog.load_norm_filt(obj) obj.sed, obj.param["mag_%s"%filt.filter_type.lower()], obj.param["flux_%s"%filt.filter_type.lower()] = catalog.convert_sed( sed_data = cat.load_sed(obj) norm_filt = cat.load_norm_filt(obj) obj.sed, obj.param["mag_%s"%filt.filter_type.lower()], obj.param["flux_%s"%filt.filter_type.lower()] = cat.convert_sed( mag=obj.param["mag_use_normal"], sed=sed_data, target_filt=filt, norm_filt=norm_filt, ) _, obj.param["mag_%s"%cut_filter.filter_type.lower()], obj.param["flux_%s"%cut_filter.filter_type.lower()] = catalog.convert_sed( _, obj.param["mag_%s"%cut_filter.filter_type.lower()], obj.param["flux_%s"%cut_filter.filter_type.lower()] = cat.convert_sed( mag=obj.param["mag_use_normal"], sed=sed_data, target_filt=cut_filter, Loading
ObservationSim/sim_steps/add_pattern_noise.py +2 −0 Original line number Diff line number Diff line Loading @@ -4,6 +4,8 @@ from ObservationSim.Instrument.Chip import Effects def apply_PRNU(self, chip, filt, tel, pointing, catalog, obs_param): chip.img *= chip.prnu_img if self.overall_config["output_setting"]["prnu_output"] == True: chip.prnu_img.write("%s/FlatImg_PRNU_%s.fits" % (self.chip_output.subdir, chip.chipID)) return chip, filt, tel, pointing def add_poisson_and_dark(self, chip, filt, tel, pointing, catalog, obs_param): Loading