...  ...  @@ 20,43 +20,84 @@ The first one is the wakefield of a round, metallic beam pipe that can 


be calculated numerically (see Sections [sec:wakefield]  [sec:TAU]).



Since this also limits the applications of wakefields we also provide a



way to import a discretized wakefield from a file The wakefield of a



round, metallic beam pipe with radius latexmath:[$a$] can be calculated



round, metallic beam pipe with radius latexmath:[a] can be calculated



by inverse FFT of the beam pipe impedance. There are known models for



beam pipes with `DC` and `AC` conductivity. The `DC` conductivity of a



metal is given by



latexmath:[\[\sigma_{DC} = \frac{ne^2\tau}{m} \label{eq:dc_cond}\]] with



latexmath:[$n$] the density of conduction electrons with charge



latexmath:[$e$], latexmath:[$\tau$] the relaxation time, and



latexmath:[$m$] the electron mass. The `AC` conductivity, a response to






[[eq:dc_cond]]



[latexmath]



++++



\sigma_{DC} = \frac{ne^2\tau}{m}



++++






with



latexmath:[n] the density of conduction electrons with charge



latexmath:[e], latexmath:[\tau] the relaxation time, and



latexmath:[m] the electron mass. The `AC` conductivity, a response to



applied oscillation fields, is given by



latexmath:[\[\sigma_{AC} = \frac{\sigma_{DC}}{1i\omega\tau} \label{eq:ac_cond}\]]



with latexmath:[$\omega$] denoting the frequency of the fields.






[[eq:ac_cond]]



[latexmath]



++++



\sigma_{AC} = \frac{\sigma_{DC}}{1i\omega\tau}



++++






with latexmath:[\omega] denoting the frequency of the fields.






The longitudinal impedance with `DC` conductivity is given by



latexmath:[\[\label{eq:Z[2]}



Z_{Ldc}(k) = \dfrac{1}{ca} \dfrac{2}{\frac{\lambda}{k}\frac{ika}{2}}\]]






[[eq:Z2]]



[latexmath]



++++



Z_{Ldc}(k) = \dfrac{1}{ca} \dfrac{2}{\frac{\lambda}{k}\frac{ika}{2}}



++++






where



latexmath:[\[\lambda=\sqrt{\dfrac{2\pi\sigma \vert k\vert}{c}}(i+sign(k))\]]



with latexmath:[$c$] denoting the speed of light and latexmath:[$k$] the






[latexmath]



++++



\lambda=\sqrt{\dfrac{2\pi\sigma \vert k\vert}{c}}(i+sign(k))



++++






with latexmath:[c] denoting the speed of light and latexmath:[k] the



wave number.






The longitudinal wake can be obtained by an inverse Fourier



transformation of the impedance. Since latexmath:[$Re(Z_L(k))$] drops at



high frequencies faster than latexmath:[$Im(Z_L(k))$] the cosine



transformation of the impedance. Since latexmath:[Re(Z_L(k))] drops at



high frequencies faster than latexmath:[Im(Z_L(k))] the cosine



transformation can be used to calculate the wake. The following equation



holds in both, the `DC` and `AC`, case latexmath:[\[\label{eq:Calc_Wl}



W_L(s)=10^{12} \dfrac{2c}{\pi}Re\left(\int_0^\infty Re(Z_L(k))\cos (ks)dk\right)\]]



with latexmath:[$Z_L(k)$] either representing



latexmath:[$Z_{L_{DC}}(k)$] or latexmath:[$Z_{L_{AC}}(k)$] depending on



holds in both, the `DC` and `AC`, case






[[eq:Calc_Wl]]



[latexmath]



++++



W_L(s)=10^{12} \dfrac{2c}{\pi}Re\left(\int_0^\infty Re(Z_L(k))\cos (ks)dk\right)



++++






with latexmath:[Z_L(k)] either representing



latexmath:[Z_{L_{DC}}(k)] or latexmath:[Z_{L_{AC}}(k)] depending on



the conductivity. With help of the PanofskyWenzel theorem



latexmath:[\[Z_L(k) = \frac{k}{c}Z_T(k).\]] we can deduce the transverse



wakefield from Equation [Calc_Wl]: latexmath:[\[\label{eq:Calc_Wt}



W_T(s)= 10^{12} \dfrac{2c}{\pi}Re\left(\int_0^\infty Re( \frac{c}{k}Z_L(k))\cos (ks)dk\right).\]]






[latexmath]



++++



Z_L(k) = \frac{k}{c}Z_T(k).



++++






we can deduce the transverse



wakefield from Equation [Calc_Wl]:






[[eq:Calc_Wt]]



[latexmath]



++++



W_T(s)= 10^{12} \dfrac{2c}{\pi}Re\left(\int_0^\infty Re( \frac{c}{k}Z_L(k))\cos (ks)dk\right).



++++









To calculate the integrals in Equation [Calc_Wl,Calc_Wt] numerically the



Simpson integration schema with equidistant mesh spacing is applied.



