mxcubecore.HardwareObjects.abstract.AbstractEnergyScan#

Classes

class mxcubecore.HardwareObjects.abstract.AbstractEnergyScan.AbstractEnergyScan(name)[source]#

Bases: HardwareObject

calculate_und_gaps(energy)[source]#

Calculate the undulator(s) gap(s), If specified, undulator is the name of the undulator to chose if several possibilities. Return a dictionary undulator:gap in the order undulator(s)should move.

choose_attenuation()[source]#

Procedure to set the minimal attenuation in order no preserve the sample. Should be done at the energy after the edge.

close_fast_shutter()[source]#

Close the fast shutter.

close_safety_shutter(timeout)[source]#

Close the safety shutter. Give a timeout [s] if needed.

do_chooch(elememt, edge, scanArchiveFilePrefix, scanFilePrefix)[source]#

Use chooch to calculate edge and inflection point The brick expects the folowing parameters to be returned: pk, fppPeak, fpPeak, ip, fppInfl, fpInfl, rm, chooch_graph_x, chooch_graph_y1, chooch_graph_y2, title)

enable_max_transmission(state)[source]#

Enables/disables usage of maximal transmission set during the energy scan

energy_scan_hook(energy_scan_parameters)[source]#

Execute actions, required before running the raw scan(like changing undulator gaps, move to a given energy… These are in general beamline specific actions.

escan_postscan()[source]#

set the nesessary equipment in position after the scan

escan_prepare()[source]#

Set the nesessary equipment in position for the scan. No need to know the c=scan paramets.

execute_energy_scan(energy_scan_parameters)[source]#

Execute the raw scan sequence. Here is where you pass whatever parameters you need to run the raw scan (e.g start/end energy, counting time, energy step…).

get_static_parameters(config_file, element, edge)[source]#

Get any parameters, which are known before hand. Some of them are known from the theory, like the peak energy, others are equipment specific like the lower/upper ROI limits of the fluorescence detector. Usually these parameters are pre-defined in a file, but can also be calculated. The function should return a distionary with at least defined {‘edgeEnergy’: peak_energy} member, where ‘edgeEnergy’ is a compulsory key. It is convinient to put in the same dictionary the remote energy, the ROI min/max values. There are few more reserved key names: ‘eroi_min’, ‘eroi_max’ - min and max ROI limits if you want ot set one. ‘findattEnergy’ - energy to move to if you want to choose the attenuation for the scan.

move_energy(energy)[source]#

Move the monochromator to energy - used before and after the scan.

move_undulators(undulators)[source]#

Move the undulator(s) to gap(s), where undulators is a dictionary undulator:gap and should be in the order of which motor to move first.

open_fast_shutter()[source]#

Open the fast shutter.

open_safety_shutter(timeout)[source]#

Open the safety shutter. Give a timeout [s] if needed.

set_max_transmission(value)[source]#

Sets maximal transmission used during the energy scan

set_mca_roi(eroi_min, eroi_max)[source]#

Configure the fluorescent detector ROI. The input is min/max energy.