diff --git a/geomagio/TimeseriesUtility.py b/geomagio/TimeseriesUtility.py index da7086d967b2e2c20c817b1381d204a1039dba80..69917909fdbaf3911d968f4e193dc5e81ee60705 100644 --- a/geomagio/TimeseriesUtility.py +++ b/geomagio/TimeseriesUtility.py @@ -195,9 +195,26 @@ def merge_streams(*streams): stream with contiguous traces merged, and gaps filled with numpy.nan """ merged = obspy.core.Stream() +<<<<<<< HEAD # add unmasked, split traces to be merged for stream in streams: merged += mask_stream(stream) +======= + masked_trace = None + + # add unmasked, split traces to be merged + for stream in streams: + merged += mask_stream(stream) + + # if trace is completely masked separate out to be added back in later + for trace in merged: + if trace.data.mask.all(): + if not masked_trace: + masked_trace = trace + else: + masked_trace += trace + +>>>>>>> Merge stream issues with empty channels # split traces that contain gaps merged = merged.split() # merge data @@ -206,6 +223,19 @@ def merge_streams(*streams): interpolation_samples=1, # 1 = when there is overlap, use data from trace with last endtime method=1) +<<<<<<< HEAD +======= + # print('\n masked trace \n') + # print(masked_trace) + # trim masked trace to the same size as other traces and add back to merged stream + if masked_trace: + masked_trace.trim(merged[0].stats.starttime,merged[0].stats.endtime) + merged += masked_trace + # print('\n after merging masked trace back in \n') + # print(merged) + + +>>>>>>> Merge stream issues with empty channels # convert back to NaN filled array merged = unmask_stream(merged) return merged