EPICS base calcout record
The calcout
record is part of EPICS base:
https://wiki-ext.aps.anl.gov/epics/index.php/RRM_3-14_Calcout
Ophyd support for the EPICS calcout record
https://wiki-ext.aps.anl.gov/epics/index.php/RRM_3-14_Calcout
Public Structures
|
EPICS synApps XXX IOC setup of user calcouts: |
|
Single instance of the userCalcoutN database. |
|
EPICS base calcout record support in ophyd |
|
channel of a calcout record: A-L |
|
setup calcout for noisy Gaussian |
|
setup calcout record as an incrementer |
|
setup calcout record for noisy Lorentzian |
- class apstools.synApps.calcout.CalcoutRecord(*args: Any, **kwargs: Any)[source]
EPICS base calcout record support in ophyd
reset
()set all fields to default values
- class apstools.synApps.calcout.CalcoutRecordChannel(*args: Any, **kwargs: Any)[source]
channel of a calcout record: A-L
reset
()set all fields to default values
- class apstools.synApps.calcout.UserCalcoutDevice(*args: Any, **kwargs: Any)[source]
EPICS synApps XXX IOC setup of user calcouts:
$(P):userCalcOut$(N)
reset
()set all fields to default values
- calcout1
- calcout10
- calcout2
- calcout3
- calcout4
- calcout5
- calcout6
- calcout7
- calcout8
- calcout9
- class apstools.synApps.calcout.UserCalcoutN(*args: Any, **kwargs: Any)[source]
Single instance of the userCalcoutN database.
- apstools.synApps.calcout.setup_gaussian_calcout(calcout, ref_signal, center=0, width=1, scale=1, noise=0.05)[source]
setup calcout for noisy Gaussian
calculation:
D*(0.95+E*RNDM)/exp(((A-B)/C)^2)
PARAMETERS
- calcout
object : instance of
CalcoutRecord
- ref_signal
object : instance of
EpicsSignal
used asA
- center
float : EPICS record field
B
, default = 0- width
float : EPICS record field
C
, default = 1- scale
float : EPICS record field
D
, default = 1- noise
float : EPICS record field
E
, default = 0.05
- apstools.synApps.calcout.setup_incrementer_calcout(calcout, scan=None, limit=100000)[source]
setup calcout record as an incrementer
PARAMETERS
- calcout
object : instance of
CalcoutRecord
- scan
text or int or
None
: any of the EPICS record.SCAN
values, or the index number of the value, set to default ifNone
, default:.1 second
- limit
int or
None
: set the incrementer back to zero when this number is reached (or passed), default: 100000
- apstools.synApps.calcout.setup_lorentzian_calcout(calcout, ref_signal, center=0, width=1, scale=1, noise=0.05)[source]
setup calcout record for noisy Lorentzian
calculation:
D*(0.95+E*RNDM)/(1+((A-B)/C)^2)
PARAMETERS
- calcout
object : instance of
CalcoutRecord
- ref_signal
object : instance of
EpicsSignal
used asA
- center
float : EPICS record field
B
, default = 0- width
float : EPICS record field
C
, default = 1- scale
float : EPICS record field
D
, default = 1- noise
float : EPICS record field
E
, default = 0.05