core.elements.diagnostic module
Define Diagnostic
.
As for now, diagnostics are not used by LightWin. However, LightWin can add
diagnostics (as well as ADJUST) to the final .dat
in order to perform a
“pass beauty”.
Note
Functionalities still under implementation. In particular, the number of attributes were not checked.
Note
This is TraceWin’s equivalent of Objective
.
- class DiagAchromat(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure achromat setting.
- _abc_impl = <_abc._abc_data object>
- n_attributes: int | range | Collection = 5
- class DiagBeta(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure beam beta.
- _abc_impl = <_abc._abc_data object>
- n_attributes: int | range | Collection = 6
- class DiagCurrent(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure current.
- _abc_impl = <_abc._abc_data object>
- class DiagDBeta(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure delta beam beta.
- _abc_impl = <_abc._abc_data object>
- n_attributes: int | range | Collection = 4
- class DiagDCurrent(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure delta current.
- _abc_impl = <_abc._abc_data object>
- class DiagDDivergence(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure delta divergences.
- _abc_impl = <_abc._abc_data object>
- class DiagDEnergy(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure difference between beam energy and perfect linac energy.
- _abc_impl = <_abc._abc_data object>
- n_attributes: int | range | Collection = 3
- class DiagDPSize2(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure delta divergence between two positions.
- _abc_impl = <_abc._abc_data object>
- class DiagDPhase(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure difference between beam phase and perfect linac phase.
- _abc_impl = <_abc._abc_data object>
- n_attributes: int | range | Collection = 2
- class DiagDPosition(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure delta position.
- _abc_impl = <_abc._abc_data object>
- class DiagDSize(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure delta size.
- _abc_impl = <_abc._abc_data object>
- class DiagDSize2(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure delta size between two positions.
- __init__(line: list[str], dat_idx: int, name: str = '', **kwargs: str) None
Force an element with null-length, with no index.
- _abc_impl = <_abc._abc_data object>
- is_implemented: bool = True
- n_attributes: int | range | Collection = (3, 4)
- class DiagDSize2FWHM(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure delta full width at half maximum between two positions.
- _abc_impl = <_abc._abc_data object>
- class DiagDSize3(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure delta phase spread between two positions.
- __init__(line: list[str], dat_idx: int, name: str = '', **kwargs: str) None
Force an element with null-length, with no index.
- _abc_impl = <_abc._abc_data object>
- is_implemented: bool = True
- n_attributes: int | range | Collection = (3, 4)
- class DiagDSize4(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure something?
- _abc_impl = <_abc._abc_data object>
- class DiagDSizeFWHM(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure delta full width at half maximum.
- _abc_impl = <_abc._abc_data object>
- class DiagDTwiss(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Make equal two beam Twiss parameters between two positions or more.
- _abc_impl = <_abc._abc_data object>
- n_attributes: int | range | Collection = 7
- class DiagDTwiss2(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Make equal transverse Twiss parameters at diagnostic position.
- _abc_impl = <_abc._abc_data object>
- n_attributes: int | range | Collection = 3
- class DiagDivergence(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure divergences.
- _abc_impl = <_abc._abc_data object>
- class DiagEmit(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure RMS emittance setting.
- _abc_impl = <_abc._abc_data object>
- n_attributes: int | range | Collection = 4
- class DiagEmit99(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure 99% emittance setting.
- _abc_impl = <_abc._abc_data object>
- n_attributes: int | range | Collection = 4
- class DiagEnergy(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure energy.
- _abc_impl = <_abc._abc_data object>
- n_attributes: int | range | Collection = 3
- class DiagHalo(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure halo setting.
- _abc_impl = <_abc._abc_data object>
- n_attributes: int | range | Collection = 4
- class DiagLuminosity(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure luminosity.
- _abc_impl = <_abc._abc_data object>
- n_attributes: int | range | Collection = 3
- class DiagPhase(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure phase.
- _abc_impl = <_abc._abc_data object>
- n_attributes: int | range | Collection = 2
- class DiagPhaseAdv(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure beam phase advance.
- _abc_impl = <_abc._abc_data object>
- n_attributes: int | range | Collection = 4
- class DiagPosition(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure position.
- _abc_impl = <_abc._abc_data object>
- is_implemented: bool = True
- n_attributes: int | range | Collection = 4
- class DiagSeparation(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure beam separation setting.
- _abc_impl = <_abc._abc_data object>
- n_attributes: int | range | Collection = 6
- class DiagSetMatrix(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure transfer matrix setting.
- _abc_impl = <_abc._abc_data object>
- n_attributes: int | range | Collection = 6
- class DiagSize(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure sizes.
- _abc_impl = <_abc._abc_data object>
- class DiagSizeFWHM(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure full width at half maximum.
- _abc_impl = <_abc._abc_data object>
- class DiagSizeMax(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Limit beam size max.
- _abc_impl = <_abc._abc_data object>
- n_attributes: int | range | Collection = 6
- class DiagSizeMin(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
DiagSizeMax
Limit beam size min.
- _abc_impl = <_abc._abc_data object>
- class DiagSizeP(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure divergences.
- _abc_impl = <_abc._abc_data object>
- class DiagTwiss(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure beam Twiss parameters settings.
- _abc_impl = <_abc._abc_data object>
- n_attributes: int | range | Collection = 7
- class DiagWaist(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Diagnostic
Measure waist setting.
- _abc_impl = <_abc._abc_data object>
- n_attributes: int | range | Collection = 4
- class Diagnostic(line: list[str], dat_idx: int, name: str = '', **kwargs: str)
Bases:
Element
A dummy object.
- __init__(line: list[str], dat_idx: int, name: str = '', **kwargs: str) None
Force an element with null-length, with no index.
- _abc_impl = <_abc._abc_data object>
- _separate_weight(line: list[str]) tuple[list[str], float]
Detect if a weight is present, separate if from args if so.
- base_name = 'D'
- increment_lattice_idx = False
- is_implemented: bool = False