pyepr.hardware.Bruker_tools =========================== .. py:module:: pyepr.hardware.Bruker_tools Attributes ---------- .. autoapisummary:: pyepr.hardware.Bruker_tools.MODULE_DIR pyepr.hardware.Bruker_tools.hw_log pyepr.hardware.Bruker_tools.header pyepr.hardware.Bruker_tools.possible_delays pyepr.hardware.Bruker_tools.possible_vars pyepr.hardware.Bruker_tools.possible_pulses Classes ------- .. toctree:: :hidden: /autoapi/pyepr/hardware/Bruker_tools/PSPhaseCycle /autoapi/pyepr/hardware/Bruker_tools/PSparvar /autoapi/pyepr/hardware/Bruker_tools/PulseSpel .. autoapisummary:: pyepr.hardware.Bruker_tools.PSPhaseCycle pyepr.hardware.Bruker_tools.PSparvar pyepr.hardware.Bruker_tools.PulseSpel Functions --------- .. autoapisummary:: pyepr.hardware.Bruker_tools.convert_progtable pyepr.hardware.Bruker_tools.calc_rel_positions pyepr.hardware.Bruker_tools.run_general pyepr.hardware.Bruker_tools.change_dimensions pyepr.hardware.Bruker_tools._addAWGPulse pyepr.hardware.Bruker_tools.get_arange pyepr.hardware.Bruker_tools.build_unique_progtable pyepr.hardware.Bruker_tools.check_variable pyepr.hardware.Bruker_tools.determine_TWT_split pyepr.hardware.Bruker_tools.write_pulsespel_file Module Contents --------------- .. py:data:: MODULE_DIR .. py:data:: hw_log .. py:data:: header .. py:data:: possible_delays :value: ['d1', 'd2', 'd3', 'd4', 'd5', 'd6', 'd7', 'd8', 'd10', 'd11', 'd12', 'd13', 'd14', 'd15',... .. py:data:: possible_vars :value: ['a', 'b', 'c', 'e'] .. py:data:: possible_pulses :value: ['p0', 'p1', 'p2', 'p3', 'p4', 'p5', 'p6', 'p7', 'p8', 'p9', 'p10'] .. py:function:: convert_progtable(progtable) This function reformats the progtable to be compatible with the Bruker_tools. This is done by converting the axis of each moving pulse to be relative to the previous moving pulse. .. !! processed by numpydoc !! .. py:function:: calc_rel_positions(sequence) Calcuates the starting relative positions of all pulses in a sequence. .. !! processed by numpydoc !! .. py:function:: run_general(api, ps_file, exp, settings, variables, run = True) A function to run a general Pulse Spel experiment through autoDeer. :Parameters: **api** : _type_ The current Bruker Xepr class **ps_file** : tuple A tuple containing the file path to both the ".exp" and ".def" files. **exp** : tuple A tuple giving the name of the experiment and phase cycle. **settings** : dict A dictionary containing possible acquisition settings. Options include ['ReplaceMode','PhaseCycle','Acquisition_mode'] **variables** : dict A dictionary containg pulse spel variables to choose from can, these can also be dimension of experiment. **run** : bool, optional Should the experiment run or just compile, by default True :Raises: ValueError If an input is of the wrong type. .. !! processed by numpydoc !! .. py:function:: change_dimensions(path, dim, new_length) A function to rewrite a pulseSpel experiment file with a new dimension :Parameters: **path** : str The full file path. **dim** : int The experiment number that needs to be changed **new_length** : int The new length can be a list of two if 2D. :Raises: ValueError If there more than 2 dimesnions are supplied. Xepr can not handle 3+D experiments. .. !! processed by numpydoc !! .. py:function:: _addAWGPulse(sequence, pulse_num, id, pcyc_str, amp_var=None) .. py:function:: get_arange(array) .. py:function:: build_unique_progtable(seq) .. py:function:: check_variable(var, uprog) .. py:function:: determine_TWT_split(sequence, MaxGate) .. py:function:: write_pulsespel_file(sequence, d0, AWG=False, MPFU=False, MaxGate=40) Write the pulsespel file for a given sequence. :Parameters: **sequence** : Sequence The sequence class to be converted. **AWG** : bool, optional Is this a pulse spel file for an AWG spectrometer, by default False **MPFU** : list, optional A list of MPFU channels, by default False **MaxGate** : float, optional The maximum gate time for the TWT gate in microseconds, by default 40 us :Returns: str The string for the definition file str The string for the experiment file .. !! processed by numpydoc !!