default=[], required=False, help='What should I do?') parser.add_argument('-r', '--run', type=str, choices=['north', 'south'], required=True, help='Run?') opt = parser.parse_args() if opt.run == 'north': import settings_north as settings else: import settings_south as settings if 'bricklist' in opt.do: write_bricklist(settings.injected_fn, settings.bricklist_fn, south=settings.run == 'south') if 'injected' in opt.do: injected = 0 for iseed, fn in enumerate(settings.randoms_fn): injected += get_legacysurvey_randoms( fn, settings.truth_fn, bricknames=settings.get_bricknames(), seed=42 * (iseed + 1)) injected.writeto(settings.injected_fn)
truth = get_truth(truth_fn,south=photsys=='S') mask = randoms.photsys == photsys logger.info('Found %d randoms in %s.',mask.sum(),photsys) if mask.any(): randoms.fill(sample_from_truth(randoms[mask],truth,seed=seed),index_self=mask,index_other=None) return randoms if __name__ == '__main__': setup_logging() parser = argparse.ArgumentParser(description='legacysim preprocessing') parser.add_argument('-d','--do',nargs='*',type=str,choices=['bricklist','injected'],default=[],required=False,help='What should I do?') parser.add_argument('-r','--run',type=str,choices=['north','south'],required=True,help='Run?') opt = parser.parse_args() if opt.run == 'north': import settings_north as settings else: import settings_south as settings if 'bricklist' in opt.do: write_bricklist(settings.injected_fn,settings.bricklist_fn,south=settings.run=='south') if 'injected' in opt.do: injected = 0 for iseed,fn in enumerate(settings.randoms_fn): injected += get_legacysurvey_randoms(fn,settings.truth_fn,bricknames=settings.get_bricknames(),seed=42*(iseed+1)) injected.writeto(settings.injected_fn)
parser = argparse.ArgumentParser(description='Obiwan main runbrick') parser.add_argument('-r', '--run', type=str, choices=['north', 'south'], required=True, help='Run?') opt = parser.parse_args() if opt.run == 'north': import settings_north as settings else: import settings_south as settings runcat = RunCatalog.from_input_cmdline( dict(brick=settings.get_bricknames(), fileid=settings.fileid, rowstart=settings.rowstart, skipid=settings.skipid)) runcat.seed = runcat.index() * 42 runcat.id = runcat.index() with TaskManager(ntasks=ntasks) as tm: for run in tm.iterate(runcat): command = [] for stage, versions in run.stages.items(): pythonpath = 'PYTHONPATH=%s' % get_pythonpath(module_dir='/src/', versions=versions, full=True,
from obiwan import runbrick,RunCatalog,get_randoms_id,setup_logging from obiwan.batch import TaskManager ntasks = int(os.getenv('SLURM_NTASKS','1')) threads = int(os.getenv('OMP_NUM_THREADS','1')) parser = argparse.ArgumentParser(description='Obiwan main runbrick') parser.add_argument('-r','--run',type=str,choices=['north','south'],required=True,help='Run?') opt = parser.parse_args() if opt.run == 'north': import settings_north as settings else: import settings_south as settings runcat = RunCatalog.from_input_cmdline(dict(brick=settings.get_bricknames(), fileid=settings.fileid,rowstart=settings.rowstart,skipid=settings.skipid)) runcat.seed = runcat.index()*42 brick = [brickname.split()[0] for brickname in open('missing_%s.txt' % opt.run,'r')] torerun = RunCatalog.from_input_cmdline(dict(brick=brick, fileid=settings.fileid,rowstart=settings.rowstart,skipid=settings.skipid)) #torerun = RunCatalog.from_list('missing_%s.txt' % opt.run) mask = runcat.in1d(torerun) runcat = runcat[mask] with TaskManager(ntasks=ntasks) as tm: for run in tm.iterate(runcat):
photsys = 'S' if south else 'N' with open(filename,'w') as file: for brickname in np.unique(targets.brickname[targets.photsys == photsys]): file.write('{}\n'.format(brickname)) if __name__ == '__main__': setup_logging() parser = argparse.ArgumentParser(description='legacysim preprocessing') parser.add_argument('-d','--do',nargs='*',type=str,choices=['bricklist','injected'],default=[],required=False,help='What should I do?') parser.add_argument('-r','--run',type=str,choices=['north','south'],required=True,help='Run?') opt = parser.parse_args() south = opt.run == 'south' if not south: import settings_north as settings else: import settings_south as settings if 'bricklist' in opt.do: write_bricklist(settings.bricklist_fn,south=south) if 'injected' in opt.do: injected = get_grid_randoms(settings.truth_fn,bricknames=settings.get_bricknames(),south=south,seed=42) #injected = 0 #for iseed,fn in enumerate(settings.randoms_fn): # injected += get_legacysurvey_randoms(fn,settings.truth_fn,bricknames=settings.get_bricknames(),seed=42*(iseed+1)) injected.writeto(settings.injected_fn)