conn.execute(cmd) conn.commit() # fill table cmd = "INSERT INTO defect VALUES (NULL, ?, ?, ?, ?, ?, ?)" numEntries = 0 os.chdir(registryDir) for filePath in glob.glob(os.path.join("rev_*", "defects*.fits")): m = re.search(r'rev_(\d+)/defects(\d+)[AB]*\.fits', filePath) if not m: sys.stderr.write("Skipping file with invalid name: %r\n" % (filePath,)) continue print("Processing %r" % (filePath,)) fitsTable = pyfits.open(filePath) ccd = fitsTable[1].header["NAME"] serial = LsstSimMapper.getShortCcdName(ccd)+"_"+phosimVersion conn.execute(cmd, ( filePath, int(m.group(1)), ccd, serial, "1970-01-01", "2037-12-31", )) numEntries += 1 conn.commit() print("Added %d entries" % (numEntries)) conn.close()
conn.execute(cmd) conn.commit() # fill table cmd = "INSERT INTO defect VALUES (NULL, ?, ?, ?, ?, ?, ?)" numEntries = 0 os.chdir(registryDir) for filePath in glob.glob(os.path.join("rev_*", "defects*.fits")): m = re.search(r'rev_(\d+)/defects(\d+)[AB]*\.fits', filePath) if not m: sys.stderr.write("Skipping file with invalid name: %r\n" % (filePath,)) continue print "Processing %r" % (filePath,) fitsTable = pyfits.open(filePath) ccd = fitsTable[1].header["NAME"] serial = LsstSimMapper.getShortCcdName(ccd)+"_"+phosimVersion conn.execute(cmd, ( filePath, int(m.group(1)), ccd, serial, "1970-01-01", "2037-12-31", )) numEntries += 1 conn.commit() print "Added %d entries" % (numEntries) conn.close()
camConfig.transformDict = tmc def makeDir(dirPath, doClobber=False): """Make a directory; if it exists then clobber or fail, depending on doClobber @param[in] dirPath: path of directory to create @param[in] doClobber: what to do if dirPath already exists: if True and dirPath is a dir, then delete it and recreate it, else raise an exception @throw RuntimeError if dirPath exists and doClobber False """ if os.path.exists(dirPath): if doClobber and os.path.isdir(dirPath): print "Clobbering directory %r" % (dirPath,) shutil.rmtree(dirPath) else: raise RuntimeError("Directory %r exists" % (dirPath,)) print "Creating directory %r" % (dirPath,) os.makedirs(dirPath) # write data products outDir = args.OutputDir makeDir(dirPath=outDir, doClobber=args.clobber) camConfigPath = os.path.join(outDir, "camera.py") camConfig.save(camConfigPath) for detectorName, ampTable in ampTableDict.iteritems(): shortDetectorName = LsstSimMapper.getShortCcdName(detectorName) ampInfoPath = os.path.join(outDir, shortDetectorName + ".fits") ampTable.writeFits(ampInfoPath)
camConfig.transformDict = tmc def makeDir(dirPath, doClobber=False): """Make a directory; if it exists then clobber or fail, depending on doClobber @param[in] dirPath: path of directory to create @param[in] doClobber: what to do if dirPath already exists: if True and dirPath is a dir, then delete it and recreate it, else raise an exception @throw RuntimeError if dirPath exists and doClobber False """ if os.path.exists(dirPath): if doClobber and os.path.isdir(dirPath): print("Clobbering directory %r" % (dirPath, )) shutil.rmtree(dirPath) else: raise RuntimeError("Directory %r exists" % (dirPath, )) print("Creating directory %r" % (dirPath, )) os.makedirs(dirPath) # write data products outDir = args.OutputDir makeDir(dirPath=outDir, doClobber=args.clobber) camConfigPath = os.path.join(outDir, "camera.py") camConfig.save(camConfigPath) for detectorName, ampTable in ampTableDict.items(): shortDetectorName = LsstSimMapper.getShortCcdName(detectorName) ampInfoPath = os.path.join(outDir, shortDetectorName + ".fits") ampTable.writeFits(ampInfoPath)