Touschek lifetime update - #1122
Conversation
The calculation of Touschek lifetime has been updated following the work of Fu et al doi/10.1103/PhysRevAccelBeams.27.124401 (2024). In addition, the polarization dependency of Touschek lifetime has been added. The function can calculate the scattering C(s) and F(s) functions, as well as the average analyzing power, which is an important parameter used to fit the polarization of the beam.
You should maybe show your tests :) |
|
Dear @AmarildoTopalli , current implementation: Touschek lifetime w/o harmon = 9.34 h
Amarildo implementation: Touschek lifetime w/o harmon = 9.39 h |
Added "polarization" parameter. By default polarization = False. In this case the function returns tl, ma, rp just like the original get_lifetime function. If polarization = True, the function returns tl, ma, rp, C(s), F(s), A_avg. The compilation time when polarization = False is the same as the original get_lifetime function. When polarization = True, it takes twice as long to run, because of the additional integrals for the calculation of F(s).
|
Dear @oscarxblanco , |
|
@AmarildoTopalli Shouldn't polarisation parameter be a float? To allow calculating lifetime at a different polarisation degree? |
|
@gubaidulinvadim What is useful for the experimentalists is the average analysing power A_avg used to fit the polarization time and equilibrium beam polarization. With that value they can calculate the lifetime of the beam with X polarization degree, without needing to run a heavy script. |
@AmarildoTopalli , I confirm the calculation time is now very similar. |
I don't think it's correct to assume that the user knows how to calculate the lifetime of a polarised beam and doesn't want to just do `get_lifetime(a, b, c, polarisation=0.72)' |
The calculation of Touschek lifetime has been updated following the work of Fu et al doi/10.1103/PhysRevAccelBeams.27.124401 (2024). In addition, the polarization dependency of Touschek lifetime has been added. The function can calculate the scattering C(s) and F(s) functions, as well as the average analyzing power, which is an important parameter used to fit the polarization of the beam.
The formula was tested agains the existing Piwinski formula and gives similar results for the tested lattices.