10.10 CCBEND—A canonically-integrated straight dipole magnet, assumed to have multipoles defined in Cartesian coordinates.

A canonically-integrated straight dipole magnet, assumed to have multipoles defined in Cartesian coordinates.
Parallel capable? : yes
GPU capable? : no
Back-tracking capable? : yes






Parameter Name UnitsType Default

Description






L M double 0.0

arc length (not chord length!)






ANGLE RADdouble 0.0

bend angle






K1 1∕M2double 0.0

geometric quadrupole strength






K2 1∕M3double 0.0

geometric sextupole strength






K3 1∕M4double 0.0

geometric octupole strength






K4 1∕M5double 0.0

geometric decapole strength






K5 1∕M6double 0.0

geometric 12-pole strength






K6 1∕M7double 0.0

geometric 14-pole strength






K7 1∕M8double 0.0

geometric 16-pole strength






K8 1∕M9double 0.0

geometric 18-pole strength






TILT RADdouble 0.0

rotation about incoming longitudinal axis






YAW RADdouble 0.0

rotation about vertical axis through entrance point






HGAP M double 0.0

half-gap between poles






FINT1 double 0.0

edge integral for entrance






FINT2 double 0.0

edge integral for exit






DX M double 0.0

misalignment






DY M double 0.0

misalignment






DZ M double 0.0

misalignment






XKICK RADdouble 0.0

horizontal steering angle (approximate)






FSE double 0.0

fractional strength error






FSE_DIPOLE double 0.0

fractional strength error of dipole component






FSE_QUADRUPOLE double 0.0

fractional strength error of quadrupole component






ETILT RADdouble 0.0

error rotation about incoming longitudinal axis






N_KICKS long 4

number of kicks






INTEGRATION_ORDER short 4

integration order (2 or 4)






SYSTEMATIC_MULTIPOLES STRINGNULL

input file for systematic multipoles






CCBEND continued

A canonically-integrated straight dipole magnet, assumed to have multipoles defined in Cartesian coordinates.






Parameter Name UnitsType Default

Description






EDGE_MULTIPOLES STRINGNULL

input file for systematic entrance/exit edge multipoles






EDGE1_MULTIPOLES STRINGNULL

input file for systematic entrance edge multipoles. Overrides EDGE_MULTIPOLES.






EDGE2_MULTIPOLES STRINGNULL

input file for systematic exit edge multipoles. Overrides EDGE_MULTIPOLES.






RANDOM_MULTIPOLES STRINGNULL

input file for random multipoles






SYSTEMATIC_MULTIPOLE_FACTOR double 1

Factor by which to multiply systematic and edge multipoles






RANDOM_MULTIPOLE_FACTOR double 1

Factor by which to multiply random multipoles






REFERENCE_ORDER short 0

Reference order for multipole errors. Overridden by value in multipole files, if those are given.






MIN_NORMAL_ORDER short -1

If nonnegative, minimum order of systematic and random normal multipoles to use from data files.






MIN_SKEW_ORDER short -1

If nonnegative, minimum order of systematic and random skew multipoles to use from data files.






MAX_NORMAL_ORDER short -1

If nonnegative, maximum order of systematic and random normal multipoles to use from data files.






MAX_SKEW_ORDER short -1

If nonnegative, maximum order of systematic and random skew multipoles to use from data files.






SYNCH_RAD short 0

include classical, single-particle synchrotron radiation?






CCBEND continued

A canonically-integrated straight dipole magnet, assumed to have multipoles defined in Cartesian coordinates.






Parameter Name UnitsTypeDefault

Description






ISR short0

include incoherent synchrotron radiation (quantum excitation)?






ISR1PART short1

Include ISR for single-particle beam only if ISR=1 and ISR1PART=1






USE_RAD_DIST short0

If nonzero, overrides SYNCH_RAD and ISR, causing simulation of radiation from distributions, optionally including opening angle.






ADD_OPENING_ANGLE short1

If nonzero, radiation opening angle effects are added if USE_RAD_DIST is nonzero.






OPTIMIZE_FSE short1

Optimize strength (FSE) to obtain the ideal deflection angle.






OPTIMIZE_DX short1

Optimize x offset to obtain centered trajectory.






OPTIMIZE_FSE_ONCE short0

If nonzero, the FSE offset is optimized only once, even if relevant parameters are changed.






OPTIMIZE_DX_ONCE short0

