Skip to content
Snippets Groups Projects
Commit 0ebfcd44 authored by jmcchesn's avatar jmcchesn
Browse files

BE scanning debug

parent 330e207c
No related branches found
No related tags found
No related merge requests found
...@@ -35,12 +35,10 @@ def AllowedEnergyRange(*args): ...@@ -35,12 +35,10 @@ def AllowedEnergyRange(*args):
return Table return Table
if len(args)==2: if len(args)==2:
try: PassEnergy,LensMode=args
PassEnergy,LensMode=args KEmin,KEmax=Table[LensMode][PassEnergy]
KEmin,KEmax=Table[LensMode][PassEnergy] return KEmin,KEmax
return KEmin,KEmax
except:
return None
else: else:
print('Not a valid argument') print('Not a valid argument')
......
...@@ -18,7 +18,7 @@ from iexcode.instruments.IEX_BL_config import * ...@@ -18,7 +18,7 @@ from iexcode.instruments.IEX_BL_config import *
from iexcode.instruments.AD_utilities import AD_filepath,AD_prefix from iexcode.instruments.AD_utilities import AD_filepath,AD_prefix
from iexcode.instruments.scanRecord import * from iexcode.instruments.scanRecord import *
from iexcode.instruments.conversions_constants import * from iexcode.instruments.conversions_constants import *
from iexcode.instruments.xrays import energy, scanXAS, BL_energy_tables from iexcode.instruments.xrays import energy, scanXAS, BL_energy_tables,energy_get
from iexcode.instruments.shutters import branch_shutter_close from iexcode.instruments.shutters import branch_shutter_close
from iexcode.instruments.VLS_PGM import mono_energy_get from iexcode.instruments.VLS_PGM import mono_energy_get
from iexcode.instruments.files_and_folders import get_next_fileNumber from iexcode.instruments.files_and_folders import get_next_fileNumber
...@@ -362,6 +362,7 @@ def scanEA(EAlist,**kwargs): ...@@ -362,6 +362,7 @@ def scanEA(EAlist,**kwargs):
pass pass
else: else:
print("need to specify BE or KE") print("need to specify BE or KE")
return
if EAlist[-1]=='BS': if EAlist[-1]=='BS':
sweeps=EAlist[-2] sweeps=EAlist[-2]
...@@ -370,6 +371,20 @@ def scanEA(EAlist,**kwargs): ...@@ -370,6 +371,20 @@ def scanEA(EAlist,**kwargs):
if kwargs['debug']: if kwargs['debug']:
print("sweeps: "+str(sweeps)) print("sweeps: "+str(sweeps))
#check KEs within limit
if EAlist[0]=="KE":
KElist = np.array(EAlist[1:-3])
elif EAlist[0]=="BE":
KElist = energy_get() - np.array(EAlist[1:-3])
if KElist[0] > KElist[1]:
print_warning_message('EA scans from low to high in kinetic energy')
return
KEmin,KEmax = AllowedEnergyRange(EAlist[-3],'Angular')
if KElist[0] < KEmin:
print_warning_message('kinetic energy belowed minimum allowed energy')
print(AllowedEnergyRange())
return
if EAlist[0]=="BE": if EAlist[0]=="BE":
if len(EAlist)==5: #Fixed if len(EAlist)==5: #Fixed
...@@ -377,6 +392,7 @@ def scanEA(EAlist,**kwargs): ...@@ -377,6 +392,7 @@ def scanEA(EAlist,**kwargs):
EAlist[1]=caget(pvCalcOut1+'.VAL') EAlist[1]=caget(pvCalcOut1+'.VAL')
arrayP1=list(np.full(sweeps, EAlist[1])) arrayP1=list(np.full(sweeps, EAlist[1]))
scan_fillin_table(pvCalcOut1+'.PROC',"",kwargs["scanIOC"],kwargs["scan_dim"],arrayP1,1) scan_fillin_table(pvCalcOut1+'.PROC',"",kwargs["scanIOC"],kwargs["scan_dim"],arrayP1,1)
scan_positioner_after_set(positioner_after_scan="STAY")
EAlist[1]=arrayP1[0] EAlist[1]=arrayP1[0]
if kwargs['debug']: if kwargs['debug']:
print('\npvCalcOut1: ',pvCalcOut1) print('\npvCalcOut1: ',pvCalcOut1)
...@@ -386,6 +402,7 @@ def scanEA(EAlist,**kwargs): ...@@ -386,6 +402,7 @@ def scanEA(EAlist,**kwargs):
EAlist[1]=caget(pvCalcOut1+'.VAL') EAlist[1]=caget(pvCalcOut1+'.VAL')
arrayP1=list(np.full(sweeps, EAlist[1])) arrayP1=list(np.full(sweeps, EAlist[1]))
scan_fillin_table(pvCalcOut1+'PROC',"",kwargs["scanIOC"],kwargs["scan_dim"],arrayP1,1) scan_fillin_table(pvCalcOut1+'PROC',"",kwargs["scanIOC"],kwargs["scan_dim"],arrayP1,1)
scan_positioner_after_set(positioner_after_scan="STAY")
print('\npvCalcOut1: ',pvCalcOut1) print('\npvCalcOut1: ',pvCalcOut1)
print('Pos1 table:',arrayP1) print('Pos1 table:',arrayP1)
elif len(EAlist)==7: #Sweep elif len(EAlist)==7: #Sweep
...@@ -397,6 +414,7 @@ def scanEA(EAlist,**kwargs): ...@@ -397,6 +414,7 @@ def scanEA(EAlist,**kwargs):
arrayP2=list(np.full(sweeps, EAlist[2])) arrayP2=list(np.full(sweeps, EAlist[2]))
scan_fillin_table(pvCalcOut1+'.PROC',"",kwargs["scanIOC"],kwargs["scan_dim"],arrayP1,1) scan_fillin_table(pvCalcOut1+'.PROC',"",kwargs["scanIOC"],kwargs["scan_dim"],arrayP1,1)
scan_fillin_table(pvCalcOut2+'.PROC',"",kwargs["scanIOC"],kwargs["scan_dim"],arrayP2,2) scan_fillin_table(pvCalcOut2+'.PROC',"",kwargs["scanIOC"],kwargs["scan_dim"],arrayP2,2)
scan_positioner_after_set(positioner_after_scan="STAY")
if kwargs['debug']: if kwargs['debug']:
print("\npvCalcOut1",pvCalcOut1) print("\npvCalcOut1",pvCalcOut1)
print("\npvCalcOut2",pvCalcOut2) print("\npvCalcOut2",pvCalcOut2)
...@@ -442,6 +460,7 @@ def scanEA(EAlist,**kwargs): ...@@ -442,6 +460,7 @@ def scanEA(EAlist,**kwargs):
EAlog_update() EAlog_update()
scanEA_reset(**kwargs) scanEA_reset(**kwargs)
scan_after_table_reset(**kwargs) scan_after_table_reset(**kwargs)
scan_positioner_after_set(positioner_after_scan="PRIOR")
else: else:
return EAparms return EAparms
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment