orbit.py_linac.errors.ErrorNodesAndControllersLib#

This module is a collection of Error Nodes and Controller Classes. Controller are not subclasses of AccNode, and they are not part of the lattice. They resemble the Linac Cavities as controlling structure for RF gaps. The gaps are real nodes in the lattice, and Cavities perform synchronisation of time arrivals and field amplitudes in RF gaps. The Error Controller Classes keep references for two error nodes: first at the entrance of error applied part of the lattice (or node) and the second at the exit. For example, if we apply offset to a part of the lattice, we will shift particles’ coordinates transversly by some amount at the beginning of this part and back at the exit.

The elementary operations are performed by functions from error_base implemented in C++.

/scr/orbit/Errors/errorbase.cc

Functions

BendDisplacementLF

L displacement error to a bunch leaving bend

BendDisplacementLI

L displacement error to a bunch entering bend

BendDisplacementXF

X displacement error to a bunch leaving bend

BendDisplacementXI

X displacement error to a bunch entering bend

BendDisplacementYF

Y displacement error to a bunch leaving bend

BendDisplacementYI

Y displacement error to a bunch entering bend

BendFieldF

Bend field strength error to a bunch leaving element

BendFieldI

Bend field strength error to a bunch entering element

CoordDisplacement

Displace the coordinates of a bunch

DipoleKickerOsc

Oscillating dipole kick a bunch

LongDisplacement

Longitudinally displace a bunch

QuadKicker

Quadrupole kick a bunch

QuadKickerOsc

Oscillating quadrupole kick a bunch

RotationF

General rotation error to a bunch leaving element

RotationI

General rotation error to a bunch entering element

StraightRotationXSF

XS rotate a bunch leaving element

StraightRotationXSI

XS rotate a bunch entering element

StraightRotationXY

XY rotate a bunch

StraightRotationYSF

YS rotate a bunch leaving element

StraightRotationYSI

YS rotate a bunch entering element

orbitFinalize([message])

Method.

Classes

AccActionsContainer([name])

Class.

AccErrorNode([name, type_in])

This is an abstract base class for Error nodes hierarchy.

AccNode([name, type_in])

Class.

AccNodeBunchTracker([name, type_in])

Class.

BaseErrorController([name, type_in])

The base class for Error Controllers.

ErrorBendFieldNode([name])

The subclass of AccErrorNode.

ErrorCntrlBendField([name])

Subclass of BaseErrorController.

ErrorCntrlCoordDisplacement([name])

Subclass of BaseErrorController.

ErrorCntrlLongitudinalDisplacement([name])

Subclass of BaseErrorController.

ErrorCntrlStraightRotationX([name])

Subclass of BaseErrorController.

ErrorCntrlStraightRotationY([name])

Subclass of BaseErrorController.

ErrorCntrlStraightRotationZ([name])

Subclass of BaseErrorController.

ErrorCoordDisplacementNode([name])

The subclass of AccErrorNode.

ErrorLongitudinalDisplacementNode([name])

The subclass of AccErrorNode.

ErrorStraightRotationXNode([name])

The subclass of AccErrorNode.

ErrorStraightRotationYNode([name])

The subclass of AccErrorNode.

ErrorStraightRotationZNode([name])

The subclass of AccErrorNode.

NamedObject([name])

Class.

ParamsDictObject()

Class.

TypedObject([type_in])

Class.