If nonzero, the x offset is optimized only once, even if relevant parameters are changed.






COMPENSATE_KN short0

If nonzero, K1 and K2 strengths are adjusted to compensate for the changes in FSE needed to center the trajectory.






EDGE_ORDER short3

Gives order of edge effects. Does not affect edge multipoles.






DX_DY_SIGN short1

Prior to 2020.4, the sign of DX and DY was reversed for ANGLE<0. For backward compatibility, this is retained. Set this field to a positive value to use a consistent convention.






CCBEND continued

A canonically-integrated straight dipole magnet, assumed to have multipoles defined in Cartesian coordinates.






Parameter NameUnitsType Default

Description






VERBOSE short 0

If nonzero, print messages showing optimized FSE and x offset.






GROUP stringNULL

Optionally used to assign an element to a group, with a user-defined name. Group names will appear in the parameter output file in the column ElementGroup






This element provides a symplectic straight-pole, bending magnet with the exact Hamiltonian in Cartesian coordinates. The quadrupole, sextupole, and other multipole terms are defined in Cartesian coordinates. The magnet at present is restricted to having rectangular ends with symmetric entry and exit. This is quite different from CSBEND, where the edge angles are user-defined and where the field expansion is in curvilinear coordinates. Strictly speaking, CSBEND is only valid when the dipole is built with curved, beam-following poles.

Integration of particles in CCBEND is very similar to what’s done for KQUAD, KSEXT, and KOCT. The only real difference is that coordinate transformations are performed at the entrance and exit to orient the incoming central trajectory to the straight magnet axis. In addition, the fractional strength error is adjusted to ensure that the outgoing central trajectory is correct.

By default, two adjustments are made at start-up and whenever the length, angle, gradient, or sextupole term change:

  1. The fractional strength error is altered to ensure the correct deflecting angle. This is required because the bending field varies along the trajectory. By default, this affects all field components together, per the usual convention in elegant. To restrict the strength change to the dipole term, set COMPENSATE_KN=1. To turn off this optimization, set OPTIMIZE_FSE=0.
  2. The transverse position is adjusted to center the trajectory in the magnet. If the sagitta is σ and ANGLE is positive, the initial and final x coordinates are x = -σ∕2, while the center coordinate is x = σ∕2. To turn off this optimization, set OPTIMIZE_DX=0.

One can block the re-optimization of these parameters by setting OPTIMIZE_FSE_ONCE and OPTIMIZE_DX_ONCE to 1. Note also that the optimization is performed with all error-defining parameters (DX, DY, DZ, FSE, and ETILT) set to zero.

Edge angles and edge effects

The edge angle treatment in CCBEND is relatively simple, consisting of a vertical focusing effect with momentum dependence to all orders. Also included are edge pseudo-sextupoles (due to the body K1 term) and pseudo-octupoles (due to the body K2 term). The user may also specify edge multipoles using the EDGE_MULTIPOLE parameter.

Multipole errors

Multipole errors are specified for the body and edge in the same fashion as for the KQUAD element. The reference is the dipole field by default, but this may be changed using the REFERENCE_ORDER parameter.

Radiation effects

Incoherent synchrotron radiation, when requested with ISR=1, normally uses gaussian distributions for the excitation of the electrons. Setting USE_RAD_DIST=1 invokes a more sophisticated algorithm that uses correct statistics for the photon energy and number distributions. In addition, if USE_RAD_DIST=1 one may also set ADD_OPENING_ANGLE=1, which includes the photon angular distribution when computing the effect on the emitting electron.

Adding errors

When adding errors, care should be taken to choose the right parameters. The FSE and ETILT parameters are used for assigning errors to the strength and alignment relative to the ideal values given by ANGLE and TILT. One can also assign errors to ANGLE and TILT, but this has a different meaning: in this case, one is assigning errors to the survey itself. The reference beam path changes, so there is no orbit/trajectory error. The most common thing is to assign errors to FSE and ETILT. Note that when adding errors to FSE, the error is assumed to come from the power supply, which means that multipole strengths also change.

Splitting dipoles

The CCBEND element does not support splitting. Important: Users should not attempt to split CCBEND elements by hand, since this will not result in the correct geometry entering and exiting the various parts.

Matrix generation

elegant will use tracking to determine the transport matrix for CCBEND elements, which is needed for computation of twiss parameters and other operations. This can require some time, so elegant will cache the matrices and re-use them for identical elements.

CENTER