This leads to an integration with small latexmath:[$\Delta k$] with a



big latexmath:[$N$] which is computational not optimal with respect to



This leads to an integration with small latexmath:[\Delta k] with a



big latexmath:[N] which is computational not optimal with respect to



efficiency. Since we calculate the wakefield usually just once in the



initialization phase the overall performance will not be affected from



this.

...  ...  @@ 114,7 +155,7 @@ label:WAKE, TYPE=string, NBIN=real, FILTERS=stringarray; 


....






.Wakefield command summary



[cols="<,<",options="header",]



[cols="<1,<4",options="header",]



=======================================================================



Command Purpose



`WAKE` Specify a wakefield

...  ...  @@ 129,17 +170,17 @@ constant 





`CONDUCT` Conductivity [`AC`, `DC`]






`Z0` Impedance of the beam pipe in [latexmath:[$\Omega$]]



`Z0` Impedance of the beam pipe in [latexmath:[\Omega]]






`FORM` The form of the beam pipe [`ROUND`]






`RADIUS` The radius of the beam pipe in [m]






`SIGMA` Material constant dependent on the beam pipe material in



[latexmath:[$\Omega^{1} m$]]



[latexmath:[\Omega^{1} m]]






`TAU` Material constant dependent on the beam pipe material in



[latexmath:[$s$]]



[latexmath:[s]]






`FNAME` Specify a file that provides a wake function




...  ...  @@ 185,8 +226,8 @@ This has no effect on CSR wakefunctions. 


Define the impedance



~~~~~~~~~~~~~~~~~~~~






The impedance latexmath:[$Z_0$] of the beam pipe in



[latexmath:[$\Omega$]]. This has no effect on CSR wakefunctions.



The impedance latexmath:[Z_0] of the beam pipe in



[latexmath:[\Omega]]. This has no effect on CSR wakefunctions.






[[sec:FORM]]



Define the form of the beam pipe

...  ...  @@ 206,14 +247,14 @@ wakefunctions. 


Define the sigma of the beam pipe



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~






The latexmath:[$\sigma$] of the beam pipe (material constant), see



The latexmath:[\sigma] of the beam pipe (material constant), see



Equation [dc_cond]. This has no effect on CSR wakefunctions.






[[sec:TAU]]



Define the relaxation time (tau) of the beam pipe



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~






The latexmath:[$\tau$] defines the relaxation time and is needed to



The latexmath:[\tau] defines the relaxation time and is needed to



calculate the impedance of the beam pipe see Equation [dc_cond]. This



has no effect on CSR wakefunctions.




...  ...  @@ 282,11 +323,26 @@ order stencil is used to calculate the derivative. 


An implementation of the `SavitzkyGolay` filter can be found in the



Numerical Recipes. The `Stencil` filter uses the following two stencil



consecutively to smooth the line density:



latexmath:[\[f_i = \frac{7\cdot f_{i4} + 24\cdot f_{i2} + 34\cdot f_{i} + 24\cdot f_{i+2} + 7\cdot f_{i+4}}{96}\]]






[latexmath]



++++



f_i = \frac{7\cdot f_{i4} + 24\cdot f_{i2} + 34\cdot f_{i} + 24\cdot f_{i+2} + 7\cdot f_{i+4}}{96}



++++






and



latexmath:[\[f_i = \frac{7\cdot f_{i2} + 24\cdot f_{i1} + 34\cdot f_{i} + 24\cdot f_{i+1} + 7\cdot f_{i+2}}{96}.\]]






[latexmath]



++++



f_i = \frac{7\cdot f_{i2} + 24\cdot f_{i1} + 34\cdot f_{i} + 24\cdot f_{i+1} + 7\cdot f_{i+2}}{96}.



++++






For the derivative a standard second order stencil is used:



latexmath:[\[f'_i = \frac{f_{i2}  8\cdot f_{i1} + 8\cdot f_{i+1}  f_{i+2}}{h}\]]






[latexmath]



++++



f'_i = \frac{f_{i2}  8\cdot f_{i1} + 8\cdot f_{i+1}  f_{i+2}}{h}



++++






This filter was designed by Ilya Pogorelov for the ImpactT



implementation of the CSR 1D model.




...  ...  @@ 300,10 +356,16 @@ they identify coefficients which should be set to zero. 


absolute value. All coefficients which, compared to this value, are



below a threshold (measure in percents) are set to zero. For the



derivative the coefficients are multiplied with the following function



(this is equivalent to a convolution): latexmath:[\[g_{i} =



(this is equivalent to a convolution):



[latexmath]



++++



g_{i} =



\begin{cases}



i \frac{2\pi \imath}{N\cdot L} & i < N/2 \\



i \frac{2\pi \imath}{N\cdot L} & i > N/2



\end{cases}\]] where latexmath:[$N$] is the total number of



coefficients/sampling points and latexmath:[$L$] is the length of the



\end{cases}



++++






where latexmath:[N] is the total number of



coefficients/sampling points and latexmath:[L] is the length of the



bunch. 