Script execution
This commit is contained in:
@@ -2,11 +2,16 @@
|
||||
Discrete photon energy scan (vector scan) of multiple spectral regions
|
||||
"""
|
||||
|
||||
PHI_RANGE = (-160.0, 160.0) # (tuple (min, max))
|
||||
THETA_RANGE = (-9.0, 81.0) # (tuple (min, max))
|
||||
STEPS = (40.0, 1.0) # (tuple (phi, theta))
|
||||
ZIGZAG = True
|
||||
|
||||
# scan positioner: Eph = photon energy
|
||||
MOTORS = [dummy]
|
||||
MOTORS = (ManipulatorPhi, ManipulatorTheta)
|
||||
#MOTORS = [ManipulatorPhi]
|
||||
# comma-separated discrete list of scan positions
|
||||
POSITIONS = [0., 1., 300]
|
||||
POSITIONS = [(PHI_RANGE[0], THETA_RANGE[0]), (PHI_RANGE[1], THETA_RANGE[1]), STEPS]
|
||||
#POSITIONS = [-175., 180., 5.]
|
||||
# seconds to wait between positioning command and triggering the detector
|
||||
LATENCY = 0.0
|
||||
@@ -29,8 +34,10 @@ LATENCY = 0.0
|
||||
# 'cis': True = constant initial state (photoemission line), False = constant final state (Auger peak), (default False)
|
||||
# 'slit': exit slit (default current value)
|
||||
|
||||
REGION1 = {'name': 'secondary', 'elo': 9.0, 'ehi': 11.0, 'estep': 0.02, 'epass': 2, 'tstep': 0.20, 'iter': 1, 'cis': False}
|
||||
REGION2 = {'name': 'fermi', 'elo': 23.5, 'ehi': 27.5, 'estep': 0.02, 'epass': 2, 'tstep': 0.35, 'iter': 1, 'cis': False}
|
||||
REGION1 = {'name': 'on-resonance', 'ephot': 1237.7, 'efix': 1222.1, 'epass': 200., 'tstep': 20., 'iter': 1, 'cis': False}
|
||||
REGION2 = {'name': 'off-resonance', 'ephot': 1235.0, 'efix': 1219.4, 'epass': 200., 'tstep': 20., 'iter': 1, 'cis': False}
|
||||
#REGION1 = {'name': 'secondary', 'elo': 9.0, 'ehi': 11.0, 'estep': 0.02, 'epass': 2, 'tstep': 0.20, 'iter': 1, 'cis': False}
|
||||
#REGION2 = {'name': 'fermi', 'elo': 23.5, 'ehi': 27.5, 'estep': 0.02, 'epass': 2, 'tstep': 0.35, 'iter': 1, 'cis': False}
|
||||
|
||||
# list of region dictionaries to execute at each scan position
|
||||
REGIONS = [REGION1, REGION2]
|
||||
@@ -107,9 +114,11 @@ class SpectrumReader(ReadonlyRegisterBase, ReadonlyRegisterArray):
|
||||
ehi = self.region['ehi'] + edelta
|
||||
|
||||
if self.region['fixed']:
|
||||
Eph.move(self.region['ephot'])
|
||||
Scienta.setAcquisitionMode(ch.psi.pshell.epics.Scienta.AcquisitionMode.Fixed)
|
||||
Scienta.centerEnergy.write(elo)
|
||||
else:
|
||||
Eph.move(self.region['ephot'])
|
||||
Scienta.setAcquisitionMode(ch.psi.pshell.epics.Scienta.AcquisitionMode.Swept)
|
||||
Scienta.lowEnergy.write(elo)
|
||||
Scienta.highEnergy.write(ehi)
|
||||
@@ -217,7 +226,8 @@ def do_scan(motors, positions, regions, latency):
|
||||
adjust_sensors()
|
||||
set_adc_averaging()
|
||||
|
||||
lscan(motors, SENSORS, positions[0], positions[1], positions[2], latency, False, before_read=wait_beam, after_read = after_readout)
|
||||
ascan(motors, SENSORS, positions[0], positions[1], positions[2], latency, False, zigzag = True, before_read=wait_beam, after_read = after_readout)
|
||||
#lscan(motors, SENSORS, positions[0], positions[1], positions[2], latency, False, before_read=wait_beam, after_read = after_readout)
|
||||
#vscan(motors, SENSORS, positions, True, latency,False, before_read=wait_beam, after_read = after_readout)
|
||||
|
||||
for (index, region) in enumerate(regions):
|
||||
|
||||
Reference in New Issue
Block a user