A nonsymplectic numerically integrated planar undulator including optional copropagating laser beam
for laser modulation of the electron beam.
Parallel capable? : yes
GPU capable? : no
Backtracking capable? : no
Parameter Name  Units  Type  Default  Description 
L  M  double  0.0  length 
BU  T  double  0.0  Undulator peak field 
TGU_GRADIENT  1∕M  double  0.0  Transverse gradient divided by maximum onaxis field. 
TGU_COMP_FACTOR  NULL  double  1  Use to adjust constant field component to reduce trajectory error. 
PERIODS  long  0  Number of undulator periods. 

METHOD  NULL  STRING  nonadaptive rungekutta  integration method (rungekutta, bulirschstoer, modifiedmidpoint, twopass modifiedmidpoint, leapfrog, nonadaptive rungekutta) 
FIELD_EXPANSION  NULL  STRING  leading terms  ideal, exact, or ”leading terms” 
ACCURACY  NULL  double  0.0  Integration accuracy for adaptive integration. (Not recommended) 
N_STEPS  long  0  Number of integration steps for nonadaptive integration. 

POLE_FACTOR1  double  0.1557150345504  Strength factor for the first and last pole. 

POLE_FACTOR2  double  0.380687012288581  Strength factor for the second and secondtolast pole. 

POLE_FACTOR3  double  0.802829337348179  Strength factor for the third and thirdtolast pole. 

LASER_WAVELENGTH  M  double  0.0  Laser wavelength. If zero, the wavelength is calculated from the resonance condition. 
LASER_PEAK_POWER  W  double  0.0  laser peak power 
LASER_W0  M  double  1  laser spot size at waist, w_{0} = σ_{x} = σ_{y} 
LSRMDLTR continued
A nonsymplectic numerically integrated planar undulator including optional copropagating laser beam for
laser modulation of the electron beam.
Parameter Name  Units  Type  Default  Description 
LASER_PHASE  RAD  double  0.0  laser phase 
LASER_X0  M  double  0.0  laser horizontal offset at center of wiggler 
LASER_Y0  M  double  0.0  laser vertical offset at center of wiggler 
LASER_Z0  M  double  0.0  offset of waist position from center of wiggler 
LASER_TILT  RAD  double  0.0  laser tilt 
LASER_M  short  0  laser horizontal mode number (<5) 

LASER_N  short  0  laser vertical mode number (<5) 

SYNCH_RAD  short  0  Include classical, singleparticle synchrotron radiation? 

ISR  short  0  Include quantum excitation? 

HELICAL  short  0  If nonzero, simulate helical undulator. 

TIME_PROFILE  NULL  STRING  NULL  <filename>=<x>+<y> form specification of input file giving timedependent modulation of the laser electric and magnetic fields. 
TIME_OFFSET  S  double  0.0  Time offset of the laser profile. 
GROUP  string  NULL  Optionally used to assign an element to a group, with a userdefined name. Group names will appear in the parameter output file in the column ElementGroup 

This element simulates a planar undulator, together with an optional copropagating laser beam that can be used as a beam heater or modulator. The simulation is done by numerical integration of the Lorentz equation. It is not symplectic, and hence this element is not recommended for longterm tracking simulation of undulators in storage rings.
The fields in the undulator can be expressed in one of three ways. The FIELD_EXPANSION parameter is used to control which method is used.
 (71) 
 (72) 
and
 (73) 
where k_{u} = 2π∕λ_{u} and λ_{u} is the undulator period. This is the most precise method, but also the slowest.
Experimental feature: One may also model a transverse gradient undulator (TGU) by setting the TGU_GRADIENT parameter to a nonzero value. In this case, taking a as the normalized gradient, the fields are [54]
 (74) 
 (75) 
and
 (76) 
where γ is the central relativistic factor for the beam and C is given by the TGU_COMP_FACTOR parameter. This factor, and the term it multiplies, is present in order to help suppress the trajectory error at the end of the device. It may require adjustment in order to achieve the desired level of correction. In addition, the user may need to adjust the polestrength factors and include external misalignments and steering magnets in order to supress not only the trajectory error, but also dispersion errors.
 (77) 
and
 (78) 
In most cases, this gives results that are very close to the exact fields, at a savings of 10% in computation time. This is the default mode.
 (79) 
 (80) 
This is about 10% faster than the leadingorder mode, but less precise. Also, it does not include vertical focusing, so it is not generally recommended.
If HELICAL is set to a nonzero value, a helical device is modeled by combining the fields of two planar devices, one of which is rotated 90 degrees and displaced one quarter wavelength. Again, the FIELD_EXPANSION parameter is used to control which method is used.
 (81) 
 (82) 
and
 (83) 
 (84) 
 (85) 
and
 (86) 
 (87) 
 (88) 
 (89) 
This is about 10% faster than the leadingorder mode, but less precise. Also, it does not include vertical focusing, so it is not generally recommended.
The expressions for the laser field used by this element are from A. Chao’s article “Laser Acceleration
— Focussed Laser,” available online at
http://www.slac.stanford.edu/~achao/LaserAccelerationFocussed.pdf . The implementation covers laser
modes TEMij, where 0 ≤ i ≤ 4 and 0 ≤ j ≤ 4.
By default, if the laser wavelength is not given, it is computed from the resonance condition:
 (90) 
where γ is the relativistic factor for the beam and K is the undulator parameter.
The adaptive integrator doesn’t work well for this element, probably due to sudden changes in field derivatives in the first and last three poles (a result of the implementation of the undulator terminations). Hence, the default integrator is nonadaptive RungeKutta. The integration accuracy is controlled via the N_STEPS parameter. N_STEPS should be about 100 times the number of undulator periods.
The three pole factors are defined so that the trajectory is centered about x = 0 and x^{′} = 0 with zero dispersion. This wouldn’t be true with the standard twopole termination, which might cause problems overlapping the laser with the electron beam.
The laser time profile can be specified using the TIME_PROFILE parameter to specify the name of an SDDS file containing the profile. If given, the electric and magnetic fields of the laser are multiplied by the profile P(t). Hence, the laser intensity is multiplied by P^{2}(t). By default t = 0 in the profile is lined up with ⟨t⟩ in the electron bunch. This can be changed with the TIME_OFFSET parameter. A positive value of TIME_OFFSET moves the laser profile forward in time (toward the head of the bunch).
Explanation of <filename>=<x>+<y> format: Several elements in elegant make use of data from external files to provide input waveforms. The external files are SDDS files, which may have many columns. In order to provide a convenient way to specify both the filename and the columns to use, we frequently employ <filename>=<x>+<y> format for the parameter value. For example, if the parameter value is waveform.sdds=t+A, then it means that columns t and A will be taken from file waveform.sdds. The first column is always the independent variable (e.g., time, position, or frequency), while the second column is the dependent quantity.
LTHINLENS