Loading utils.py +39 −9 Original line number Diff line number Diff line Loading @@ -156,7 +156,7 @@ def get_runs_database(args, database): if args.tcuname is not None: selection = database.loc[database['Target']].isin([args.tcuname]) if args.verbose: print("Selection of runs based on the TCU name", args.tcuname, ". Only run with the name in the TCU are kept") print("Selection of runs based on the TCU name", args.tcuname, ". Only runs with the name in the TCU are kept") print(selection.index) # if args.night[0] != 'all': Loading @@ -175,12 +175,12 @@ def get_runs_database(args, database): databaseRuns = np.array(selection.index) if args.runlist is not None: rl = np.loadtxt(args.runlist, unpack=True, dtype=int) rl = np.loadtxt(os.environ.get('CONFIG_FOLDER') + '/' + args.runlist, unpack=True, dtype=int) #databaseRuns = np.array([a for a in rl if a in databaseRuns]) databaseRuns = np.array([a for a in rl]) if args.verbose: print("Final run selection", databaseRuns) print("Final run selection: ", databaseRuns) return databaseRuns Loading Loading @@ -276,7 +276,7 @@ def get_coordinates(args): """ returns the name and the Ra/Dec of the source """ success = False if args.source_name is None: raise ValueError("Please provide the name of the analysed source by using --source_name") Loading @@ -286,13 +286,43 @@ def get_coordinates(args): c = SkyCoord.from_name(args.source_name) ra = c.ra.value dec = c.dec.value success = True if args.verbose: print("Coordinates of ", args.source_name, "found using Astropy: RA ", ra, ", Dec ", dec) except: print("Cannot resolve target name", args.source_name, "using Astropy. Switch to the Ra and Dec provided.") print("Cannot resolve target name", args.source_name, "using Astropy. Switch to the Ra and Dec provided by the user.") if all(item is not None for item in [args.ra, args.dec]): if args.ra >= 0 and args.ra < 360 and args.dec >= -90 and args.dec < 90: ra = args.ra dec = args.dec print("Using user provided RA and Dec.") if args.verbose: print("Coordinates provided by the user: RA ", ra, ", Dec", dec) else: print("Please provide RA and Dec values by using --ra and --dec") exit(0) if (success is True and args.ra and args.dec): if args.ra != ra or args.dec != dec: print(f"WARNING! Astropy coordinates RA {ra}, Dec {dec} are different than the ones provided by the user RA {args.ra}, Dec {args.dec}.") return ra, dec def print_runs(table, mask, by_date=False): """ function to print out the run numbers that survive a certain set of cuts """ print(f"{mask.sum()} wobble runs for the selected source") print(f"Observation time: {table['elapsed_time'][mask].sum()/3600:.2f} hours") print() print(np.array2string(np.array(table['runnumber'][mask]), separator=', ')) if by_date: print() print() dates = [datetime.utcfromtimestamp(t - 0.5 * 86400).date() for t in table['time'][mask]] for i, date in enumerate(np.unique(dates)): rr = [] for d, run in zip(dates, table['runnumber'][mask]): if d != date: continue rr.append(run) print(i + 1, ":", date, ":", rr) Loading
utils.py +39 −9 Original line number Diff line number Diff line Loading @@ -156,7 +156,7 @@ def get_runs_database(args, database): if args.tcuname is not None: selection = database.loc[database['Target']].isin([args.tcuname]) if args.verbose: print("Selection of runs based on the TCU name", args.tcuname, ". Only run with the name in the TCU are kept") print("Selection of runs based on the TCU name", args.tcuname, ". Only runs with the name in the TCU are kept") print(selection.index) # if args.night[0] != 'all': Loading @@ -175,12 +175,12 @@ def get_runs_database(args, database): databaseRuns = np.array(selection.index) if args.runlist is not None: rl = np.loadtxt(args.runlist, unpack=True, dtype=int) rl = np.loadtxt(os.environ.get('CONFIG_FOLDER') + '/' + args.runlist, unpack=True, dtype=int) #databaseRuns = np.array([a for a in rl if a in databaseRuns]) databaseRuns = np.array([a for a in rl]) if args.verbose: print("Final run selection", databaseRuns) print("Final run selection: ", databaseRuns) return databaseRuns Loading Loading @@ -276,7 +276,7 @@ def get_coordinates(args): """ returns the name and the Ra/Dec of the source """ success = False if args.source_name is None: raise ValueError("Please provide the name of the analysed source by using --source_name") Loading @@ -286,13 +286,43 @@ def get_coordinates(args): c = SkyCoord.from_name(args.source_name) ra = c.ra.value dec = c.dec.value success = True if args.verbose: print("Coordinates of ", args.source_name, "found using Astropy: RA ", ra, ", Dec ", dec) except: print("Cannot resolve target name", args.source_name, "using Astropy. Switch to the Ra and Dec provided.") print("Cannot resolve target name", args.source_name, "using Astropy. Switch to the Ra and Dec provided by the user.") if all(item is not None for item in [args.ra, args.dec]): if args.ra >= 0 and args.ra < 360 and args.dec >= -90 and args.dec < 90: ra = args.ra dec = args.dec print("Using user provided RA and Dec.") if args.verbose: print("Coordinates provided by the user: RA ", ra, ", Dec", dec) else: print("Please provide RA and Dec values by using --ra and --dec") exit(0) if (success is True and args.ra and args.dec): if args.ra != ra or args.dec != dec: print(f"WARNING! Astropy coordinates RA {ra}, Dec {dec} are different than the ones provided by the user RA {args.ra}, Dec {args.dec}.") return ra, dec def print_runs(table, mask, by_date=False): """ function to print out the run numbers that survive a certain set of cuts """ print(f"{mask.sum()} wobble runs for the selected source") print(f"Observation time: {table['elapsed_time'][mask].sum()/3600:.2f} hours") print() print(np.array2string(np.array(table['runnumber'][mask]), separator=', ')) if by_date: print() print() dates = [datetime.utcfromtimestamp(t - 0.5 * 86400).date() for t in table['time'][mask]] for i, date in enumerate(np.unique(dates)): rr = [] for d, run in zip(dates, table['runnumber'][mask]): if d != date: continue rr.append(run) print(i + 1, ":", date, ":", rr)