&chromaticity STRING sextupoles = NULL; double dnux_dp = 0; double dnuy_dp = 0; double sextupole_tweek = 1e-3; double correction_fraction = 0.9; long n_iterations = 5; double tolerance = 0; STRING strength_log = NULL; long change_defined_values = 0; double strength_limit = 0; long use_perturbed_matrix = 0; long exit_on_failure = 0; long verbosity = 2; &end
sextupoles-- List of names of elements to use to correct the chromaticities.
dnuy_dp-- Desired chromaticity values.
sextupole_tweek-- Amount by which to tweak the sextupoles to compute derivatives of chromaticities with respect to sextupole strength. [The word ``tweak'' is misspelled ``tweek'' in the code.]
correction_fraction-- Fraction of the correction to apply at each iteration. In some cases, correction is unstable at this number should be reduced.
n_iterations-- Number of iterations of the correction to perform.
tolerance-- Stop iterating when chromaticities are within this value of the desired values.
strength_log-- The (incomplete) name of an SDDS file to which the sextupole strengths will be written. Recommended value: ``%s.ssl''.
change_defined_values-- Changes the defined values of the sextupole strengths. This means that when the lattice is saved (using
save_lattice), the sextupoles will have the corrected values. This would be used for correcting the chromaticity of a design lattice, for example, but not for correcting chromaticity of a perturbed lattice.
strength_limit-- Limit on the absolute value of sextupole strength ().
use_perturbed_matrix-- If nonzero, requests use of the perturbed correction matrix in performing correction. For difficult lattices with large errors, this may be necessary to obtain correction. In general, it is not necessary and only slows the simulation.
exit_on_failure-- If nonzero, then failure to reach the desired chromaticities within the tolerance results in the program exiting.
verbosity-- Increasing positive values result in increasing amounts of information printed during execution.