bunch length due to the potential well effect the output is the zerocurrent bunch length x bunch lengthening BL = BunchLength (Ib,Zn,Vrf,U0,E0,h,alpha,sigdelta,circ) Ib is the bunch current [A] (it may be a vector for multiple values) Zn is the longitudinal broadband impedance [Ohms] Vrf is the RF voltage [V] (it may be a vector for multiple values) U0 is the energy loss around the ring [eV] E0 is the beam energy [eV] h is the harmonic number alpha is the momentum compaction factor sigmadelta is the energy spread circ is the ring circumference see also: atBunchLength
0001 function BL = BunchLength (Ib,Zn,Vrf,U0,E0,h,alpha,sigdelta,circ) 0002 0003 % bunch length due to the potential well effect 0004 % the output is the zerocurrent bunch length x bunch lengthening 0005 % 0006 % BL = BunchLength (Ib,Zn,Vrf,U0,E0,h,alpha,sigdelta,circ) 0007 % 0008 % Ib is the bunch current [A] (it may be a vector for multiple values) 0009 % Zn is the longitudinal broadband impedance [Ohms] 0010 % Vrf is the RF voltage [V] (it may be a vector for multiple values) 0011 % U0 is the energy loss around the ring [eV] 0012 % E0 is the beam energy [eV] 0013 % h is the harmonic number 0014 % alpha is the momentum compaction factor 0015 % sigmadelta is the energy spread 0016 % circ is the ring circumference 0017 % 0018 % see also: atBunchLength 0019 0020 blg = abs(blgrowth(Ib,Zn,Vrf,U0,E0,h,alpha,sigdelta)); 0021 phi=pi - asin(U0./Vrf); 0022 nus= sqrt(-(Vrf/E0).*(h * alpha)/(2*pi) .* cos(phi)); 0023 zcBL = sigdelta.*(circ * alpha)./(2 * pi .* nus ); 0024 BL = zcBL .* blg; 0025 end 0026 0027 function blg = blgrowth(Ib,Zn,Vrf,U0,E0,h,alpha,sigdelta) 0028 % bunch lengthening factor due to the potential well effect 0029 0030 % Ib is the bunch current [A] (it may be a vector for multiple values) 0031 % Zn is the longitudinal broadband impedance [Ohms] 0032 % Vrf is the RF voltage [V] (it may be a vector for multiple values) 0033 % U0 is the energy loss around the ring [eV] 0034 % h is the harmonic number 0035 % alpha is the momentum compaction factor 0036 % sigmadelta is the energy spread 0037 0038 phi=pi - asin(U0./Vrf); 0039 nus= sqrt(-(Vrf/E0).*(h * alpha)/(2*pi) .* cos(phi)); 0040 0041 Delta = -(2*pi*Ib*Zn)./(Vrf*h.*cos(phi).*(alpha*sigdelta./nus).^3); 0042 Q=Delta/(4*sqrt(pi)); 0043 0044 0045 0046 blg = (2/3)^(1/3)./(9*Q + sqrt(3)*sqrt(-4+27*Q.^2)).^(1/3)... 0047 + (9*Q + sqrt(3)*sqrt(-4+27*Q.^2)).^(1/3)./(2^(1/3)*3^(2/3)); 0048 end 0049