| Parameter Name | Units | Type | Default | Description |
| L | double | 0.0 | arc length | |
| ANGLE | double | 0.0 | bend angle | |
| K1 | double | 0.0 | geometric quadrupole strength | |
| K2 | double | 0.0 | geometric sextupole strength | |
| K3 | double | 0.0 | geometric octupole strength | |
| K4 | double | 0.0 | geometric decapole strength | |
| K5 | double | 0.0 | geometric 12-pole strength | |
| K6 | double | 0.0 | geometric 14-pole strength | |
| K7 | double | 0.0 | geometric 16-pole strength | |
| K8 | double | 0.0 | geometric 18-pole strength | |
| E1 | double | 0.0 | entrance edge angle | |
| E2 | double | 0.0 | exit edge angle | |
| TILT | double | 0.0 | rotation about incoming longitudinal axis | |
| H1 | double | 0.0 | entrance pole-face curvature | |
| H2 | double | 0.0 | exit pole-face curvature | |
| HGAP | double | 0.0 | half-gap between poles | |
| FINT | double | 0.5 | edge-field integral | |
| DX | double | 0.0 | misalignment | |
| DY | double | 0.0 | misalignment | |
| DZ | double | 0.0 | misalignment | |
| FSE | double | 0.0 | fractional strength error | |
| ETILT | double | 0.0 | error rotation about incoming longitudinal axis | |
| N_KICKS | long | 4 | number of kicks | |
| NONLINEAR | long | 1 | include nonlinear field components? | |
| LINEARIZE | long | 0 |
use linear matrix instead of symplectic integrator? | |
| SYNCH_RAD | long | 0 |
include classical synchrotron radiation? | |
| EDGE1_EFFECTS | long | 1 | include entrance edge effects? |
Like CSBEND, but incorporates a simulation of Coherent Synchrotron radiation.
| Parameter Name | Units | Type | Default | Description |
| EDGE2_EFFECTS | long | 1 | include exit edge effects? | |
| EDGE_ORDER | long | 1 | order to which to include edge effects | |
| INTEGRATION_ORDER | long | 4 | integration order (2 or 4) | |
| BINS | long | 0 |
number of bins for CSR wake | |
| BIN_ONCE | long | 0 |
bin only at the start of the dipole? | |
| BIN_RANGE_FACTOR | double | 1.2 | Factor by which to increase the range of histogram compared to total bunch length. Large value eliminates binning problems in CSRDRIFTs. | |
| SG_HALFWIDTH | long | 0 |
Savitzky-Golay filter half-width for smoothing current histogram. If less than 1, no SG smoothing is performed. | |
| SG_ORDER | long | 1 | Savitzky-Golay filter order for smoothing current histogram | |
| SGDERIV_HALFWIDTH | long | 0 |
Savitzky-Golay filter half-width for taking derivative of current histogram. Defaults to SG_HALFWIDTH (if positive) or else 1. | |
| SGDERIV_ORDER | long | 1 | Savitzky-Golay filter order for taking derivative of current histogram | |
| TRAPAZOID_INTEGRATION | long | 1 | Select whether to use trapazoid-rule integration (default) or a simple sum. | |
| OUTPUT_FILE | STRING | NULL | output file for CSR wakes | |
| OUTPUT_INTERVAL | long | 1 | interval (in kicks) of output to OUTPUT_FILE | |
| OUTPUT_LAST_WAKE_ONLY | long | 0 |
output final wake only? | |
| STEADY_STATE | long | 0 |
use steady-state wake equations? |
Like CSBEND, but incorporates a simulation of Coherent Synchrotron radiation.
| Parameter Name | Units | Type | Default | Description |
| IGF | long | 0 |
use integrated Greens function (requires STEADY_STATE=1)? | |
| USE_BN | long | 0 |
use b |
|
| EXPANSION_ORDER | long | 0 |
Order of field expansion. (0=auto) | |
| B1 | double | 0.0 | K1 = b1/rho, where rho is bend radius | |
| B2 | double | 0.0 | K2 = B2/rho | |
| B3 | double | 0.0 | K3 = B3/rho | |
| B4 | double | 0.0 | K4 = B4/rho | |
| B5 | double | 0.0 | K5 = B5/rho | |
| B6 | double | 0.0 | K6 = B6/rho | |
| B7 | double | 0.0 | K7 = B7/rho | |
| B8 | double | 0.0 | K8 = B8/rho | |
| ISR | long | 0 |
include incoherent synchrotron radiation (scattering)? | |
| ISR1PART | long | 1 | Include ISR for single-particle beam only if ISR=1 and ISR1PART=1 | |
| CSR | long | 1 | enable CSR computations? | |
| BLOCK_CSR | long | 0 |
block CSR from entering CSRDRIFT? | |
| DERBENEV_CRITERION_MODE | STRING | disable | disable, evaluate, or enforce | |
| PARTICLE_OUTPUT_FILE | STRING | NULL | name of file for phase-space output | |
| PARTICLE_OUTPUT_INTERVAL | long | 0 |
interval (in kicks) of output to PARTICLE_OUTPUT_FILE | |
| SLICE_ANALYSIS_INTERVAL | long | 0 |
interval (in kicks) of output to slice analysis file (from slice_analysis command) | |
| LOW_FREQUENCY_CUTOFF0 | double | -1 | Highest spatial frequency at which low-frequency cutoff filter is zero. If not positive, no low-frequency cutoff filter is applied. Frequency is in units of Nyquist (0.5/binsize). |
Like CSBEND, but incorporates a simulation of Coherent Synchrotron radiation.
| Parameter Name | Units | Type | Default | Description |
| LOW_FREQUENCY_CUTOFF1 | double | -1 | Lowest spatial frequency at which low-frequency cutoff filter is 1. If not given, defaults to LOW_FREQUENCY_CUTOFF1. | |
| HIGH_FREQUENCY_CUTOFF0 | double | -1 | Spatial frequency at which smoothing (high-frequency cutoff) filter begins. If not positive, no frequency filter smoothing is done. Frequency is in units of Nyquist (0.5/binsize). | |
| HIGH_FREQUENCY_CUTOFF1 | double | -1 | Spatial frequency at which smoothing (high-frequency cutoff) filter is 0. If not given, defaults to HIGH_FREQUENCY_CUTOFF0. | |
| CLIP_NEGATIVE_BINS | long | 1 | If non-zero, then any bins with negative counts after the filters are applied have the counts set to zero. | |
| WAKE_FILTER_FILE | STRING | NULL | Name of file supplying wakefield filtering data. | |
| WFF_FREQ_COLUMN | STRING | NULL | Name of column supplying frequency values for wakefield filtering data. | |
| WFF_REAL_COLUMN | STRING | NULL | Name of column supplying real values for wakefield filtering data. | |
| WFF_IMAG_COLUMN | STRING | NULL | Name of column supplying imaginary values for wakefield filtering data. | |
| GROUP | string | NULL | 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 |
For a discussion of the method behind this element, see M. Borland,
``Simple method for particle tracking with coherent synchrotron
radiation,'' Phys. Rev. ST Accel. Beams 4, 070701 (2001) and
G. Stupakov and P. Emma, SLAC LCLS-TN-01-12 (2001).
Recommendations for using this element. The default values for this element are not the best ones to use. They are retained only for consistency through upgrades. In using this element, it is recommended to have 50 to 100 k particle in the simulation. Setting BINS=600 and SG_HALFWIDTH=1 is also recommended to allow resolution of fine structure in the beam and to avoid excessive smoothing. It is strongly suggested that the user vary these parameters and view the histogram output to verify that the longitudinal distribution is well represented by the histograms (use OUTPUT_FILE to obtain the histograms). For LCLS simulations, we find that the above parameters give essentially the same results as obtained with 500 k particles and up to 3000 bins.
In order to verify that the 1D approximation is valid, the user should also set DERBENEV_CRITERION_MODE = ``evaluate'' and view the data in OUTPUT_FILE. Generally, the criterion should be much less than 1. See equation 11 of [20].
In order respects, this element is just like the CSBEND element, which provides a symplectic bending magnet that is accurate to all orders in momentum offset. The field expansion is available to fourth order.
One pitfall of symplectic integration is the possibility of orbit and path-length errors for the reference orbit if too few kicks are used. This may be an issue for rings. Hence, one must verify that a sufficient number of kicks are being used by looking at the trajectory closure and length of an on-axis particle by tracking. Using INTEGRATION_ORDER=4 is recommended to reduce the number of required kicks.
Normally, one specifies the higher-order components of the field with
the K1, K2, K3, and K4 parameters. The field
expansion in the midplane is
. By setting the USE_bN
flag to a nonzero value, one may instead specify the b1 through
b4 parameters, which are defined by the expansion
. This is convenient if one is
varying the dipole radius but wants to work in terms of constant field
quality.
Setting NONLINEAR=0 turns off all the terms above K_1 (or b_1) and also turns off effects due to curvature that would normally result in a gradient producing terms of higher order.
Edge effects are included using a first- or second-order matrix. The order is controlled using the EDGE_ORDER parameter, which has a default value of 1. N.B.: if you choose the second-order matrix, it is not symplectic.
Some confusion may exist about the edge angles, particularly the signs.
For a sector magnet, we have of course E1=E2=0. For a symmetric rectangular
magnet, E1=E2=ANGLE/2. If ANGLE is negative, then so are
E1 and E2. To understand this, imagine a rectangular magnet with positive ANGLE.
If the magnet is flipped over, then ANGLE becomes negative, as does the bending
radius
. Hence, to keep the focal length
of the edge
constant, we must also change the sign of
.
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.
Special note about splitting dipoles: when dipoles are long, it is common to want to split them into several pieces, to get a better look at the interior optics. When doing this, care must be exercised not to change the optics. elegant has some special features that are designed to reduce or manage potential problems. At issue is the need to turn off edge effects between the portions of the same dipole.
First, one can simply use the divide_elements command to set up
the splitting. Using this command, elegant takes care of everything.
Second, one can use a series of dipoles with the same name. In this case, elegant automatically turns off interior edge effects. This is true when the dipole elements directly follow one another or are separated by a MARK element.
Third, one can use a series of dipoles with different names. In this case, you
must also use the EDGE1_EFFECTS and EDGE2_EFFECTS parameters to
turn off interior edge effects.
N.B.: For versions 19.X and ealier splitting dipoles is not generally recommended for CSRCSBEND because the coherent synchrotron radiation computations
start over at the beginning of each piece. This is only acceptable
when using STEADY_STATE=1. This was changed in version 20.X.