From 126c4fba58f358d111b1792e7b99026ccccbc159 Mon Sep 17 00:00:00 2001 From: voulot_d Date: Thu, 24 Aug 2017 09:05:09 +0200 Subject: [PATCH] Closedown --- script/Diagnostics/ICT_timing.py | 59 --------------------------- script/Diagnostics/ICT_timing_fine.py | 11 ++++- 2 files changed, 10 insertions(+), 60 deletions(-) delete mode 100644 script/Diagnostics/ICT_timing.py diff --git a/script/Diagnostics/ICT_timing.py b/script/Diagnostics/ICT_timing.py deleted file mode 100644 index e323c77..0000000 --- a/script/Diagnostics/ICT_timing.py +++ /dev/null @@ -1,59 +0,0 @@ -import ch.psi.pshell.epics.ChannelDouble as ChannelDouble - -run("CPython/wrapper") - -#t = ChannelDouble("delay (us)", "SINEG01-DICT009-EVR0:Pul0-Delay-SP") -#t = ChannelDouble("fine delay (ns)", "SINEG01-DICT009-EVR0:UnivDlyModule0-Delay0-SP") -#q = ChannelDouble("charge (pC)", "SINEG01-DICT215:B1_CHARGE") -#V = ChannelDouble("DC output (V)", "SINEG01-DICT215:B1_VOLTAGE") -#t = ChannelDouble("delay (us)", "S10DI01-DICT113-EVR0:Pul0-Delay-SP") -#t = ChannelDouble("fine delay (ns)", "S10DI01-DICT113-EVR0:UnivDlyModule0-Delay0-SP") -#q = ChannelDouble("charge (pC)", "S10DI01-DICT025:B1_CHARGE") -#V = ChannelDouble("DC output (V)", "S10DI01-DICT025:B1_VOLTAGE") -#t = ChannelDouble("delay (us)", "SARMA01-DICT482-EVR0:Pul0-Delay-SP") -#t = ChannelDouble("fine delay (ns)", "SARMA01-DICT482-EVR0:UnivDlyModule0-Delay0-SP") -#q = ChannelDouble("charge (pC)", "SARMA01-DICT090:B1_CHARGE") -#t = ChannelDouble("delay (us)", "SARBD01-DICT599-EVR0:Pul0-Delay-SP") -t = ChannelDouble("fine delay (ns)", "SARBD01-DICT599-EVR0:UnivDlyModule0-Delay0-SP") -q = ChannelDouble("charge (pC)", "SARBD01-DICT030:B1_CHARGE") -V = ChannelDouble("DC output (V)", "SARBD01-DICT030:B1_VOLTAGE") -t.initialize() -q.initialize() -V.initialize() - -t0 = t.read() - -#start = 1003.000 -#stop = 1003.080 -#step = 0.001 -#nb = 1 -#lat = 0.300 -start = 2.2 -stop = 12.7 -step = 0.1 -nb = 5 -lat = 0.150 - - -try: - q_averager = create_averager(q, nb, lat) - V_averager = create_averager(V, nb, lat) - V_averager.monitored=True - r = lscan(t, (q_averager, V_averager), start, stop, step, latency=lat) - delay = r.getPositions(0) - charge = [val.mean for val in r.getReadable(0)] - chargerms = [val.stdev for val in r.getReadable(0)] - volt = [val.mean for val in r.getReadable(1)] - voltrms = [val.stdev for val in r.getReadable(1)] -finally: - t.write(t0) - t.close() - q.close() - V.close() -try: - i_max = charge.index(max(charge)) - min_i, max_i = max(i_max-10, 0), min(i_max+11, len(charge)) - (delay_charge_max, charge_max, delay_charge_fit, charge_fit) = extremum(delay[min_i:max_i], charge[min_i:max_i]) - print delay_charge_max, charge_max -except: - raise Exception("Fit failure") diff --git a/script/Diagnostics/ICT_timing_fine.py b/script/Diagnostics/ICT_timing_fine.py index 296be34..53884d0 100644 --- a/script/Diagnostics/ICT_timing_fine.py +++ b/script/Diagnostics/ICT_timing_fine.py @@ -24,11 +24,20 @@ step = 0.1 nb = 2 lat = 0.150 +def after_sample(record, scan): + global A, B, plt + x_pos_mean, x_pos_stdev = record.values[0].mean, record.values[0].stdev + x_width_mean, x_width_stdev = record.values[1].mean, record.values[1].stdev + p_mean, p_stdev = A * x_pos_mean + B, abs(A) * x_pos_stdev + dp_mean, dp_stdev = abs(A) * x_width_mean, abs(A) * x_width_stdev + plt.getSeries(0).appendData(record.positions[0], p_mean, p_stdev) + plt.getSeries(1).appendData(record.positions[0], dp_mean, dp_stdev) + try: q_averager = create_averager(q, nb, lat) V_averager = create_averager(V, nb, lat) V_averager.monitored=True - r = lscan(t, (q_averager, V_averager), start, stop, step, latency=lat) + r = lscan(t, (q_averager, V_averager), start, stop, step, latency=lat,after_read = after_sample) delay = r.getPositions(0) charge = [val.mean for val in r.getReadable(0)] chargerms = [val.stdev for val in r.getReadable(0)]