diff --git a/gstlal/python/dagparts.py b/gstlal/python/dagparts.py index c208d86e38a29d33c6ea020c16f69946474f2261..3ebfcc65deef9e56559b1f8093b00291c7390056 100644 --- a/gstlal/python/dagparts.py +++ b/gstlal/python/dagparts.py @@ -351,6 +351,17 @@ def breakupseglists(seglists, maxextent, overlap): # +def cache_to_instruments(cache): + """! + Given a cache, returns back a string containing all the IFOs that are + contained in each of its cache entries, sorted by IFO name. + """ + observatories = set() + for cache_entry in cache: + observatories.update(groups(cache_entry.observatory, 2)) + return ''.join(sorted(list(observatories))) + + def T050017_filename(instruments, description, seg, extension, path = None): """! A function to generate a T050017 filename. @@ -383,7 +394,7 @@ def group_T050017_filename_from_T050017_files(cache_entries, extension, path = N files from H1 and template bank files from L1. """ # Check that every file has same observatory. - observatories = ''.join(sorted(list(set([cache_entry.observatory for cache_entry in cache_entries])))) + observatories = cache_to_instruments(cache_entries) split_description = cache_entries[0].description.split('_') min_bin = [x for x in split_description[:2] if x.isdigit()] max_bin = [x for x in cache_entries[-1].description.split('_')[:2] if x.isdigit()]