From e0240d04060735c23cb9ae996957c00d38255d15 Mon Sep 17 00:00:00 2001 From: jmcchesn <jmcchesn@aps.anl.gov> Date: Tue, 12 Jul 2022 16:38:51 -0500 Subject: [PATCH] kappa no circular imports --- build/lib/iexcode/instruments/Kappa.py | 19 +++++++++++------- build/lib/iexcode/instruments/Kappa_det.py | 3 +-- iexcode/instruments/Kappa.py | 19 +++++++++++------- iexcode/instruments/Kappa_det.py | 3 +-- .../__pycache__/Kappa.cpython-37.pyc | Bin 30594 -> 30672 bytes .../__pycache__/Kappa_det.cpython-37.pyc | Bin 2336 -> 2288 bytes 6 files changed, 26 insertions(+), 18 deletions(-) diff --git a/build/lib/iexcode/instruments/Kappa.py b/build/lib/iexcode/instruments/Kappa.py index c64636c..f819d12 100644 --- a/build/lib/iexcode/instruments/Kappa.py +++ b/build/lib/iexcode/instruments/Kappa.py @@ -4,7 +4,7 @@ from math import floor from epics import caget, caput,PV -from iexcode.instruments.IEX_endstations import * +from iexcode.instruments.IEX_endstations import BL from iexcode.instruments.staff import staff_detector_dictionary from iexcode.instruments.files_and_folders import check_run,make_user_folders,folder_mda @@ -30,6 +30,9 @@ from iexcode.instruments.MPA import MPA from iexcode.instruments.spec_stuff import folders_spec +global Kappa_Motors +global tey, d3, d4, mesh, Kappa_scaler_pv, mpa +global tthdet ############################################################################# def Kappa_init(set_folders=False,reset=False,**kwargs): @@ -55,11 +58,9 @@ def Kappa_init(set_folders=False,reset=False,**kwargs): Kappa_trigger_dictionary(),Kappa_scan_before_sequence(),Kappa_scan_after_sequence()) #endstation - global BL BL=Endstation('Kappa',kwargs['scan_ioc'],kwargs['xrays'],kwargs['BL_mode'],mda_scanRecord,Kappa_log_header,Kappa_log_entries) #global detectors - global tey, d3, d4, mesh, Kappa_scaler_pv, mpa tey = SRS("29idMZ0:scaler1.S2", '29idd:A1') d3 = SRS("29idMZ0:scaler1.S3", '29idd:A2') d4 = SRS("29idMZ0:scaler1.S4", '29idd:A3') @@ -68,8 +69,7 @@ def Kappa_init(set_folders=False,reset=False,**kwargs): tth_pv = Kappa_motor_dictionary('tth')[3] mpa = MPA(tth_pv) - global tthdet - tthdet = Kappa_Detector() + tthdet = Kappa_Detector(Kappa_Motors) #setting folders if 'set_folders': @@ -84,7 +84,6 @@ def Kappa_init(set_folders=False,reset=False,**kwargs): Kappa_reset() #motors - global Kappa_Motors physical_motors = ['x','y','z','tth','kth','kap','kphi'] psuedo_motors = ['th','chi','phi'] Kappa_Motors = Motors('Kappa',Kappa_motor_dictionary(),physical_motors,psuedo_motors) @@ -606,7 +605,7 @@ def Kappa_tth_reset_zero(): -def Kappa_th2th_scan_sensitivity(th_table,gain_num_table,gain_unit_table,detector=tey,**kwargs): +def Kappa_th2th_scan_sensitivity(th_table,gain_num_table,gain_unit_table,**kwargs): """ Scans th2th with variable gain on SRS# (srs_num). Gain is specified for a given th2th range by building tables as follow: @@ -630,6 +629,7 @@ def Kappa_th2th_scan_sensitivity(th_table,gain_num_table,gain_unit_table,detecto gu_table = np.append(gu_table, unit_dict('pA')) kwargs: + detector (default tey) scan_dim: 1 (default) cts: integration time for scalers and mpa/mcp => 0.1 (default) execute: True/False to start the scan => True (default) @@ -639,6 +639,11 @@ def Kappa_th2th_scan_sensitivity(th_table,gain_num_table,gain_unit_table,detecto kwargs.setdefault('cts',0.1) kwargs.setdefault('execute',True) + if 'detector' not in kwargs: + detector = tey + else: + detector = kwargs['detector'] + kth_offset = Kappa_kth_offset_get() motor_dictionary = Kappa_motor_dictionary() diff --git a/build/lib/iexcode/instruments/Kappa_det.py b/build/lib/iexcode/instruments/Kappa_det.py index c001020..5c3e502 100644 --- a/build/lib/iexcode/instruments/Kappa_det.py +++ b/build/lib/iexcode/instruments/Kappa_det.py @@ -1,7 +1,6 @@ from time import sleep from epics import caget, caput -from iexcode.instruments.Kappa import Kappa_Motors ############################################################################################################## @@ -15,7 +14,7 @@ class Kappa_Detector: class for Kappa detector """ - def __init__(self): + def __init__(self,Kappa_Motors): self.get() def get(self): diff --git a/iexcode/instruments/Kappa.py b/iexcode/instruments/Kappa.py index c64636c..f819d12 100644 --- a/iexcode/instruments/Kappa.py +++ b/iexcode/instruments/Kappa.py @@ -4,7 +4,7 @@ from math import floor from epics import caget, caput,PV -from iexcode.instruments.IEX_endstations import * +from iexcode.instruments.IEX_endstations import BL from iexcode.instruments.staff import staff_detector_dictionary from iexcode.instruments.files_and_folders import check_run,make_user_folders,folder_mda @@ -30,6 +30,9 @@ from iexcode.instruments.MPA import MPA from iexcode.instruments.spec_stuff import folders_spec +global Kappa_Motors +global tey, d3, d4, mesh, Kappa_scaler_pv, mpa +global tthdet ############################################################################# def Kappa_init(set_folders=False,reset=False,**kwargs): @@ -55,11 +58,9 @@ def Kappa_init(set_folders=False,reset=False,**kwargs): Kappa_trigger_dictionary(),Kappa_scan_before_sequence(),Kappa_scan_after_sequence()) #endstation - global BL BL=Endstation('Kappa',kwargs['scan_ioc'],kwargs['xrays'],kwargs['BL_mode'],mda_scanRecord,Kappa_log_header,Kappa_log_entries) #global detectors - global tey, d3, d4, mesh, Kappa_scaler_pv, mpa tey = SRS("29idMZ0:scaler1.S2", '29idd:A1') d3 = SRS("29idMZ0:scaler1.S3", '29idd:A2') d4 = SRS("29idMZ0:scaler1.S4", '29idd:A3') @@ -68,8 +69,7 @@ def Kappa_init(set_folders=False,reset=False,**kwargs): tth_pv = Kappa_motor_dictionary('tth')[3] mpa = MPA(tth_pv) - global tthdet - tthdet = Kappa_Detector() + tthdet = Kappa_Detector(Kappa_Motors) #setting folders if 'set_folders': @@ -84,7 +84,6 @@ def Kappa_init(set_folders=False,reset=False,**kwargs): Kappa_reset() #motors - global Kappa_Motors physical_motors = ['x','y','z','tth','kth','kap','kphi'] psuedo_motors = ['th','chi','phi'] Kappa_Motors = Motors('Kappa',Kappa_motor_dictionary(),physical_motors,psuedo_motors) @@ -606,7 +605,7 @@ def Kappa_tth_reset_zero(): -def Kappa_th2th_scan_sensitivity(th_table,gain_num_table,gain_unit_table,detector=tey,**kwargs): +def Kappa_th2th_scan_sensitivity(th_table,gain_num_table,gain_unit_table,**kwargs): """ Scans th2th with variable gain on SRS# (srs_num). Gain is specified for a given th2th range by building tables as follow: @@ -630,6 +629,7 @@ def Kappa_th2th_scan_sensitivity(th_table,gain_num_table,gain_unit_table,detecto gu_table = np.append(gu_table, unit_dict('pA')) kwargs: + detector (default tey) scan_dim: 1 (default) cts: integration time for scalers and mpa/mcp => 0.1 (default) execute: True/False to start the scan => True (default) @@ -639,6 +639,11 @@ def Kappa_th2th_scan_sensitivity(th_table,gain_num_table,gain_unit_table,detecto kwargs.setdefault('cts',0.1) kwargs.setdefault('execute',True) + if 'detector' not in kwargs: + detector = tey + else: + detector = kwargs['detector'] + kth_offset = Kappa_kth_offset_get() motor_dictionary = Kappa_motor_dictionary() diff --git a/iexcode/instruments/Kappa_det.py b/iexcode/instruments/Kappa_det.py index c001020..5c3e502 100644 --- a/iexcode/instruments/Kappa_det.py +++ b/iexcode/instruments/Kappa_det.py @@ -1,7 +1,6 @@ from time import sleep from epics import caget, caput -from iexcode.instruments.Kappa import Kappa_Motors ############################################################################################################## @@ -15,7 +14,7 @@ class Kappa_Detector: class for Kappa detector """ - def __init__(self): + def __init__(self,Kappa_Motors): self.get() def get(self): diff --git a/iexcode/instruments/__pycache__/Kappa.cpython-37.pyc b/iexcode/instruments/__pycache__/Kappa.cpython-37.pyc index 736a0ae36869c21290ea6c99ada18730aef76083..6a49022d4993b64ef4ab43a6b7172ca1fad232be 100644 GIT binary patch delta 10669 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 ZP;&EUCrT_1XDxquqSox##aCQC{Qp7_)!qOA delta 10615 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 X3dgZRi_Nt~tUXq5cDIUwV~77AqKLic diff --git a/iexcode/instruments/__pycache__/Kappa_det.cpython-37.pyc b/iexcode/instruments/__pycache__/Kappa_det.cpython-37.pyc index b79f19388690f3f26c6f29f4833f23d50c264c21..8abdb62bdff80a559d717666b3bb53156017a41d 100644 GIT binary patch delta 547 zcmZ8dJxc>Y5WU^oyW7N^B$7m;C}Ja52;vtS#KJ~FOrwQtb4K^ngCrOCRuLNuMZrQi z_7B(!cIj-yA7E*7jim@F{0Z&^RCJ36`{vD?H*+`eS#VceH*4s(_WrVanz$7-pG=Gm zo6O>b*{cS(xP57G`vNnEJDY|_lh)|ySz&rH<m>fzyI$pitj2-#EQa|^iuo){9+M0P zPyMjkLK797k~nDWr@3B>zY)nu#P^2Csw=dO3hE8Lx*4q&jt0*ZR6XOtBIFW1==-h} zJ6-&QkgFcZQ0=E9r8<P)2xBP-DEl>}q#2zA9uX9nJU|Jc0Pxp2HFf^6PSM&yWtOSO zzV-=Q2Mo)@4-@2;y0LE&Qx%72!CSy&rmmgI1@L5jd&fcqE$QnR%$D-dZ=W!8KZ^bj zqPjNa>uGbU>l~fuzzbFuWq=WY-)O&^+qwYS7$|BIOih~0mIUxMk1`^|W+33?%nI7! pUMzaCe{La)y3|wuu^-nYTsEak&4?d2f@P$CF&r$1@(w`+e*tgFaO400 delta 622 zcmZuu&ui2`6wXX0zjhOCS9Z0Y^dKdN7QrHWC?1O7q1cNEl1q#`(>9Q7;>=`eL8xHQ zLdbpb>UsYF{{jylitrA-_vWAAyoeUXf%%4+_r33Z@6C_(PororiUyWh&G)ZwmTj~_ z_S(&RFD-5tPU$8tu{cXS?j-&*i@V%Ax48F#CIR<fSaEQLnK1!J6++Z81!tBW35`eH zXcGwcv%1dG=asIcYTu6op!|{9JJ2rMfMB{=q??k>ApxdDaroJiVRu4akx}=JTudDk zm*_CI<<K19bD`6DRtoU6K28@|Aw%T!5dCJ4SC{k)Ave1vyL<3Q<5zN#D=ir^*HDm^ z)k4IqSC=DvzKw7T;csQImC*NBuJf8qAjni|bn^KTP<?!5Bi-xXxgQC1Lyr$oTViGC zPQ9%uY9_;3Bc+(@)bs!@+OHR2A6C`Bg?tlxn3`&jyG!rw*$vdfA;>!j4-l@cU3VUs z0FFQ**S8t<Z9g20CB7fT17JEYg{0;Nj;QmQlD%!51#INvWL9ypozG2MO=)bZ?f(1Z j(|&+`LlZ;o<^ES6{N1wRO(CA(&-NxlvPMIf5k`LkAUci| -- GitLab