AFL.automation.instrument.CHESSID3B#

Classes

CHESSID3B([overrides])

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

PySpecClient([address, port])

This class will interact with the spec server on the hutch IDB3 computer and allow SARA pass the appropriate commands

ScatteringInstrument()

class AFL.automation.instrument.CHESSID3B.CHESSID3B(overrides=None)[source]#
defaults = {'absolute_calibration_factor': 1, 'diode_counter': 'diode', 'empty transmission': None, 'exposure': 1.0, 'i0_counter': 'ic3', 'measurement_positions': [-91.47, -101.47, -126.47], 'preferred_det': 'PIL5', 'reduced_data_dir': '/mnt/home/chess_id3b/beaucage/211012-data', 'sample axis': 'Z-stage', 'sample in': 26.5, 'sample out': 25.0, 'sample_thickness': 1.58, 'transmission strategy': 'sum'}#
__init__(overrides=None)[source]#

connect to spec

pre_execute(**kwargs)[source]#

Executed before each call to execute

All of the kwargs passed to execute are also pass to this method. It is expected that this method be overridden by subclasses.

setReducedDataDir(path)[source]#
measureTransmission(set_empty_transmission=False, return_full=False)[source]#
lastTransmission(set_empty_transmission=False, return_full=False)[source]#
measureTransmissionQuick(exp=0.05, fn='align')[source]#
interactiveLoad(name='lineup', cutoff_trans=0.8, timeout=120)[source]#
getExposure()[source]#

get the currently set exposure time

getFilename()[source]#

get the currently set file name

getLastFilePath(**kwargs)[source]#

get the currently set file name

setExposure(exposure)[source]#
setFilename(name)[source]#
getElapsedTime()[source]#
getData(**kwargs)[source]#
getMotorPosition(name)[source]#
moveAxis(axis, value, block=False)[source]#

Moves a single axis using a connection to a labview vi. @param axis: the axis id or name of the motor to move @param value: the position of the motor to move to @param block: if True, this function will not return until the move is complete.

expose(name=None, exposure=None, nexp=1, block=True, reduce_data=True, measure_transmission=True, save_nexus=True)[source]#
scan(axis, npts, start, step, name=None, exposure=None, block=False)[source]#
status()[source]#