Simulation of insertion device performance: WAVE
WAVE [1,2] has been developed at BESSY over the years to calculate synchrotron radiation for almost arbitrary magnetic fields with high precision. The program also offers a variety of subroutines to calculate and manipulate magnetic fields as well as generating functions for symplectic tracking calculations. The main features and options are given in the following list:
- Simulation of helical and planar wigglers and undulators as analytical models or permanent magnet structure as well as dipoles, quadrupoles, and sextupoles with fringe fields
- Simulation of magnetic field errors of insertion devices
- In- and output of magnetic fields via field maps or tables
- Maxwell-conform parametrization and interpolation of magnetic fields
- Calculation of amplitude, polarization (Stokes-vectors) and phase of the irradiated field (acceleration and velocity terms) of a set of electrons traveling through an arbitrary magnetic field. The calculations can be performed numerically (e.g. for undulators or for edge radiation) or by application of Schwinger's formula.
- Spatial and spectral distributions of synchrotron radiation and irradiated power and integration of the spatial distributions over an rectangular or circular aperture.
- Taking beam emittance, energy spread, and coherence effects for arbitrary phase-space distrbutions into account
- Propagation of the radiation field (Huygens' principle) e.g. to calculate the size of the source
- Brightness calculations
- Application of filters
- Taking into account the spectral efficiency of detectors
- Calculation of absorbed dose rate
- Trajectories of electrons for arbitrary magnetic fields
- Generating functions for symplectic tracking routines and linear transfer matrices
- Effects of insertion devices on beam emittance, energy spread, and on time and degree of beam polarization
- Integrated quadrupole and sextupole terms of magnetic fields
- Representation of insertion device as a sequence of dipoles with edge focusing
- User routines for data I/O, external magnetic field and treatment of tracking steps
- Output of data files of the calculated radiation for the ray-tracing codes RAY  and PHASE 
- Output of data files of generating functions and representation of insertion devices as a sequence of dipoles for tracking codes
WAVE has been used for the design of all insertion devices and the investigation of the insertion device – electron beam interaction, in particular of the superconducting wave-length shifters and wigglers at the storage ring BESSY II.
 M. Scheer, Beschleunigerphysik und radiometrische Eigenschaften supraleitender Wellen-längenschieber, Humboldt-Universität zu Berlin, Dissertation 2008.
 M. Scheer, WAVE - A Computer Code for the Tracking of Electrons through Magnetic Fields and the Calculation of Spontaneous Synchrotron Radiation, ICAP 2012.
 F. Schäfers, RAY - THE BESSY RAYTRACE PROGRAM F. Schäfers, In: Springer Series in Modern Optical Sciences: Modern Developments in X-Ray and Neutron Optics, eds. A. Erko, M. Idir, Th. Krist, A.G. Michette, Springer Berlin/Heidelberg, Vol. 137, 9-41 (2008) PDF
 J. Bahrdt, Wave Front Propagation: Design Code for Synchrotron Radiation Beamlines, Applied Optics 36 (1997), Vol. 19, p. 4367-4381