[Clas12_verystrange] [EXTERNAL] Procedure for FT electron vertex and angle correction
Geraint Clash
geraintclash at gmail.com
Mon Feb 22 09:19:54 EST 2021
Hello,
Below one can find the details for correcting the electron angles using a
new vertex position (a vertex at 0,0,0, is chosen by default)
x = electron[0]->ft(FTCAL)->getX();
y = electron[0]->ft(FTCAL)->getY();
z = electron[0]->ft(FTCAL)->getZ();
z = z + VALZ; //Where VALZ is the new vertex position you want to have for
the electron.
r = sqrt(x*x + y*y + z*z);
This function calculates a new LorentzVector for the electron assuming a
straight line from the new vertex to the hit in the FTCAL.
TLorentzVector Correct_z_position(TLorentzVector e, Double_t x, Double_t y,
Double_t z, Double_t r){
Double_t px, py, pz;
TLorentzVector el_corZ;
Double_t mom=e.E()*e.E()-0.000511*0.000511;
mom=TMath::Sqrt(mom);
px = mom*(x/r);
py = mom*(y/r);
pz = mom*(z/r);
el_corZ.SetXYZM(px, py, pz, 0.000511);
return el_corZ;
}
el_corZ = Correct_z_position(el, x, y, z, r);
In order to calculate the angles at the production vertex, one needs to
swim the electron back to the vertex. This is done by the following two
functions for theta and phi
Double_t Correct_Theta(TLorentzVector e){
Double_t Th_cor, Corect_Th;
Th_cor = exp(1.797 - 4.485*e.E()) + exp(-0.8671 - 1.078*e.E());
Th_cor = TMath::DegToRad()*Th_cor;
Corect_Th = e.Theta() + Th_cor;
return Corect_Th;
}
Double_t Correct_Phi(TLorentzVector e){
Double_t Ph_cor, Corect_Ph;
Ph_cor = exp(4.918 - 3.828*e.E()) + exp(3.841 - 1.256*e.E()) + exp(2.874
- 0.2195*e.E());
Ph_cor = TMath::DegToRad()*Ph_cor;
Corect_Ph = e.Phi() + Ph_cor;
return Corect_Ph;
}
el_corZ.SetTheta(Correct_Theta(el_corZ));
el_corZ.SetPhi(Correct_Phi(el_corZ));
The sum:
Corect_Ph = e.Phi() + Ph_cor
Assumes inbending data for outbending it would be the following:
Corect_Ph = e.Phi() - Ph_cor
Thanks,
Geraint Clash.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.jlab.org/pipermail/clas12_verystrange/attachments/20210222/92c9a9ad/attachment.html>
More information about the Clas12_verystrange
mailing list