From a5dc40190019a3ccc32531300b4a11461ec105a3 Mon Sep 17 00:00:00 2001 From: gac-furka Date: Tue, 26 Apr 2022 15:38:39 +0200 Subject: [PATCH] added default lattice and orientations; clean up --- furka.py | 49 ++++++++++++++++++++++++++++++------------------- qspace.py | 27 +++++++++------------------ 2 files changed, 39 insertions(+), 37 deletions(-) diff --git a/furka.py b/furka.py index 53f1624..f412772 100644 --- a/furka.py +++ b/furka.py @@ -19,10 +19,10 @@ from undulator import Mono from undulator import Coupled_MonoUnd from qspace import QSpace3D -from qspace import QSpace1D from qspace import Wavelength from qspace import HistoryDummy + dummy = DummyAdjustable(units="au") mot_x = Motor("SATES30-RETRO:MOT_X", name="Retro X") @@ -30,20 +30,6 @@ mot_y = Motor("SATES30-RETRO:MOT_Y", name="Retro Y") mot_z = Motor("SATES30-RETRO:MOT_Z", name="Retro Z") mot_theta = Motor("SATES30-RETRO:MOT_RY", name="Retro Theta") -mu = Motor("SATES30-RIXS:MOT_SRY.VAL") -chi = Motor("SATES30-RIXS:MOT_SRZ.VAL") -phi = Motor("SATES30-RIXS:MOT_SRX.VAL") -nu = Motor("SATES30-RIXS:MOT_DRY.VAL") -wl = Wavelength(PVAdjustable("MACHINE:ENERGY")) -q = QSpace3D("SOMETHING:Q", mu, chi, phi, nu, wl) - -fake_mu = HistoryDummy.init_from(q.motors.mu) -fake_chi = HistoryDummy.init_from(q.motors.chi) -fake_phi = HistoryDummy.init_from(q.motors.phi) -fake_nu = HistoryDummy.init_from(q.motors.nu) -fake_q = QSpace3D("FAKE:Q", fake_mu, fake_chi, fake_phi, fake_nu, wl) -#fake_q.set_lattice("FAKE:Q", fake_mu, fake_chi, fake_phi, fake_nu, wl) - retro = SimpleDevice("Retro Stages", x=mot_x, y=mot_y, z=mot_z, theta=mot_theta) KBV_RX = PVAdjustable("SATOP31-OKBV178:W_RX.VAL", pvname_moving="SATOP31-OKBV178:MOVING", name = "KB_Vertical_RX") @@ -67,11 +53,36 @@ und = Undulators(n_unds, n_und_ref, chic_fudge_offset, name="z Athos Undulators" mono_name = "Athos_mono" pv_mono_name="SATOP11-OSGM087" -Mon = Mono(pv_mono_name=pv_mono_name, mono_name=mono_name) -MonUnd = Coupled_MonoUnd(n_unds, n_und_ref, chic_fudge_offset, unds_name="z Athos Undulators", pv_mono_name=pv_mono_name, mono_name=mono_name, delta=Mon2Unds_offset, name = ("Mono+Und")) - - #Mon = PVAdjustable("SATOP11-OSGM087:SetEnergy", pvname_done_moving="SATOP11-OSGM087:MOVING", name="MONO") +Mon = Mono(pv_mono_name=pv_mono_name, mono_name=mono_name) +MonUnd = Coupled_MonoUnd( + n_unds, n_und_ref, chic_fudge_offset, unds_name="z Athos Undulators", + pv_mono_name=pv_mono_name, mono_name=mono_name, delta=Mon2Unds_offset, + name="Mono+Und" +) + + +wl = Wavelength(Mon) + +mu = Motor("SATES30-RIXS:MOT_SRY.VAL") +chi = Motor("SATES30-RIXS:MOT_SRZ.VAL") +phi = Motor("SATES30-RIXS:MOT_SRX.VAL") +nu = Motor("SATES30-RIXS:MOT_DRY.VAL") +q = QSpace3D("SOMETHING:Q", mu, chi, phi, nu, wl) + +fake_mu = HistoryDummy.init_from(mu) +fake_chi = HistoryDummy.init_from(chi) +fake_phi = HistoryDummy.init_from(phi) +fake_nu = HistoryDummy.init_from(nu) +fake_q = QSpace3D("FAKE:Q", fake_mu, fake_chi, fake_phi, fake_nu, wl) +#fake_q.set_lattice("FAKE:Q", fake_mu, fake_chi, fake_phi, fake_nu, wl) + +fake_q.set_lattice("Y-hex", a=5.9, c=43.3) +fake_q.add_orientation((1,0,16), (0,0,1), None, "normal direction") +fake_q.add_orientation((-2,0,1), (0,1,0), None, "beam direction") +fake_q.calc_ub() + + laser_delay = DelayStage("SLAAT31-LMOT-M808:MOT", name="Laser Delay") laser_WP = Motor("SLAAT31-LMOT-M801:MOT", name="Laser WavePlate") diff --git a/qspace.py b/qspace.py index 7d81741..85e6611 100644 --- a/qspace.py +++ b/qspace.py @@ -11,9 +11,6 @@ from slic.devices.device import Device from slic.devices.simpledevice import SimpleDevice from slic.utils.printing import printable_table -from undulator import Undulators -from undulator import Mono -from undulator import Coupled_MonoUnd INDICES = { "h": 0, @@ -246,23 +243,17 @@ def print_history(*adjs, enumerate_lines=True, make_legend=True): -# these point to the different motors -mu = Motor("SATES30-RIXS:MOT_SRY.VAL") -chi = Motor("SATES30-RIXS:MOT_SRZ.VAL") -phi = Motor("SATES30-RIXS:MOT_SRX.VAL") -nu = Motor("SATES30-RIXS:MOT_DRY.VAL") +## these point to the different motors +#mu = Motor("SATES30-RIXS:MOT_SRY.VAL") +#chi = Motor("SATES30-RIXS:MOT_SRZ.VAL") +#phi = Motor("SATES30-RIXS:MOT_SRX.VAL") +#nu = Motor("SATES30-RIXS:MOT_DRY.VAL") -# and this to the machine wavelength (maybe this needs to be calculated from the energy? then we should add a Wavelength wrapper...) -# wl = Wavelength(PVAdjustable("MACHINE:ENERGY")) -mono_name = "Athos_mono" -pv_mono_name="SATOP11-OSGM087" +## and this to the machine wavelength (maybe this needs to be calculated from the energy? then we should add a Wavelength wrapper...) +#wl = Wavelength(PVAdjustable("MACHINE:ENERGY")) -Mon = Mono(pv_mono_name=pv_mono_name, mono_name=mono_name) - -wl = Wavelength(Mon) - -# put it all together: -q = QSpace3D("SOMETHING:Q", mu, chi, phi, nu, wl) +## put it all together: +#q = QSpace3D("SOMETHING:Q", mu, chi, phi, nu, wl) ## in ipython #q.set_lattice("SiO2", 4.913, 5.405)