def make_instcat_header(star_db, obs_md, outfile, object_catalogs=(), imsim_catalog=False, nsnap=1, vistime=30., minsource=100): """ Write the header part of an instance catalog. Parameters ---------- star_db: lsst.sims.catUtils.baseCatalogModels.StarObj InstanceCatalog object for stars. Connects to the UW fatboy db server. obs_md: lsst.sims.utils.ObservationMetaData Observation metadata object. object_catalogs: sequence [()] Object catalog names to include in base phosim instance catalog. Defaults to an empty tuple. imsim_catalog: bool [False] Flag to write an imSim-style object catalog. nsnap: int [1] Number of snaps per visit. vistime: float [30.] Visit time in seconds. minsource: int [100] Minimum number of objects for phosim.py to simulate a chip. Returns ------- lsst.sims.catUtils.exampleCatalogDefinitions.PhoSimCatalogPoint object """ cat = PhoSimCatalogPoint(star_db, obs_metadata=obs_md) cat.phoSimHeaderMap = copy.deepcopy(DefaultPhoSimHeaderMap) cat.phoSimHeaderMap['nsnap'] = nsnap cat.phoSimHeaderMap['vistime'] = vistime if imsim_catalog: cat.phoSimHeaderMap['rawSeeing'] = ('rawSeeing', None) cat.phoSimHeaderMap['FWHMgeom'] = ('FWHMgeom', None) cat.phoSimHeaderMap['FWHMeff'] = ('FWHMeff', None) else: cat.phoSimHeaderMap['camconfig'] = 1 with open(outfile, 'w') as output: cat.write_header(output) if not imsim_catalog: output.write('minsource %i\n' % minsource) for cat_name in object_catalogs: output.write('includeobj %s.gz\n' % cat_name) return cat
def make_instcat_header(star_db, obs_md, outfile, object_catalogs=(), nsnap=1, vistime=30., minsource=100): """ Write the header part of an instance catalog. Parameters ---------- star_db: lsst.sims.catUtils.baseCatalogModels.StarObj InstanceCatalog object for stars. Connects to the UW fatboy db server. obs_md: lsst.sims.utils.ObservationMetaData Observation metadata object. object_catalogs: sequence [()] Object catalog names to include in base phosim instance catalog. Defaults to an empty tuple. nsnap: int [1] Number of snaps per visit. vistime: float [30.] Visit time in seconds. minsource: int [100] Minimum number of objects for phosim.py to simulate a chip. Ignored. As of 26 Nov. 2019 this value is no longer written to the header file. Returns ------- lsst.sims.catUtils.exampleCatalogDefinitions.PhoSimCatalogPoint object """ cat = PhoSimCatalogPoint(star_db, obs_metadata=obs_md) cat.phoSimHeaderMap = copy.deepcopy(DefaultPhoSimHeaderMap) cat.phoSimHeaderMap['nsnap'] = nsnap cat.phoSimHeaderMap['vistime'] = vistime with open(outfile, 'w') as output: cat.write_header(output) for cat_name in object_catalogs: output.write('includeobj %s.gz\n' % cat_name) return cat
obs.pointingDec = np.degrees(obs.OpsimMetaData['randomDitherFieldPerVisitDec']) rotSky = _getRotSkyPos(obs._pointingRA, obs._pointingDec, obs, obs.OpsimMetaData['ditheredRotTelPos']) obs.rotSkyPos = np.degrees(rotSky) obs.OpsimMetaData['rotTelPos'] = obs.OpsimMetaData['ditheredRotTelPos'] cat_name = os.path.join(out_dir,'phosim_cat_%d.txt' % obshistid) star_name = 'star_cat_%d.txt' % obshistid gal_name = 'gal_cat_%d.txt' % obshistid agn_name = 'agn_cat_%d.txt' % obshistid cat = PhoSimCatalogPoint(star_db, obs_metadata=obs) cat.phoSimHeaderMap = phosim_header_map with open(cat_name, 'w') as output: cat.write_header(output) output.write('includeobj %s.gz\n' % star_name) output.write('includeobj %s.gz\n' % gal_name) output.write('includeobj %s.gz\n' % agn_name) star_cat = MaskedPhoSimCatalogPoint(star_db, obs_metadata=obs) star_cat.phoSimHeaderMap = phosim_header_map bright_cat = BrightStarCatalog(star_db, obs_metadata=obs, cannot_be_null=['isBright']) star_cat.min_mag = args.min_mag bright_cat.min_mag = args.min_mag from lsst.sims.catalogs.definitions import parallelCatalogWriter cat_dict = {} cat_dict[os.path.join(out_dir, star_name)] = star_cat cat_dict[os.path.join(out_dir, 'bright_stars_%d.txt' % obshistid)] = bright_cat parallelCatalogWriter(cat_dict, chunk_size=100000, write_header=False)
rotSky = _getRotSkyPos(obs._pointingRA, obs._pointingDec, obs, obs.OpsimMetaData['ditheredRotTelPos']) obs.rotSkyPos = np.degrees(rotSky) obs.OpsimMetaData['rotTelPos'] = obs.OpsimMetaData[ 'ditheredRotTelPos'] cat_name = os.path.join(out_dir, 'phosim_cat_%d.txt' % obshistid) star_name = 'star_cat_%d.txt' % obshistid gal_name = 'gal_cat_%d.txt' % obshistid agn_name = 'agn_cat_%d.txt' % obshistid cat = PhoSimCatalogPoint(star_db, obs_metadata=obs) cat.phoSimHeaderMap = phosim_header_map with open(cat_name, 'w') as output: cat.write_header(output) output.write('includeobj %s.gz\n' % star_name) output.write('includeobj %s.gz\n' % gal_name) output.write('includeobj %s.gz\n' % agn_name) star_cat = MaskedPhoSimCatalogPoint(star_db, obs_metadata=obs) star_cat.phoSimHeaderMap = phosim_header_map bright_cat = BrightStarCatalog(star_db, obs_metadata=obs, cannot_be_null=['isBright']) star_cat.min_mag = args.min_mag bright_cat.min_mag = args.min_mag from lsst.sims.catalogs.definitions import parallelCatalogWriter cat_dict = {} cat_dict[os.path.join(out_dir, star_name)] = star_cat