type=int, action='append', help='specific source id to run') parser.add_argument('-m', '--mlimit', default=None, type=int, help='limit memory usage') parser.add_argument('-r', '--rerun', action='store_true', help='rerun failed jobs') #parser.add_force() #parser.add_debug() parser.add_verbose() args = parser.parse_args() analyzer = Analyzer(args.config, args.catfile, args.popfile) if args.mlimit is not None: if args.mlimit == 0: mlimit = analyzer.get_memory_limit() else: mlimit = args.mlimit * GB soft, hard = analyzer.set_memory_limit(mlimit) logger.info("Setting memory limit to %.3f GB" % (soft / GB)) if args.mc_source_id is None: basename = os.path.splitext(args.catfile)[0] imin, imax = list(map(int, basename.rsplit('_', 1)[-1].split('-')))
if outfile: ugali.utils.fileio.write(outfile,results,clobber=True) return results if __name__ == "__main__": import ugali.utils.parser parser = ugali.utils.parser.Parser(description=__doc__) parser.add_config() parser.add_argument('-p','--popfile',default=None, help='simulated population input file') parser.add_argument('-c','--catfile',default=None, help='simulated catalog input file') parser.add_argument('-o','--outfile',default=None, help='output results file') parser.add_argument('-i','--mc-source-id',default=None,type=int,action='append', help='specific source id to run') parser.add_force() parser.add_debug() parser.add_verbose() args = parser.parse_args() analyzer = Analyzer(args.config,args.catfile,args.popfile) if args.mc_source_id is None: basename = os.path.splitext(args.catfile)[0] imin,imax = list(map(int,basename.rsplit('_',1)[-1].split('-'))) args.mc_source_id = np.arange(imin,imax+1) analyzer.run(outfile=args.outfile,mc_source_id=args.mc_source_id)