13.5 Highlights of What’s New in Version 2022.0
Here is a summary of what’s changed since release 2021.4. Historical change logs are collected in Section
13.
13.5.1 Bug Fixes for Elements
- A bug was fixed in CSBEND that resulted in incorrect recording of global loss coordinates.
- An bug was fixed with CSBEND in that the matrix-based computations were sensitive to the
EDGE_ORDER parameter whereas the tracking was not for EDGE_EFFECTS1 or EDGE_EFFECTS2
equal to 3 or 4. The code now uses a more consistent approach. This issue was pointed out
by L. Nadolski (SOLEIL).
- A bug was fixed in IBSCATTER that gave incorrect results when PARALLEL_INTEGRATION was
nonzero.
- A bug was fixed in the FTRFMODE element that resulted in the N_CAVITIES parameter being
ignored. This was pointed out by forum user Siwei_Wang.
- A bug was fixed in the CWIGGLER element that resulted in the FIELD_OUTPUT file failing to
reflect the values of POLE_FACTOR1, POLE_FACTOR2, and POLE_FACTOR3, even though these
were included in the beam dynamics. This was pointed out by forum user Skamarokha.
13.5.2 Bug Fixes for Commands
- A bug was fixed that resulted in incorrect reporting of the element definition in informational
messages issued by the insert_elements command.
- The sdds_beam command previously accepted negative values for duplicate_stagger[4]
(the time offset between duplicated bunches. This doesn’t make sense and can cause problems
with multi-bunch wakes. A warning is now issued. Forum user Siwei_Wang pointed out the
issue.
- A bug was fixed for touschek_scatter in that the scattering was not performed relative to
the closed orbit. This was reported by G. Penn (LBNL).
- A bug was fixed for error_element that caused Pelegant to crash when several
error_element commands assigned errors to the same quantity.
13.5.3 New and Modified Elements
- The CCBEND element has a new symplectic fringe modeling capability based on theory and
developed by R. Lindberg (APS).
- The LGBEND element was added, supporting modeling of segmented longitudinal-gradient
dipole magnets with fringe effects. It is based on the same theory as CCBEND.
- Added the ability to sum two field maps for BRAT. This uses the new ADDITIONAL_FILENAME,
MAIN_FACTOR, and ADDITIONAL_FACTOR parameters.
- Added the ability to apply constant field components inside the hard edge boundary of the
magnet to BMXYZ.
- The FSE parameter on CSBEND can now be set to any value. Previously, any value smaller
than -1 was treated as -1.
13.5.4 New and Modified Commands
- The global_settings command has a new parameter, warning_limit, the controls how
many similar warnings will be shown in detail before such warnings are suppressed. The
default is 10.
- Added the element_occurence parameter to the change_start command, which allows
changing the starting location in a beamline.
- Added the change_end command, which allows changing the end of the beamline.
- Added the include_commands command, which allows including commands from another file.
- The apertures defined by the obstruction_data command are now reflected inside CCBEND
elements.
- The correct_tunes and chromaticity commands now allow saving the response and
correction matrices to SDDS files.
13.5.5 Other Changes
- The unified warning system has now been completed. All warnings from commands go through
this system and are collected in the summary at the end of the run.
- The type of the particleID field in beam output files was changed from long (typically a
32-bit signed integer) to ulong64 (a 64-bit signed integer). Internally, only 52 bits are used.
This is a step toward increasing the number of particles that can be tracked, which is presently
limited to 231.
13.5.6 Changes Specific to the MPI Parallel Version
- A bug was fixed in the sdds_beam command that resulted in a crash when multiple beam
input files were given.
13.5.7 Changes Specific to the GPU Version
The GPU version continues to be an alpha release and contains bugs. Users are
encouraged to check results against the serial or parallel versions and report issues to the
developers.
13.5.8 Changes to Related Programs and Files
The elegant distribution includes many programs and scripts that perform computations with elegant
output data, provide interfaces with other programs, or prepare data for use with elegant. These are
listed in Section 8.
Changes to these tools in this release include
- The program straightDipoleFringeCalc was added. It performs fringe integral and other
computations needed for setting up the fringe models in CCBEND and LGBEND.
- touschekLifetime was modified so that the FN and FP columns are normalized to the
circumference, so that integration vs s will give the total loss rate. The units of the columns
were updated.
- TFBFirSetup, which generates filter coefficients for transverse feedback, had several bugs as
pointed out by Siwei Wang on the forum. These were corrected.
- computeRBGGE, which generates generalized gradient expansions in rectangular regions, now
has auto-tuning options to require a minimum number of multipoles or derivatives.