10.125 ZLONGIT—A simulation of a single-pass broad-band or functionally specified longitudinal impedance.

A simulation of a single-pass broad-band or functionally specified longitudinal impedance.
Parallel capable? : yes
GPU capable? : no
Back-tracking capable? : no






Parameter Name UnitsType Default

Description






CHARGE C double 0.0

beam charge (or use CHARGE element)






BROAD_BAND long 0

broad-band impedance?






RA Ohmdouble 0.0

shunt impedance, Ra=Vˆ2  /P






RS Ohmdouble 0.0

shunt impedance (Rs=Ra/2)






Q double 0.0

cavity Q






FREQ Hz double 0.0

frequency (BROAD_BAND=1)






ZREAL STRINGNULL

<filename>=<x>+<y> form specification of input file giving real part of impedance vs f (BROAD_BAND=0)






ZIMAG STRINGNULL

<filename>=<x>+<y> form specification of input file giving imaginary part of impedance vs f (BROAD_BAND=0)






BIN_SIZE S double 0.0

bin size for current histogram (use 0 for autosize)






N_BINS long 128

number of bins for current histogram






MAX_N_BINS long 0

Maximum number of bins for current histogram






WAKES STRINGNULL

filename for output of wake






WAKE_INTERVAL long 1

interval in passes at which to output wake






WAKE_START long 0

pass at which to start to output wake






WAKE_END long 9223372036854775807

pass at which to stop to output wake






AREA_WEIGHT long 0

use area-weighting in assigning charge to histogram?






INTERPOLATE long 0

interpolate wake?






SMOOTHING long 0

Use Savitzky-Golay filter to smooth current histogram?






SG_ORDER long 1

Savitzky-Golay filter order for smoothing






SG_HALFWIDTH long 4

Savitzky-Golay filter halfwidth for smoothing






ZLONGIT continued

A simulation of a single-pass broad-band or functionally specified longitudinal impedance.






Parameter Name UnitsType Default

Description






REVERSE_TIME_ORDER long 0

Reverse time-order of particles for wake computation?






FACTOR double1

Factor by which to multiply impedance.






START_ON_PASS long 0

The pass on which the impedance effects start.






RAMP_PASSES long 0

Number of passes over which to linearly ramp up the impedance to full strength.






HIGH_FREQUENCY_CUTOFF0 double-1

Frequency at which smoothing filter begins. If not positive, no frequency filter smoothing is done. Frequency is in units of Nyquist (0.5/binsize).






HIGH_FREQUENCY_CUTOFF1 double-1

Frequency at which smoothing filter is 0. If not given, defaults to HIGH_FREQUENCY_CUTOFF0.






BUNCHED_BEAM_MODE long 1

If non-zero, then do calculations bunch-by-bunch.






ALLOW_LONG_BEAM long 0

Allow beam longer than covered by impedance data?






GROUP string NULL

Optionally used to assign an element to a group, with a user-defined name. Group names will appear in the parameter output file in the column ElementGroup






This element allows simulation of a longitudinal impedance using a “broad-band” resonator or an impedance function specified in a file. The impedance is defined as the Fourier transform of the wake function

       ∫ +∞
Z(ω) =      e- iωtW (t)dt
        -∞
(164)

where i = √ ---
  - 1, W(t) = 0 for t < 0, and W(t) has units of V∕C.

For a resonator impedance, the functional form is

        ------Rs-------
Z (ω ) = 1+ iQ ( ω-- ωr) ,
               ωr   ω
(165)

where Rs is the shunt impedance in Ohms, Q is the quality factor, and ωr is the resonant frequency.

When providing an impedance in a file, the user must be careful to conform to these conventions. In addition, the units of the frequency column must be Hz, while the units of the impedance components must be Ohms. At present, elegant does not check the units for correctness.

Other notes:

  1. The frequency data required from the input file is not ω, but rather f = ω∕(2π).
  2. The default smoothing setting (SG_HALFWIDTH=4), may apply too much smoothing. It is recommended that the user vary this parameter if smoothing is employed.
  3. Impedance data can be created from a wake function using the script wake2impedance, which is supplied with elegant. This script also illustrates how to scale the data with the frequency spacing. The script uses sddsfft, which produces a folded FFT (f 0) from a real function. The folded FFT representation involves multiplying the non-DC terms by 2. elegant expects this and internally multiplies the DC term by 2 as well.
  4. Using the broad-brand resonator model can often result in a very large number of bins being used, as elegant will try to resolve the resonance peak and achieve the desired bin spacing. This can result in poor performance, particularly for the parallel version.
  5. Wake output is available only in the serial version.

Bunched-mode application of the impedance is possible using specially-prepared input beams.See Section 6 for details. The use of bunched mode for any particular ZLONGIT element is controlled using the BUNCHED_BEAM_MODE parameter.

Explanation of <filename>=<x>+<y> format: Several elements in elegant make use of data from external files to provide input waveforms. The external files are SDDS files, which may have many columns. In order to provide a convenient way to specify both the filename and the columns to use, we frequently employ <filename>=<x>+<y> format for the parameter value. For example, if the parameter value is waveform.sdds=t+A, then it means that columns t and A will be taken from file waveform.sdds. The first column is always the independent variable (e.g., time, position, or frequency), while the second column is the dependent quantity.

ZTRANSVERSE