&correct STRING mode = "trajectory"; STRING method = "global"; STRING trajectory_output = NULL; STRING corrector_output = NULL; STRING statistics = NULL; double corrector_tweek[2] = {1e-3, 1e-3}; double corrector_limit[2] = {0, 0}; double correction_fraction[2] = {1, 1}; double correction_accuracy[2] = {1e-6, 1e-6}; double bpm_noise[2] = {0, 0}; double bpm_noise_cutoff[2] = {1.0, 1.0}; STRING bpm_noise_distribution[2] = {"uniform", "uniform"}; long verbose = 1; long fixed_length = 0; long fixed_length_matrix = 0; long n_xy_cycles = 1; long n_iterations = 1; long prezero_correctors = 1; long track_before_and_after = 0; long start_from_centroid = 1; long use_actual_beam = 0; double closed_orbit_accuracy = 1e-12; long closed_orbit_iterations = 10; double closed_orbit_iteration_fraction = 1; &end
mode
-- Either ``trajectory'' or ``orbit'', indicating
correction of a trajectory or a closed orbit.
method
-- For trajectories, may be ``one-to-one'' or
``global''. For closed orbit, must be ``global''.
trajectory_output
-- The (incomplete) name of an SDDS file to which the trajectories or orbits will be written. Recommended value: ``%s.traj'' or ``%s.orb''.
corrector_output
-- The (incomplete) name of an SDDS file to which information about the final corrector strengths will be written. Recommended value: ``%s.cor''.
statistics
-- The (incomplete) name of an SDDS file to which statistical information about the
trajectories (or orbits) and corrector strengths will be written. Recommended value: ``%s.scor''.
corrector_tweek[2]
-- The amount by which to change the correctors in order to compute correction coefficients.
[The word ``tweak'' is misspelled ``tweek'' in the code.]
corrector_limit[2]
-- The maximum strength allowed for a corrector.
correction_fraction[2]
-- The fraction of the computed correction strength to actually use for any one iteration.
correction_accuracy[2]
-- The desired accuracy of the correction in terms of the RMS BPM values.
bpm_noise[2]
-- The BPM noise level.
bpm_noise_cutoff[2]
-- Cutoff values for the random distributions of BPM noise.
bpm_noise_distribution[2]
-- May be either ``gaussian'', ``uniform'', or ``plus_or_minus''.
verbose
-- If non-zero, information about the correction is printed during computations.
fixed_length
-- Indicates that the closed orbit length should be kept the same as the design orbit
length by changing the momentum offset of the beam.
fixed_length_matrix
-- Indicates that for fixed-length orbit correction, the fixed-length
matrix should be computed and used. This will improve convergence but isn't always needed.
n_xy_cycles
-- Number of times to alternate between correcting the x and y planes.
n_iterations
-- Number of iterations of the correction for each x/y cycle.
prezero_correctors
-- Flag indicating whether to set the correctors to zero before starting.
track_before_and_after
-- Flag indicating whether tracking should be done both before and after
correction.
start_from_centroid
-- Flag indicating that correction
should start from the beam centroid. For orbit correction, only the
beam momentum centroid is relevant.
use_actual_beam
-- Flag indicating that correction
should employ tracking of the beam distribution rather than a single
particle.
closed_orbit_accuracy
-- Accuracy of closed orbit computation.
closed_orbit_iterations
-- Number of iterations of closed orbit computation.
closed_orbit_iteration_fraction
-- Fraction of change in closed orbit to
use at each iteration.