Dodecapole

class zgoubidoo.commands.magnetique.Dodecapole(label1: str = '', label2: str = '', *params, **kwargs)[source]

Bases: zgoubidoo.commands.magnetique.CartesianMagnet

Dodecapole magnet.

Zgoubi manual description

The meaning of parameters for DODECAPO is the same as for QUADRUPO.

In fringe field regions the magnetic field \(\vec{B}(X, Y, Z)\) and its derivatives up to fourth order are derived from the scalar potential approximated to the 6th order in Y and Z

\[V(X,Y,Z) = G(X)(Y^4 − \frac{10}{3} Y^2 Z^2 + Z^4) YZ\]

with \(G_0 = \frac{B_0}{R_0^5}\)

The modelling of the fringe field form factor G(X) is described under QUADRUPO, p. 152. Outside fringe field regions, or everywhere in sharp edge dodecapole (\(λ_E = λ_S = 0\)), \(\vec{B}(X, Y, Z)\) in the magnet is given by

\[\begin{split}\begin{align} B_X &= 0 \\ B_Y &= G_0 (5 Y^4 − 10 Y^2 Z^2 + Z^4) Z \\ B_Z &= G_0 (Y^4 − 10 Y^2 Z^2 + 5 Z^4) Y \end{align}\end{split}\]

Command attributes

LABEL1=''

Primary label for the Zgoubi command (default: auto-generated hash).

Type

str

LABEL2=''

Secondary label for the Zgoubi command.

Type

str

HEIGHT='20 centimeter'

Height of the magnet (distance between poles), used by plotting functions.

Type

Quantity

POLE_WIDTH='30 centimeter'

Pole width (used for plotting only).

Type

Quantity

PIPE_THICKNESS='2 centimeter'

Thickness of the pipe, used by plotting functions.

Type

Quantity

PIPE_COLOR='grey'

Color of the pipe, used by plotting functions.

Type

str

REFERENCE_FIELD_COMPONENT='BZ'

Orientation of the reference field (used by field maps)

Type

str

KINEMATICS='None'

A kinematics object.

Type

NoneType

APERTURE_LEFT='10 centimeter'

Aperture size of the magnet, left side (used for plotting only).

Type

Quantity

APERTURE_RIGHT='10 centimeter'

Aperture size of the magnet, right side (used for plotting only).

Type

Quantity

APERTURE_TOP='10 centimeter'

Aperture size of the magnet, top side (used for plotting only).

Type

Quantity

APERTURE_BOTTOM='10 centimeter'

Aperture size of the magnet, bottom side (used for plotting only).

Type

Quantity

COLOR='green'

Magnet color for plotting.

Type

str

LENGTH_IS_ARC_LENGTH='False'
Type

bool

IL='0'

Print field and coordinates along trajectories

Type

int

XL='0.0 centimeter'

Magnet length

Type

Quantity

R0='10.0 centimeter'

Radius of the pole tips

Type

Quantity

B0='0.0 kilogauss'

Field at pole tip

Type

Quantity

XE='0.0 centimeter'

Entrance face integration zone extent for the fringe field

Type

Quantity

LAM_E='0.0 centimeter'

Entrance face fringe field extent (λ_E = 0 for sharp edge)

Type

Quantity

C0='0.0'

Fringe field coefficient C0

Type

float

C1='1.0'

Fringe field coefficient C1

Type

float

C2='0.0'

Fringe field coefficient C2

Type

float

C3='0.0'

Fringe field coefficient C3

Type

float

C4='0.0'

Fringe field coefficient C4

Type

float

C5='0.0'

Fringe field coefficient C5

Type

float

XS='0.0 centimeter'

Exit face integration zone extent for the fringe field

Type

Quantity

LAM_S='0.0 centimeter'

Exit face fringe field extent

Type

Quantity

XPAS='0.1 centimeter'

Integration step

Type

Quantity

KPOS='1'

Alignment parameter: 1 (element aligned) or 2 (misaligned)

