Routines for modeling the effects of wakefields

The programs and files in the wakefields directory tree are a starting point for the study of wakefield effects. The program multibunch.f90 and related subroutines track a train of bunches through a lattice that can include wakefields. The beam structure is defined by the bmad structures beam_struct and bunch_struct. Use getf beam_struct and getf bunch_struct, etc. and check the bmad manual for details. Using these bmad structures we define bunch charge, spacing and number, in a train. Each bunch is assigned a mumber of macroparticles, emittances, etc. (all parameters are specified with the beam_init_struct structure). The macroparticles are tracked through the lattice, generating wakes and/or being kicked by wakes. The multibunch.f90 program uses a collection of bmad routines. At present the subroutine code/write_turn_data.f90 can write a file with the phase space 6-vector for each macroparticle for each bunch on each turn. In addition, it used a bmad routine find_bunch_sigma_matrix to compute the centroid, and sigma matrix for each bunch and writes the turn by turn data for each bunch to its own file.

Instructions for acquiring wakefields tracking code and bmad routines, and building executables