pcdsdevices.beam_stats.LCLS
- class pcdsdevices.beam_stats.LCLS(prefix='', name='lcls', **kwargs)
Object to query machine Lcls Linac status.
Attribute
Class
Suffix
Docs
Kind
Notes
bunch_charge
EpicsSignalRO
SIOC:SYS0:ML00:AO470
Bunch charge [nC]
normal
beam_event_rate
EpicsSignalRO
EVNT:SYS0:1:LCLSBEAMRATE
LCLSBEAM Event Rate [Hz]
normal
ebeam_energy
EpicsSignalRO
SIOC:SYS0:ML00:AO500
Final electron energy [ GeV]
normal
ebeam_energy_user_req
EpicsSignalRO
SIOC:SYS0:ML01:CALC036
Beam energy request from Users [GeV]
normal
bunch_length
EpicsSignalRO
SIOC:SYS0:ML00:AO820
estimated FEL Pulse Duration (FWHM) [fs]
normal
bc2_peak_current
EpicsSignalRO
SIOC:SYS0:ML00:AO195
Peak current after BC2 [A]
normal
eloss_energy
EpicsSignalRO
PHYS:SYS0:1:ELOSSENERGY
Last Eloss sxray energy [mJ]
normal
vernier_energy
EpicsSignalRO
FBCK:FB04:LG01:DL2VERNIER
Fast Feedback 6x6 Vernier [MeV]
normal
photon_ev_hxr
EpicsSignalRO
SIOC:SYS0:ML00:AO627
Photon eV HXR [eV]
normal
bykik_abort
EpicsSignal
IOC:IN20:EV01:BYKIK_ABTACT
BYKIK: Abort Active
normal
bykik_period
EpicsSignal
IOC:IN20:EV01:BYKIK_ABTPRD
BYKIK: Abort Period [beam shots]
normal
undulator_k_line
EpicsSignalRO
USEG:UNDS:2650:KAct
Most upstream undulator K value (K-line)
normal
undulator_l_line
EpicsSignalRO
USEG:UNDH:1850:KAct
Most upstream undulator K value (L-line)
normal
fbck_vernier
EpicsSignalRO
SIOC:SYS0:ML00:CALC209
FBCK Vernier [MeV]
normal
dl2_energy
EpicsSignalRO
FBCK:FB04:LG01:DL2VERNIER
DL2 Energy [MeV]
normal
vernier_percent_of_bend_energy
EpicsSignalRO
SIOC:SYS0:ML01:AO151
Vernier Scan Range [%]
normal
vernier_limit
EpicsSignalRO
SIOC:SYS0:ML01:CALC034
Vernier Limit [MeV]
normal
vernier_ctrl_with_limits
EpicsSignalRO
SIOC:SYS0:ML01:CALC033
Vernier Ctrl w/ limits [MeV]
normal
hard_e_energy
EpicsSignalRO
BEND:DMPH:400:BDES
Desired B-Field, Hard e-Energy [GeV/c]
normal
soft_e_energy
EpicsSignalRO
BEND:DMPS:400:BDES
Desired B-Field, Soft e-Energy [GeV/c]
normal
Methods
- bykik_disable()
Disable bykik abort.
- bykik_enable()
Enable bykik abort.
- bykik_get_period()
Get the number of events between bykik aborts.
- bykik_set_period(period)
Set the number of events between bykik aborts.
- Parameters:
period (number)
- bykik_status()
Get status of bykik abort.
- Returns:
Bykik Abort Status
- configure(d: Dict[str, Any]) Tuple[Dict[str, Any], Dict[str, Any]]
Configure the device for something during a run
This default implementation allows the user to change any of the
configuration_attrs
. Subclasses might override this to perform additional input validation, cleanup, etc.- Parameters:
d (dict) – The configuration dictionary. To specify the order that the changes should be made, use an OrderedDict.
- Returns:
(old, new) tuple of dictionaries
Where old and new are pre- and post-configure configuration states.
- describe() OrderedDictType[str, Dict[str, Any]]
Provide schema and meta-data for
read()
.This keys in the
OrderedDict
this method returns must match the keys in theOrderedDict
return byread()
.This provides schema related information, (ex shape, dtype), the source (ex PV name), and if available, units, limits, precision etc.
- Returns:
data_keys (OrderedDict) – The keys must be strings and the values must be dict-like with the
event_model.event_descriptor.data_key
schema.
- get(**kwargs)
Get the value of all components in the device
Keyword arguments are passed onto each signal.get(). Components beginning with an underscore will not be included.
- post_elog_status()
Post device status to the primary elog, if possible.
- read() OrderedDictType[str, Dict[str, Any]]
Read data from the device.
This method is expected to be as instantaneous as possible, with any substantial acquisition time taken care of in
trigger()
.The
OrderedDict
returned by this method must have identical keys (in the same order) as theOrderedDict
returned bydescribe()
.By convention, the first key in the return is the ‘primary’ key and maybe used by heuristics in
bluesky
.The values in the ordered dictionary must be dict (-likes) with the keys
{'value', 'timestamp'}
. The'value'
may have any type, the timestamp must be a float UNIX epoch timestamp in UTC.- Returns:
data (OrderedDict) – The keys must be strings and the values must be dict-like with the keys
{'value', 'timestamp'}
- read_configuration() OrderedDictType[str, Dict[str, Any]]
Dictionary mapping names to value dicts with keys: value, timestamp
To control which fields are included, change the Component kinds on the device, or modify the
configuration_attrs
list.
- screen()
Open a screen for controlling the device.
Default behavior is the typhos screen, but this method can be overridden for more specialized screens.
- stop(*, success=False)
Stop the Device and all (instantiated) subdevices
- summary()
- trigger() StatusBase
Trigger the device and return status object.
This method is responsible for implementing ‘trigger’ or ‘acquire’ functionality of this device.
If there is an appreciable time between triggering the device and it being able to be read (via the
read()
method) then this method is also responsible for arranging that theStatusBase
object returned by this method is notified when the device is ready to be read.If there is no delay between triggering and being readable, then this method must return a
StatusBase
object which is already completed.- Returns:
status (StatusBase) –
StatusBase
object which will be marked as complete when the device is ready to be read.
Attributes
- configuration_attrs
- connected
- hints
- kind