Files
x07ma/script/VerticalScan.py
gac-x07ma 7aff507f60 Mars 2022
2022-03-04 14:47:07 +01:00

144 lines
4.0 KiB
Python

#####################
## INPUT PARAMETERS##
POS_START = 0.5
POS_END = 32
#POS_START = 22.5
#POS_END = 24.5
POS_STEP =0.25
#POS_START =10
#POS_END = 16
#POS_STEP = 0.25
#"""
#POS_START = 7
#POS_END = 15
#POS_STEP = 0.25
#"""
#ENERGIES = [774.0,779.5] # Co
#ENERGIES = [532.3, 525.0] # O
#ENERGIES = [570.0]#, 577.5] # Cr
#ENERGIES = [1241] # Tb
#ENERGIES = [1241] # Tb
#ENERGIES = [1190] # Gd
#ENERGIES = [778.0] # Co
#ENERGIES = [461] #Ti
#ENERGIES = [459.7,456] #Ti
#ENERGIES = [1128, 1120 ]# Eu
#ENERGIES = [1030, 1015]# Zn
#ENERGIES = [532, 523]#
#ENERGIES = [363.2, 356]# Nb
#ENERGIES = [782.50, 775.0]
#ENERGIES = [395.0, 410] # N
#ENERGIES = [401.1,403] #Mo285
#ENERGIES = [572.0]
#ENERGIES = [692.0] # F
#ENERGIES = [690.5, 685.0] # F
#ENERGIES = [1110,1125.5] #STO
#ENERGIES = [397.6,395] # N
#ENERGIES = [706.4] # Fe
#ENERGIES = [783.15,771.0] # Ba
#ENERGIES = [700.0]
#ENERGIES = [530] #O
#ENERGIES = [707., 704.] # Fe
#ENERGIES = [706.6, 704] # Fe metal
#ENERGIES = [708.3]
#ENERGIES = [931.7]#, 925] #Cu
#ENERGIES = [928.4, 925] #CuO
#ENERGIES = [928.4] #Cu
#ENERGIES = [928.4, 707.5] #Cu, Fe special
#ENERGIES = [929.0, 925.0] #Cu
#ENERGIES = [774.0] # Co
#ENERGIES = [776.7, 774.0] # Co
#ENERGIES = [851.3,842.0] # Ni
#ENERGIES = [639.5, 630.0] # Mn
#ENERGIES = [848.5, 842.0] # La
#ENERGIES = [576.4, 560.0] #Cr
#ENERGIES = [573.0,576.3] #Cr
#ENERGIES = [485.0,490.0] # Ru
#ENERGIES = [639.1,636.6] # Mn
#ENERGIES = [459.5,455] #Ti
#ENERGIES = [1067, 1076.4 ] # Sm
#ENERGIES = [870, 880.3 ] # Ce
#ENERGIES = [1170, 1181 ] # Gd
#ENERGIES = [280]# C
#ENERGIES = [300.0,280]# C
#ENERGIES = [1370.0,1380.0] #Er??
#ENERGIES = [1400.6,1395.0] #Er
#ENERGIES = [1395.0] #Er
#ENERGIES = [1300, 1312 ] # Mg
#ENERGIES = [1289.5, 1282.5] # Dy
#ENERGIES = [1344.2, 1338 ] # Ho
#ENERGIES = [1456.9, 1450 ] # Tm
#ENERGIES = [1566.0,1554.0] # Al
#ENERGIES = [1850, 1820]# Si
#ENERGIES = [928.5, 925] # Cu metal
#ENERGIES = [402, 397] # Ta
#ENERGIES = [395,390] #Mo
#ENERGIES = [928.6,925]# Cu1
#ENERGIES = [782.50, 775.0] # Ba
#ENERGIES = [782.50] # Ba
#ENERGIES = [1234.5, 1225] # Tb
#ENERGIES = [976, 970] # Nd
#ENERGIES = [1185] # Gd
#ENERGIES = [405.5, 390] # Sc
#ENERGIES = [1289.4] # Dy edge, pre-edge
#ENERGIES = [1345, 1338] # Ho edge, pre-edge
#ENERGIES = [1289.1, 1280] # Dy
#ENERGIES = [1126.16, 1120] # Eu
#ENERGIES = [774,777.6] # Co
#ENERGIES = [514.1, 510] # V
#ENERGIES = [510] # V predge
#ENERGIES = [1455,1420] # Se
#ENERGIES = [285.3, 280.0]# C
#ENERGIES = [368, 367] # Ag
ENERGIES = [920]
#####################
#open_valve() # commented out Jan.21 for test
#caput("X07MA-OP-VG13:WT_SET",1)
#time.sleep(0.1)
sensors = [tey_norm, signal_tey, signal_i0, signal_trans, trans_norm, sample_hor, energy_readback]
#sensors = [ signal_tey, signal_i0, sample_hor, energy_readback]
#sensors_name = ['tey_norm', 'signal_tey', 'signal_i0', 'trans_norm', 'sample_hor', 'energy_readback']
#sensors_name = ['signal_tey', 'signal_i0', 'sample_hor', 'energy_readback']
#TODO: #Why must set range to "auto"?
"""
def before_pass(pass_num, scan):
print "Setting energy = " , ENERGIES[pass_num-1]
set_energy(ENERGIES[pass_num-1])
lscan(sample_vert,sensors, POS_START, POS_END, POS_STEP, latency =0.5, passes = len(ENERGIES), before_pass=before_pass, range="auto")
"""
#Setting a different color for each pass: must manage plots manually
plots = plot([None]*len(sensors), name = [d.name for d in sensors])
for p in plots:
p.clear()
p.legendVisible = True
def after_readout(record, scan):
for i in range(len(plots)):
plots[i].getSeries(plots[i].numberOfSeries-1).appendData(record.positions[0], record.readables[i])
def before_pass(pass_num):
en = ENERGIES[pass_num-1]
set_energy(en)
open_valve()
for p in plots: p.addSeries(LinePlotSeries(str(en)))
ret70= lscan(sample_vert,sensors, POS_START, POS_END, POS_STEP, latency = 0.25, passes = len(ENERGIES), before_pass = before_pass, after_read=after_readout, plot_disabled=True, range="auto")
#if name is None:
# name=get_scan_filename()
# print "Created data file: " + str(name)
close_valve()