13.1 Highlights of What’s New in Version 2020.4
Here is a summary of what’s changed since release 2020.3.
13.1.1 Bug Fixes for Elements
- The TAPERAPC element would mark all particles as lost when the RSTART and REND parameters
had the same value. This was reported by forum user Cai_Meng.
- The FMULT element had a bug that produced very invalid results with the FSE parameter
was non-zero, as reported by A. Xiao (APS). Also, the FSE and other parameters were not
influencing matrix-related computations if changed during a run.
- Use of the XREADOUT and YREADOUT features of the MONI element resulted in a message about
undefined rpn variables.
13.1.2 Bug Fixes for Commands
- The load_parameters command produced incorrect results in multi-step runs (i.e.,
n_steps¿1 in run_control) when a multi-page parameter file was used with multiple
differential-mode load instructions for the same element. This was reported by V. Sajaev
- The HKICK, VKICK, and HVKICK elements were not responding properly to the ramp_elements
and modulate_elements commands. This was reported by V. Sajaev (APS).
- A bug was fixed in ion_effects that sometimes caused unphysical sigma values in the bi-
and tri-gaussian fits. The bug was found and fixed by J. Calvey (APS).
- A bug was fixed that resulted in a crash when coupled=1 was set for trajectory response
matrix output from correction_matrix_output.
- A bug was fixed that resulted in a crash if a beamline definition contained unbalanced
quotation marks. This was reported by X. Huang (APS).
13.1.3 New and Modified Elements
- The CCBEND, CSBEND, FMULT, KOCT, KSEXT, and KQUAD now support sixth-order symplectic
integrators. The coefficients were provided by Y.P. Sun (APS), who also assisted in testing.
The value of the N_KICKS parameter may be reduced by a factor of ~5 if the sixth-order
integrator is used in place of the fourth-order integrator, with essentially identical results but
a ~30% reduction in run time.
- The APCONTOUR element has two new parameters: STICKY and CANCEL. The STICKY parameter
results in the aperture contour being applied inside subsequent CCBEND, CSBEND, CSRCSBEND,
KQUAD, KSEXT, verb—KOCT—, and KQUSE elements, as well as at the end of other downstream
elements. This continues until another APCONTOUR element asserts a new contour, or uses
CANCEL=1 to cancel the feature. This improvement was inspired by forum user dondreka.
13.1.4 New and Modified Commands
- Added bpm_centroid parameter to the run_setup command. This provides a facility similar
to the centroid parameter, but instead of giving the centroids at all elements, it gives them
at the BPMs only. This was requested by X. Huang (APS).
- The moments_output command now provides additional quantities for optimization at MARK
locations. See the documentation for the MARK element.
- The modulate_elements command now provides the ability to use the pass number to
compute the time, which is helpful in simulations where the time is offset by CHANGE_T=1 on
- Several improvements were made to the ion_effects command by J. Calvey (APS). The
gaussianfit option was added for the field_calculation_method parameter; this provides
a gaussian fit to model the ion fields, as an alternative to using gaussian statistics or more
complex fitting functions. Also, a new parameter, ion_output_interval, was added that
allows increasing the interval between logging of ion data.
- The correct command accepts a new value, coupled, for the method parameter when mode
is trajectory. This allows trajectory correction in strongly-coupled transport lines.
- The bunched_beam_moments command was added. This command is virtually identical to
the venerable bunched_beam command, but instead of specifying the beam dimensions in
terms of emittances, beta functions, etc., the user provides beam moments (e.g., beam size,
13.1.5 Changes Specific to the MPI Parallel Version
- The population_log file produced by parallel_optimization_setup erroneously recorded
the values of the optimization variables in the wrong in an offset fashion.
13.1.6 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
13.1.7 Changes to Related Programs and Files