Ramp detection code by Carlos RIVERA
import numpy as np import bottleneck as bn def moving_average(arr,window): window = np.round(window).astype(int) arr_moving_avg = bn.move_mean(arr, window=window//2, min_count=1) arr_moving_avg = np.flip(bn.move_mean(np.flip(arr_moving_avg) , window=window//2, min_count=1)) return arr_moving_avg # Get data from oscilloscope # time,ramp,signal_1,signal_2 = .... ## Use only downward ramp ramp_type = "down" diff_ramp = np.diff(moving_average(ramp,400)) if ramp_type == "down": index = np.where(diff_ramp < 0) else: index = np.where(diff_ramp > 0) time=time[index] ramp=ramp[index] signal_1=signal_1[index] signal_2=signal_2[index]
Leave a Comment