Update of 4D PV Markov chain sampler
Update of the 4D primary vertex sampling tool based on two colliding 3D Gaussian bunches at the beam crossing angles and a Markov chain sampler to get an (x,y,z,t) sample from the probability distribution. Corrects the previous tool by rotating each bunch by half the crossing angle rather than the crossing angle. The effect on the beam spot profile is marginal, and the (z,t) histogram is attached to this MR as well as a short document describing the tool. I have added this histogram for monitoring as part of the MR.
Tested in Gauss v54r3 using the following option added to the current standard Gauss Configuration.py:
def CkvPVTimeSmearActivate():
from Configurables import Generation
from Configurables import BeamSpotMarkovChainSampleVertex
Generation("Generation").addTool(BeamSpotMarkovChainSampleVertex, name="BeamSpotMarkovChainSampleVertex")
Generation("Generation").VertexSmearingTool = "BeamSpotMarkovChainSampleVertex"
appendPostConfigAction(CkvPVTimeSmearActivate)
(Once merged, the option could be added to the configuration rather than using postConfig.)
Edited by Rosen Matev