Type

int

XCE='0.0 centimeter'

X shift

Type

Quantity

YCE='0.0 centimeter'

Y shift

Type

Quantity

ALE='0.0 radian'

Tilt

Type

Quantity

Default initializer for all Commands.

Attributes Summary

KEYWORD

Keyword of the command used for the Zgoubi input data.

PARAMETERS

Parameters of the command, with their default value, their description and optinally an index used by other commands (e.g.

Attributes Documentation

KEYWORD: str = 'DODECAPO'

Keyword of the command used for the Zgoubi input data.

PARAMETERS: dict = {'ALE': (<Quantity(0.0, 'radian')>, 'Tilt', 73), 'APERTURE_BOTTOM': (<Quantity(10, 'centimeter')>, 'Aperture size of the magnet, bottom side (used for plotting only).'), 'APERTURE_LEFT': (<Quantity(10, 'centimeter')>, 'Aperture size of the magnet, left side (used for plotting only).'), 'APERTURE_RIGHT': (<Quantity(10, 'centimeter')>, 'Aperture size of the magnet, right side (used for plotting only).'), 'APERTURE_TOP': (<Quantity(10, 'centimeter')>, 'Aperture size of the magnet, top side (used for plotting only).'), 'B0': (<Quantity(0.0, 'kilogauss')>, 'Field at pole tip', 12), 'C0': (0.0, 'Fringe field coefficient C0', 31), 'C1': (1.0, 'Fringe field coefficient C1', 32), 'C2': (0.0, 'Fringe field coefficient C2', 33), 'C3': (0.0, 'Fringe field coefficient C3', 34), 'C4': (0.0, 'Fringe field coefficient C4', 35), 'C5': (0.0, 'Fringe field coefficient C5', 36), 'COLOR': ('green', 'Magnet color for plotting.'), 'HEIGHT': (<Quantity(20, 'centimeter')>, 'Height of the magnet (distance between poles), used by plotting functions.'), 'IL': (0, 'Print field and coordinates along trajectories', 1), 'KINEMATICS': (None, 'A kinematics object.'), 'KPOS': (1, 'Alignment parameter: 1 (element aligned) or 2 (misaligned)', 70), 'LABEL1': ('', 'Primary label for the Zgoubi command (default: auto-generated hash).'), 'LABEL2': ('', 'Secondary label for the Zgoubi command.'), 'LAM_E': (<Quantity(0.0, 'centimeter')>, 'Entrance face fringe field extent (λ_E = 0 for sharp edge)', 21), 'LAM_S': (<Quantity(0.0, 'centimeter')>, 'Exit face fringe field extent', 41), 'LENGTH_IS_ARC_LENGTH': (False, ''), 'PIPE_COLOR': ('grey', 'Color of the pipe, used by plotting functions.'), 'PIPE_THICKNESS': (<Quantity(2, 'centimeter')>, 'Thickness of the pipe, used by plotting functions.'), 'POLE_WIDTH': (<Quantity(30, 'centimeter')>, 'Pole width (used for plotting only).'), 'R0': (<Quantity(10.0, 'centimeter')>, 'Radius of the pole tips', 11), 'REFERENCE_FIELD_COMPONENT': ('BZ', 'Orientation of the reference field (used by field maps)'), 'XCE': (<Quantity(0.0, 'centimeter')>, 'X shift', 71), 'XE': (<Quantity(0.0, 'centimeter')>, 'Entrance face integration zone extent for the fringe field', 20), 'XL': (<Quantity(0.0, 'centimeter')>, 'Magnet length', 10), 'XPAS': (<Quantity(0.1, 'centimeter')>, 'Integration step', 60), 'XS': (<Quantity(0.0, 'centimeter')>, 'Exit face integration zone extent for the fringe field', 40), 'YCE': (<Quantity(0.0, 'centimeter')>, 'Y shift', 72)}

Parameters of the command, with their default value, their description and optinally an index used by other commands (e.g. fit).