diff --git a/script/Diagnostics/sig_process.py b/script/Diagnostics/sig_process.py index bdddb80..5e3c856 100644 --- a/script/Diagnostics/sig_process.py +++ b/script/Diagnostics/sig_process.py @@ -25,32 +25,29 @@ def blm_remove_spikes(x): print("0") x = copy.copy(x) if x.size > 5: # Must have enough sample points + print ("A") d_x = x[1:] - x[:-1] maximum = x.max() - x.min() - + print ("B") for i in range(x.size-3): if d_x[i+1] > 0.5 * maximum and d_x[i+2] < -0.5 * maximum: # 1 point spike x[i+2] = (x[i:i+5].sum() - x[i+2])/4 if d_x[i+1] > 0.5 * maximum and d_x[i+2] >= -0.5 * maximum: + print ("B") # 2 point spikes x[i+2] = (x[i:i+2].sum() + x[i+4])/3 x[i+3] = (x[i+1] + x[i+4:i+6].sum())/3 - print ("A") # Handle edge points if d_x[-1] > 0.5 * maximum: - print ("B") x[-1] = x[-3:-1].sum() / 2 if d_x[-2] > 0.5 * maximum: - print ("C") x[-2] = (x[-1] + x[-4:-2].sum()) / 3 if d_x[0] < -0.5 * maximum: - print ("D") x[0] = x[1:3].sum() / 2 if d_x[1] < -0.5*maximum: - print ("E") x[1] = (x[0] + x[2:4].sum()) / 3 return x