From 4420900e72c8d763b17c90adda44b8bb4f416525 Mon Sep 17 00:00:00 2001 From: ALICE Action Bot Date: Wed, 11 Dec 2024 07:06:36 +0000 Subject: [PATCH] Please consider the following formatting changes --- .../Strangeness/lambdaJetpolarization.cxx | 224 ++++++++---------- 1 file changed, 103 insertions(+), 121 deletions(-) diff --git a/PWGLF/Tasks/Strangeness/lambdaJetpolarization.cxx b/PWGLF/Tasks/Strangeness/lambdaJetpolarization.cxx index 218dc98d1ab..d644732abcb 100644 --- a/PWGLF/Tasks/Strangeness/lambdaJetpolarization.cxx +++ b/PWGLF/Tasks/Strangeness/lambdaJetpolarization.cxx @@ -658,8 +658,6 @@ struct myAnalysis { JEhistos.fill(HIST("V0Counts"), V0NumbersPerEvent); } PROCESS_SWITCH(myAnalysis, processV0, "processV0", true); - - }; ///////////////////////////// @@ -712,73 +710,70 @@ struct LfMyV0s { registry.add("V0protonphiInJetV0frame", "V0protonphiInJetV0frame", kTH1F, {axisPhi}); registry.add("hLambdamassandSinPhi", "V0protonphiInJetV0frame", kTH2F, {{200, 0.9, 1.2}, {200, -1, 1}}); - registry.add("profile", "Invariant Mass vs sin(phi)", {HistType::kTProfile, {{200, 0.9,1.2}}}); - - - + registry.add("profile", "Invariant Mass vs sin(phi)", {HistType::kTProfile, {{200, 0.9, 1.2}}}); } double massPr = o2::constants::physics::MassProton; - double massLambda = o2::constants::physics::MassLambda; - - TMatrixD LorentzTransInV0frame(double ELambda,double Lambdapx,double Lambdapy,double Lambdapz){ - double PLambda = sqrt(Lambdapx*Lambdapx+Lambdapy*Lambdapy+Lambdapz*Lambdapz); - double LambdaMass = sqrt(ELambda*ELambda-PLambda*PLambda); - - double Alpha = 1/(LambdaMass*(ELambda + LambdaMass)); - TMatrixD matrixLabToLambda(4,4); - matrixLabToLambda(0,0) = ELambda/LambdaMass; - matrixLabToLambda(0,1) = - Lambdapx / LambdaMass; - matrixLabToLambda(0,2) = - Lambdapy / LambdaMass; - matrixLabToLambda(0,3) = - Lambdapz / LambdaMass; - matrixLabToLambda(1,0) = - Lambdapx / LambdaMass; - matrixLabToLambda(1,1) = 1+Alpha*Lambdapx*Lambdapx; - matrixLabToLambda(1,2) = Alpha*Lambdapx*Lambdapy; - matrixLabToLambda(1,3) = Alpha*Lambdapx*Lambdapz; - matrixLabToLambda(2,0) = - Lambdapy / LambdaMass; - matrixLabToLambda(2,1) = Alpha*Lambdapy*Lambdapx; - matrixLabToLambda(2,2) = 1+Alpha*Lambdapy*Lambdapy; - matrixLabToLambda(2,3) = Alpha*Lambdapy*Lambdapz; - matrixLabToLambda(3,0) = - Lambdapz / LambdaMass; - matrixLabToLambda(3,1) = Alpha*Lambdapz*Lambdapx; - matrixLabToLambda(3,2) = Alpha*Lambdapz*Lambdapy; - matrixLabToLambda(3,3) = 1+Alpha*Lambdapz*Lambdapz; + double massLambda = o2::constants::physics::MassLambda; + + TMatrixD LorentzTransInV0frame(double ELambda, double Lambdapx, double Lambdapy, double Lambdapz) + { + double PLambda = sqrt(Lambdapx * Lambdapx + Lambdapy * Lambdapy + Lambdapz * Lambdapz); + double LambdaMass = sqrt(ELambda * ELambda - PLambda * PLambda); + + double Alpha = 1 / (LambdaMass * (ELambda + LambdaMass)); + TMatrixD matrixLabToLambda(4, 4); + matrixLabToLambda(0, 0) = ELambda / LambdaMass; + matrixLabToLambda(0, 1) = -Lambdapx / LambdaMass; + matrixLabToLambda(0, 2) = -Lambdapy / LambdaMass; + matrixLabToLambda(0, 3) = -Lambdapz / LambdaMass; + matrixLabToLambda(1, 0) = -Lambdapx / LambdaMass; + matrixLabToLambda(1, 1) = 1 + Alpha * Lambdapx * Lambdapx; + matrixLabToLambda(1, 2) = Alpha * Lambdapx * Lambdapy; + matrixLabToLambda(1, 3) = Alpha * Lambdapx * Lambdapz; + matrixLabToLambda(2, 0) = -Lambdapy / LambdaMass; + matrixLabToLambda(2, 1) = Alpha * Lambdapy * Lambdapx; + matrixLabToLambda(2, 2) = 1 + Alpha * Lambdapy * Lambdapy; + matrixLabToLambda(2, 3) = Alpha * Lambdapy * Lambdapz; + matrixLabToLambda(3, 0) = -Lambdapz / LambdaMass; + matrixLabToLambda(3, 1) = Alpha * Lambdapz * Lambdapx; + matrixLabToLambda(3, 2) = Alpha * Lambdapz * Lambdapy; + matrixLabToLambda(3, 3) = 1 + Alpha * Lambdapz * Lambdapz; return matrixLabToLambda; } - TMatrixD MyTMatrixTranslationToJet(double Jetpx,double Jetpy,double Jetpz,double Lambdapx,double Lambdapy,double Lambdapz){ - - - - TVector3 UnitX(1.0,0.0,0.0); - TVector3 UnitY(0.0,1.0,0.0); - TVector3 UnitZ(0.0,0.0,1.0); - TVector3 JetP(Jetpx,Jetpy,Jetpz); - TVector3 V0LambdaP(Lambdapx,Lambdapy,Lambdapz); + TMatrixD MyTMatrixTranslationToJet(double Jetpx, double Jetpy, double Jetpz, double Lambdapx, double Lambdapy, double Lambdapz) + { + + TVector3 UnitX(1.0, 0.0, 0.0); + TVector3 UnitY(0.0, 1.0, 0.0); + TVector3 UnitZ(0.0, 0.0, 1.0); + TVector3 JetP(Jetpx, Jetpy, Jetpz); + TVector3 V0LambdaP(Lambdapx, Lambdapy, Lambdapz); TVector3 JetCrossV0 = (JetP.Cross(V0LambdaP)); - TVector3 YinJet =(JetCrossV0).Cross(JetP) ; + TVector3 YinJet = (JetCrossV0).Cross(JetP); TVector3 UnitXInJet = JetP.Unit(); TVector3 UnitYInJet = YinJet.Unit(); TVector3 UnitZInJet = JetCrossV0.Unit(); - TMatrixD matrixLabToJet(4,4); - - matrixLabToJet(0,0) = 1.12; - matrixLabToJet(0,1) = 0.0; - matrixLabToJet(0,2) = 0.0; - matrixLabToJet(0,3) = 0.0; - matrixLabToJet(1,0) = 0.0; - matrixLabToJet(1,1) = UnitXInJet*UnitX; - matrixLabToJet(1,2) = UnitXInJet*UnitY; - matrixLabToJet(1,3) = UnitXInJet*UnitZ; - matrixLabToJet(2,0) = 0.0; - matrixLabToJet(2,1) = UnitYInJet*UnitX; - matrixLabToJet(2,2) = UnitYInJet*UnitY; - matrixLabToJet(2,3) = UnitYInJet*UnitZ; - matrixLabToJet(3,0) = 0.0; - matrixLabToJet(3,1) = UnitZInJet*UnitX; - matrixLabToJet(3,2) = UnitZInJet*UnitY; - matrixLabToJet(3,3) = UnitZInJet*UnitZ; - + TMatrixD matrixLabToJet(4, 4); + + matrixLabToJet(0, 0) = 1.12; + matrixLabToJet(0, 1) = 0.0; + matrixLabToJet(0, 2) = 0.0; + matrixLabToJet(0, 3) = 0.0; + matrixLabToJet(1, 0) = 0.0; + matrixLabToJet(1, 1) = UnitXInJet * UnitX; + matrixLabToJet(1, 2) = UnitXInJet * UnitY; + matrixLabToJet(1, 3) = UnitXInJet * UnitZ; + matrixLabToJet(2, 0) = 0.0; + matrixLabToJet(2, 1) = UnitYInJet * UnitX; + matrixLabToJet(2, 2) = UnitYInJet * UnitY; + matrixLabToJet(2, 3) = UnitYInJet * UnitZ; + matrixLabToJet(3, 0) = 0.0; + matrixLabToJet(3, 1) = UnitZInJet * UnitX; + matrixLabToJet(3, 2) = UnitZInJet * UnitY; + matrixLabToJet(3, 3) = UnitZInJet * UnitZ; + return matrixLabToJet; -} + } int N = 0; int JetNumbers = 0; @@ -797,52 +792,42 @@ struct LfMyV0s { registry.fill(HIST("V0protonpyInLab"), candidate.v0protonpy()); registry.fill(HIST("V0protonpzInLab"), candidate.v0protonpz()); - double protonsinPhiInLab = candidate.v0protonpy()/sqrt(candidate.v0protonpx()*candidate.v0protonpx()+candidate.v0protonpy()*candidate.v0protonpy()); + double protonsinPhiInLab = candidate.v0protonpy() / sqrt(candidate.v0protonpx() * candidate.v0protonpx() + candidate.v0protonpy() * candidate.v0protonpy()); registry.fill(HIST("V0protonphiInLab"), protonsinPhiInLab); - - double PLambda = sqrt(candidate.v0px()*candidate.v0px()+candidate.v0py()*candidate.v0py()+candidate.v0pz()*candidate.v0pz()); - double ELambda = sqrt(candidate.v0Lambdamass()*candidate.v0Lambdamass()+PLambda*PLambda); - TMatrixD pLabV0(4,1); - pLabV0(0,0) = ELambda; - pLabV0(1,0) = candidate.v0px(); - pLabV0(2,0) = candidate.v0py(); - pLabV0(3,0) = candidate.v0pz(); - TMatrixD V0InV0(4,1); - V0InV0 = LorentzTransInV0frame(ELambda,candidate.v0px(),candidate.v0py(),candidate.v0pz()) *pLabV0; - registry.fill(HIST("V0pxInRest_frame"), V0InV0(1,0)); - registry.fill(HIST("V0pyInRest_frame"), V0InV0(2,0)); - registry.fill(HIST("V0pzInRest_frame"), V0InV0(3,0)); - - - + double PLambda = sqrt(candidate.v0px() * candidate.v0px() + candidate.v0py() * candidate.v0py() + candidate.v0pz() * candidate.v0pz()); + double ELambda = sqrt(candidate.v0Lambdamass() * candidate.v0Lambdamass() + PLambda * PLambda); + TMatrixD pLabV0(4, 1); + pLabV0(0, 0) = ELambda; + pLabV0(1, 0) = candidate.v0px(); + pLabV0(2, 0) = candidate.v0py(); + pLabV0(3, 0) = candidate.v0pz(); + TMatrixD V0InV0(4, 1); + V0InV0 = LorentzTransInV0frame(ELambda, candidate.v0px(), candidate.v0py(), candidate.v0pz()) * pLabV0; + registry.fill(HIST("V0pxInRest_frame"), V0InV0(1, 0)); + registry.fill(HIST("V0pyInRest_frame"), V0InV0(2, 0)); + registry.fill(HIST("V0pzInRest_frame"), V0InV0(3, 0)); } for (auto& candidate : myv0s) { - - - double PLambda = sqrt(candidate.v0px()*candidate.v0px()+candidate.v0py()*candidate.v0py()+candidate.v0pz()*candidate.v0pz()); - double ELambda = sqrt(candidate.v0Lambdamass()*candidate.v0Lambdamass()+PLambda*PLambda); - - TMatrixD pLabproton(4,1); - double protonE = sqrt(0.938*0.938+candidate.v0protonpx()*candidate.v0protonpx()+candidate.v0protonpy()*candidate.v0protonpy()+candidate.v0protonpz()*candidate.v0protonpz()); - pLabproton(0,0) = protonE; - pLabproton(1,0) = candidate.v0protonpx(); - pLabproton(2,0) = candidate.v0protonpy(); - pLabproton(3,0) = candidate.v0protonpz(); - TMatrixD protonInV0(4,1); - protonInV0 = LorentzTransInV0frame(ELambda,candidate.v0px(),candidate.v0py(),candidate.v0pz()) *pLabproton; - registry.fill(HIST("V0protonpxInRest_frame"), protonInV0(1,0)); - registry.fill(HIST("V0protonpyInRest_frame"), protonInV0(2,0)); - registry.fill(HIST("V0protonpzInRest_frame"), protonInV0(3,0)); - double protonsinPhiInV0frame = protonInV0(2,0)/sqrt(protonInV0(1,0)*protonInV0(1,0)+protonInV0(2,0)*protonInV0(2,0)); - registry.fill(HIST("V0protonphiInRest_frame"), protonsinPhiInV0frame); + double PLambda = sqrt(candidate.v0px() * candidate.v0px() + candidate.v0py() * candidate.v0py() + candidate.v0pz() * candidate.v0pz()); + double ELambda = sqrt(candidate.v0Lambdamass() * candidate.v0Lambdamass() + PLambda * PLambda); + + TMatrixD pLabproton(4, 1); + double protonE = sqrt(0.938 * 0.938 + candidate.v0protonpx() * candidate.v0protonpx() + candidate.v0protonpy() * candidate.v0protonpy() + candidate.v0protonpz() * candidate.v0protonpz()); + pLabproton(0, 0) = protonE; + pLabproton(1, 0) = candidate.v0protonpx(); + pLabproton(2, 0) = candidate.v0protonpy(); + pLabproton(3, 0) = candidate.v0protonpz(); + TMatrixD protonInV0(4, 1); + protonInV0 = LorentzTransInV0frame(ELambda, candidate.v0px(), candidate.v0py(), candidate.v0pz()) * pLabproton; + registry.fill(HIST("V0protonpxInRest_frame"), protonInV0(1, 0)); + registry.fill(HIST("V0protonpyInRest_frame"), protonInV0(2, 0)); + registry.fill(HIST("V0protonpzInRest_frame"), protonInV0(3, 0)); + double protonsinPhiInV0frame = protonInV0(2, 0) / sqrt(protonInV0(1, 0) * protonInV0(1, 0) + protonInV0(2, 0) * protonInV0(2, 0)); + registry.fill(HIST("V0protonphiInRest_frame"), protonsinPhiInV0frame); } - - - - for (auto& Jet : myJets) { JetNumbers++; registry.fill(HIST("JetpxInLab"), Jet.jetpx()); @@ -850,38 +835,35 @@ struct LfMyV0s { registry.fill(HIST("JetpzInLab"), Jet.jetpz()); registry.fill(HIST("JetpTInLab"), Jet.jetpt()); } - - - } PROCESS_SWITCH(LfMyV0s, processJetV0Analysis, "processJetV0Analysis", true); - //aod::MyTableJet + // aod::MyTableJet void processLeadingJetV0Analysis(aod::MyCollision const& collision, aod::MyTable const& myv0s, aod::MyTableLeadingJet const& myleadingJets) { int JetNumbers = 0; for (auto& candidate : myv0s) { for (auto& LeadingJet : myleadingJets) { - if(candidate.mycollisionv0() == LeadingJet.mycollisionleadingjet()){ - double PLambda = sqrt(candidate.v0px()*candidate.v0px()+candidate.v0py()*candidate.v0py()+candidate.v0pz()*candidate.v0pz()); - double ELambda = sqrt(candidate.v0Lambdamass()*candidate.v0Lambdamass()+PLambda*PLambda); - TMatrixD pLabproton(4,1); - double protonE = sqrt(massPr*massPr+candidate.v0protonpx()*candidate.v0protonpx()+candidate.v0protonpy()*candidate.v0protonpy()+candidate.v0protonpz()*candidate.v0protonpz()); - pLabproton(0,0) = protonE; - pLabproton(1,0) = candidate.v0protonpx(); - pLabproton(2,0) = candidate.v0protonpy(); - pLabproton(3,0) = candidate.v0protonpz(); - TMatrixD protonInJetV0(4,1); - protonInJetV0 = LorentzTransInV0frame(ELambda,candidate.v0px(),candidate.v0py(),candidate.v0pz())*MyTMatrixTranslationToJet(LeadingJet.leadingjetpx(),LeadingJet.leadingjetpy(),LeadingJet.leadingjetpz(),candidate.v0px(),candidate.v0py(),candidate.v0pz()) *pLabproton; - registry.fill(HIST("V0protonpxInJetV0frame"), protonInJetV0(1,0)); - registry.fill(HIST("V0protonpyInJetV0frame"), protonInJetV0(2,0)); - registry.fill(HIST("V0protonpzInJetV0frame"), protonInJetV0(3,0)); - - double protonsinPhiInJetV0frame = protonInJetV0(2,0)/sqrt(protonInJetV0(1,0)*protonInJetV0(1,0)+protonInJetV0(2,0)*protonInJetV0(2,0)); + if (candidate.mycollisionv0() == LeadingJet.mycollisionleadingjet()) { + double PLambda = sqrt(candidate.v0px() * candidate.v0px() + candidate.v0py() * candidate.v0py() + candidate.v0pz() * candidate.v0pz()); + double ELambda = sqrt(candidate.v0Lambdamass() * candidate.v0Lambdamass() + PLambda * PLambda); + TMatrixD pLabproton(4, 1); + double protonE = sqrt(massPr * massPr + candidate.v0protonpx() * candidate.v0protonpx() + candidate.v0protonpy() * candidate.v0protonpy() + candidate.v0protonpz() * candidate.v0protonpz()); + pLabproton(0, 0) = protonE; + pLabproton(1, 0) = candidate.v0protonpx(); + pLabproton(2, 0) = candidate.v0protonpy(); + pLabproton(3, 0) = candidate.v0protonpz(); + TMatrixD protonInJetV0(4, 1); + protonInJetV0 = LorentzTransInV0frame(ELambda, candidate.v0px(), candidate.v0py(), candidate.v0pz()) * MyTMatrixTranslationToJet(LeadingJet.leadingjetpx(), LeadingJet.leadingjetpy(), LeadingJet.leadingjetpz(), candidate.v0px(), candidate.v0py(), candidate.v0pz()) * pLabproton; + registry.fill(HIST("V0protonpxInJetV0frame"), protonInJetV0(1, 0)); + registry.fill(HIST("V0protonpyInJetV0frame"), protonInJetV0(2, 0)); + registry.fill(HIST("V0protonpzInJetV0frame"), protonInJetV0(3, 0)); + + double protonsinPhiInJetV0frame = protonInJetV0(2, 0) / sqrt(protonInJetV0(1, 0) * protonInJetV0(1, 0) + protonInJetV0(2, 0) * protonInJetV0(2, 0)); registry.fill(HIST("V0protonphiInJetV0frame"), protonsinPhiInJetV0frame); - registry.fill(HIST("hLambdamassandSinPhi"), candidate.v0Lambdamass(),protonsinPhiInJetV0frame); - registry.fill(HIST("profile"), candidate.v0Lambdamass(),protonsinPhiInJetV0frame); + registry.fill(HIST("hLambdamassandSinPhi"), candidate.v0Lambdamass(), protonsinPhiInJetV0frame); + registry.fill(HIST("profile"), candidate.v0Lambdamass(), protonsinPhiInJetV0frame); } } }