AFL.automation.instrument.ISISLARMOR#

Functions

from_uri(uri[, structure_clients, cache, ...])

Connect to a Node on a local or remote server.

Classes

Driver(name[, defaults, overrides, useful_links])

ISISLARMOR([name, overrides])

Number()

All numbers inherit from this class.

Path(*args, **kwargs)

PurePath subclass that can make system calls.

class AFL.automation.instrument.ISISLARMOR.ISISLARMOR(name: str = 'ISISLARMOR', overrides=None)[source]#
defaults = {'cycle_path': '/NDXLARMOR/Instrument/data/cycle_24_2/', 'empty_cell_scatt_rn': -1, 'empty_cell_trans_rn': -1, 'fast_wait_time': 1, 'file_wait_time': 1, 'mask_file': '/NDXLARMOR/User/Masks/USER_Beaucage_242D_AFL_r86070.TOML', 'open_beam_trans_rn': -1, 'reduced_data_dir': './', 'sample_thickness': 1, 'slow_wait_time': 2}#
__init__(name: str = 'ISISLARMOR', overrides=None)[source]#
status()[source]#
getRunNumber()[source]#
trans_mode()[source]#
scatt_mode()[source]#
beginrun()[source]#

RUNSTATE can be a number (1 to 14), important states are: 1 - Setup 2 - Running 3 - Paused

abortrun()[source]#
endrun()[source]#
getRunTitle()[source]#
setRunTitle(title: str)[source]#
waitforframes(frames: Number = 5000)[source]#
waitforuah(uamps: Number = 50)[source]#
waitfortime(sec: Number = 60)[source]#
waitfor(exposure: Number, expose_metric: str)[source]#
waitforfile(fpath, max_t=900)[source]#
waitforSASfile(fpath, max_t=900)[source]#
waitforsetup()[source]#
waitformotormove(motor='0602')[source]#

Monitor the motor motion of motors that are nearly instant. Defaults to the monitor motor if no motor number is sent.

getFilename(type: str = 'raw', prefix: str = 'LARMOR', ext: str = None, lmin: float = None, lmax: float = None)[source]#

Filename for reduced data should be: [run#]_rear_1D_[lambdamin]_[lambdamax] Filename for pre-reduced data should be as nxs file: LARMOR[RUN#] where [RUN#] is a (left) zero-padded run number

getData(**kwargs)[source]#

NOTE: THIS IS AN OLD DESCRIPTION AND FUNCTION NEEDS TO BE MADE Grabs raw data from the instrument using the last filepath converts it to a numpy array. If the file is not found this will retry 10 times with a 0.2 sec rest to allow the data to be actually registered by the instrument system post-expose

expose(name: str, exposure: Number, exposure_trans: Number, expose_metric: str = 'frames', reduce_data: bool = True, measure_transmission: bool = True)[source]#

expose_metric: frames, uamps, or time in seconds; controls wait time expose_dose: exposure metric in frames, uamps, or seconds

reduce(sampleSANS_rn: int, sampleTRANS_rn: int | None = None, sample_thickness: Number = 2, name: str = '')[source]#