From 363acf88e8a4d8b7fd233ede553949be72d68b19 Mon Sep 17 00:00:00 2001 From: Sven Augustin Date: Tue, 28 Nov 2023 14:57:53 +0100 Subject: [PATCH] after Molecular Clock --- maloja.py | 74 +++++++++++++++++++++++++++++++++++++++---------------- 1 file changed, 53 insertions(+), 21 deletions(-) diff --git a/maloja.py b/maloja.py index e2c4add..58889bd 100644 --- a/maloja.py +++ b/maloja.py @@ -21,7 +21,7 @@ from slic.utils import devices, Marker, as_shortcut #from slic.utils import unpickle from devices.attenuator import Attenuator -from devices.undulator import Undulators, TwoColorChicane, Phases +from devices.undulator import Undulators, TwoColorChicaneCurrent, TwoColorChicaneDelay, Phases from devices.holo_sample_motion import HoloSample #from devices.phases import UndPhases @@ -40,17 +40,18 @@ gas_attenuator_trans = PVAdjustable("SATFE10-OGAT053:TRANSMISSION", process_time #jet_delay = PVAdjustable("SATES20-CVME-EVR0:Pul6-Delay-SP", "SATES20-CVME-EVR0:Pul6-Delay-RB", accuracy=1, name="Jet Delay") -source_delay = PVAdjustable("SATES20-CVME-EVR0:Pul14-Delay-SP", "SATES20-CVME-EVR0:Pul14-Delay-RB", accuracy=1, name="Source Delay") +source_delay = PVAdjustable("SATES20-CVME-EVR0:Pul1-Delay-SP", "SATES20-CVME-EVR0:Pul1-Delay-RB", accuracy=1, name="Source Delay") mono = PVAdjustable("SATOP11-OSGM087:SetEnergy", "SATOP11-OSGM087:photonenergy", accuracy=0.1, process_time=3, name="Mono Coupled") #waveplate = Motor("SLAAT21-LMOT-M712:MOT", name="Laser Waveplate") -TT_delay = Motor("SLAAT21-LMOT-M704:MOT", name="TT_delay") +TT_delay = DelayStage("SLAAT21-LMOT-M704:MOT", name="TT_delay") #laser_comp21 = Motor("SLAAT21-LMOT-M701:MOT", name="Laser Comp T2") #laser_comp11 = Motor("SLAAT21-LMOT-M705:MOT", name="Laser Comp T1 1") -pump_probe_delay = Motor("SLAAT21-LMOT-M703:MOT", name="pump_probe_delay") +pump_probe_delay = DelayStage("SLAAT21-LMOT-M703:MOT", name="pump_probe_delay") #laser_comp12 = Motor("SLAAT21-LMOT-M706:MOT", name="Laser Comp T1 2") #laser_delay = DelayStage("SLAAT21-LMOT-M708:MOT", name="Laser Delay") +EO_delay = Motor("SLAAT21-LMOT-M714:MOT", name="EO_delay") laser_delay = Motor("SLAAT21-LMOT-M708:MOT", name="Laser Global Delay") lxt = PVAdjustable("SLAAT01-LTIM-PDLY:DELAY", pvname_done_moving="SLAAT01-LTIM-PDLY:WAITING", name="LXT") @@ -66,16 +67,18 @@ pump_pulse_energy = Motor("SLAAT21-LMOT-M702:MOT", name="Pump Pulse Energy (Wave att = Attenuator("SATFE10-OATT064") shutter = Shutter("SATOP21-OPSH138") -chic_delay = TwoColorChicane("zz Two Color Chicane") +chic_delay_current = TwoColorChicaneCurrent(name="zz Two Color Chicane as current") +chic_delay_delay = TwoColorChicaneDelay(name="zz Two Color Chicane as delay") +chic_delay = chic_delay_current #TODO remove, and rename above und = Undulators(name="z Athos Undulators (both colors)") und1 = Undulators([6, 7, 8, 9, 10, 11, 12, 13], n_und_ref=10, name="z Athos Undulators 6-13 (first color)") und2 = Undulators([15, 16, 17, 18, 19, 20, 21, 22], n_und_ref=19, name="z Athos Undulators 15-22 (second color)") -und.set_limits(390, 1100) -und1.set_limits(390, 1100) -und2.set_limits(390, 1100) +und.set_limits(320, 1300) +und1.set_limits(320, 1300) +und2.set_limits(320, 1300) class MonoUndCoupled(Adjustable): @@ -151,19 +154,25 @@ mark_gascell = Marker(standa, 88.334, "Gas Cell") mark_tof = Marker(standa, 28.330, "TOF") -magn = PV("SATUN14-MBND100:CYCLE") +#magn = PV("SATUN14-MBND100:CYCLE") + +#@as_shortcut +#def cycle_magnet(): +# magn.put(1, wait=True) +# for _ in trange(250): +# sleep(1) +# # set the current to 1 and 5 consecutively, +# # since the results after the first step always looks strange +# chic_delay.set(1).wait() +# sleep(1) +# chic_delay.set(5).wait() +# sleep(1) + @as_shortcut def cycle_magnet(): - magn.put(1, wait=True) - for _ in trange(250): - sleep(1) - # set the current to 1 and 5 consecutively, - # since the results after the first step always looks strange - chic_delay.set(1).wait() - sleep(1) - chic_delay.set(5).wait() - sleep(1) + chic_delay.cycle_magnet() + # add some more devices to the overview @@ -213,10 +222,19 @@ instrument = "maloja" #pgroup = "p20279" # SPI -- Ban #pgroup = "p20848" # Holo -- Boris #pgroup = "p20851" # Camera test Edwin, use below instead -pgroup = "p21011" # Camera test Edwin +#pgroup = "p21011" # Camera test Edwin #pgroup = "p20823" # SPI - Issendorf #pgroup = "p21108" # SPI commisioning multi-stage - +#pgroup = "p21160" # Streaking HERO as +#pgroup = "p21201" # Heated jet XPS test +#pgroup = "p20824" # XMCD two color +#pgroup = "p21234" # glycine +#pgroup = "p21235" # CF4 +#pgroup = "p21535" # Liquid Jet commissioning +#pgroup = "p21509" # HBT +#pgroup = "p21510" # Time-resolved ferromagnetic resonance +#pgroup = "p21584" # Transverse cavity and spike counting test +pgroup = "p21512" # REMI: Molecular Clock -- Xinhua daq = SFAcquisition(instrument, pgroup, default_channels=channels, default_pvs=pvs, default_detectors=None, rate_multiplicator=1, append_user_tag_to_data_dir=True, spreadsheet=spreadsheet) #daq = FakeAcquisition(instrument, pgroup) @@ -227,8 +245,22 @@ check_intensity = PVCondition("SATBD01-DBPM060:Q2", vmin=5, vmax=None, wait_time #check_intensity = None scan = Scanner(scan_info_dir=f"/sf/{instrument}/data/{pgroup}/res/scan_info", default_acquisitions=[daq], condition=check_intensity) - gui = GUI(scan, show_goto=True, show_spec=True, show_run=True) +# CTA DAQ +from ctadaq import CTAAcquisition +import sys +sys.path.append('/photonics/home/gac-maloja/Andrin') +from scripts import * + + +muphase = PVAdjustable("VXGC:Phase", name='Microwave Phase') +#mufreq = PV('VXGC:Freq') +ctadaq = CTAAcquisition(instrument, pgroup, default_channels=channels, default_pvs=pvs, default_detectors=None, rate_multiplicator=1, append_user_tag_to_data_dir=True, spreadsheet=spreadsheet) +ctascan = Scanner(scan_info_dir=f"/sf/{instrument}/data/{pgroup}/res/scan_info", default_acquisitions=[ctadaq], condition=check_intensity) +ctagui = GUI(ctascan, show_goto=True, show_spec=True, show_run=True, title="CTA DAQ") + + +from devices.adrian import turboscope, microwave