79 lines
2.0 KiB
Python
79 lines
2.0 KiB
Python
"""
|
|
parallel photon energy and manipulator scan
|
|
"""
|
|
import math
|
|
global VECTOR, SENSORS
|
|
|
|
MODE = "swept"
|
|
LATENCY = 0.0
|
|
SENSORS = [Counts, Scienta.dataMatrix, SampleCurrent, RefCurrent, MachineCurrent]
|
|
|
|
Scienta.setAcquisitionMode(ch.psi.pshell.epics.Scienta.AcquisitionMode.Swept)
|
|
writables = (Eph, Scienta.lowEnergy, Scienta.highEnergy)
|
|
|
|
adjust_sensors()
|
|
set_adc_averaging()
|
|
set_preference(Preference.PLOT_TYPES, {'Scienta spectrum':1})
|
|
|
|
n = 2
|
|
step=5.0
|
|
|
|
try:
|
|
eph = [102.0 + i * step for i in range(n)]
|
|
elo = [82.5 + i * step for i in range(n)]
|
|
ehi = [101.5 + i * step for i in range(n)]
|
|
VECTOR = [[eph[i], elo[i], ehi[i]] for i in range(len(eph))]
|
|
vscan(writables, SENSORS, VECTOR, True, LATENCY, False, before_read=before_readout, after_read = after_readout)
|
|
finally:
|
|
after_scan()
|
|
|
|
|
|
|
|
|
|
|
|
MODE = "swept"
|
|
LATENCY = 0.0
|
|
SENSORS = [Counts, Scienta.dataMatrix, SampleCurrent, RefCurrent, MachineCurrent]
|
|
|
|
Scienta.setAcquisitionMode(ch.psi.pshell.epics.Scienta.AcquisitionMode.Swept)
|
|
writables = (ManipulatorY,)
|
|
|
|
adjust_sensors()
|
|
set_adc_averaging()
|
|
set_preference(Preference.PLOT_TYPES, {'Scienta spectrum':1})
|
|
|
|
n = 2
|
|
try:
|
|
y = [3.35 + i * 0.2 for i in range(n)]
|
|
VECTOR = [[y[i]] for i in range(len(eph))]
|
|
vscan(writables, SENSORS, VECTOR, True, LATENCY, False, before_read=before_readout, after_read = after_readout)
|
|
finally:
|
|
after_scan()
|
|
|
|
|
|
|
|
MODE = "swept"
|
|
LATENCY = 0.0
|
|
SENSORS = [Counts, Scienta.dataMatrix, SampleCurrent, RefCurrent, MachineCurrent]
|
|
|
|
Scienta.setAcquisitionMode(ch.psi.pshell.epics.Scienta.AcquisitionMode.Swept)
|
|
writables = (Eph, Scienta.lowEnergy, Scienta.highEnergy)
|
|
|
|
adjust_sensors()
|
|
set_adc_averaging()
|
|
set_preference(Preference.PLOT_TYPES, {'Scienta spectrum':1})
|
|
|
|
|
|
try:
|
|
eph = [152.0 + i * step for i in range(n)]
|
|
elo = [132.5 + i * step for i in range(n)]
|
|
ehi = [151.5 + i * step for i in range(n)]
|
|
VECTOR = [[eph[i], elo[i], ehi[i]] for i in range(len(eph))]
|
|
vscan(writables, SENSORS, VECTOR, True, LATENCY, False, before_read=before_readout, after_read = after_readout)
|
|
finally:
|
|
after_scan()
|
|
|
|
|
|
|
|
|