1 / 24

Status of A.L.I.C.E. Simulation

Status of A.L.I.C.E. Simulation. 25/11/2003 @ NIKHEF ! by Emanuele Simili. Summary. What I’m doing here . And why. What is AliRoot. Generators & “virtual events”. Some plots & results. Impact Parameter & Reaction Plane. Flow & Fourier Analysis. Next steps ….

luka
Download Presentation

Status of A.L.I.C.E. Simulation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Status of A.L.I.C.E. Simulation 25/11/2003 @ NIKHEF ! by Emanuele Simili

  2. Summary • What I’m doing here . And why . • What is AliRoot . • Generators & “virtual events” . • Some plots & results . • Impact Parameter& Reaction Plane . • Flow & Fourier Analysis . • Next steps …

  3. Basic Idea The basic idea of my PhD is to studyFlowfrom high energy heavy ion collision in the next to comeA.L.I.C.E.experiment (Au+Au ~5.5 TeV) . • What’s Flow: Particle squeeze out from the collision region with a non-spherical momenta distribution . • Why Flow: Flow gives us informations about the Thermo-Dynamical state in the collision region . EQUATION OF STATE

  4. Virtual Detectors (Geometry, Material, etc…) Virtual Interactions & Hits (Geant3, etc…) Virtual Reconstruction & Tracking (macros) How to … Up to 2007 (whenA.L.I.C.E.experiment is planned to start atLHC) our study is limited to MC simulations . In A.L.I.C.E.the simulation has gone so far that the entire experiment is “stored” in ~180 Mb of C++ code : Monte Carlo generators (Pythia, GeVSim, etc…) AliRoot …that’s all we need to build Virtual Datas + Well known ROOT’s analysis tools (& more…) ! constantly under development !

  5. AliRoot Configuration AliRoot (as Root) is entirely based on C++ : • Functions, Macros and Commands must follow the standard C++ sintax (Cint) . • The event generation is handled via a configuration file (that is also a C++ script) . Initialize Geant3 Initialize Pythia Initialize the Generator * Config.C Switch on/off detectors and mag. field Set detectors parameters . . .

  6. Generators & GeVSim AliRoot can generate events using different kind of particle generators . We can choose the one that best fits our needs : • Hijing : p-p collision (Pythia) +Glauber model . • Shaker : random phase space distribution . • GeVSim : user defined PT, Y, Φ distributions . * • Other external generators … GeVSim Best to study Flow : GeVSim (by S.Radomski) is the evolution, up to A.L.I.C.E. energies, of the MeVSim generator used in S.T.A.R. .

  7. Why GeVSim (1) Particles’ Flowis a fenomenon not completly understood microscopically (i.e.from basic principles). It means that we do not have a theoretical model to simulate Flow during the collision . Flowmust be added externally to simulated datas! …and GeVSim does it . boost

  8. Why GeVSim (2) Possibility to generate arbitrary distribution of the physical variables, particle type, etc . 4 different analytical d2N/dPTdY distribution (built from four different expansion model of a thermal source), or user-defined ones . For more information see : http://radomski.home.cern.ch/radomski …yes, this is MapleV running under Windows98, under VMware, under Linux RH7.2 .

  9. GeVSim Configuration … AliGenGeVSim *gener = new AliGenGeVSim(0); // 0 = reaction plane angle AliGeVSimParticle *piPlus = new AliGeVSimParticle(kPiPlus, 2, 100, 0.18) ; AliGeVSimParticle *piMinus = new AliGeVSimParticle(kPiMinus, 2, 100, 0.18) ; // AliGeVSimParticle *KPlus = new AliGeVSimParticle(kKPlus, 2, 500, 0.16) ; // AliGeVSimParticle *KMinus = new AliGeVSimParticle(kKMinus, 2, 500, 0.16) ; piPlus->SetEllipticSimple(0.12) ; gener->AddParticleType(piPlus) ; piMinus->SetEllipticSimple(0.12) ; gener->AddParticleType(piMinus) ; gener->SetMomentumRange(0., 999.) ; gener->SetPtRange(0., 10.) ; gener->SetPhiRange(0, 360) ; gener->SetOrigin(0, 0, 0) ; // vertex position gener->SetYRange(-4, 4) ; … gener->SetTrackingFlag(0); // no transport gener->Init(); … Constructor Particle types Boost (Flow) Physical limits & Settings Config.C Initialization …but (warning!) : GeVSim does NOT simulate Real Physics !

  10. Example of Event (the Event Display) Some thousands of π, no flow .

  11. Event Structure This is the output filegAlice.root Kinematics (produced particles) Detectors Parameters each version of each detector requires his own TTree of hits TTree Hits for each detector

  12. Event Reconstruction Each detector involved in the event (i.e. switched on in Config.C) requires it’s own external reconstruction routines ( ! ) . The path is : FromgAlice.root TTreeH (hits) digits clusters tracks The output of each detector is a TTree containing the reconstructed Tracks as C++ objects… …of a different Class for each detector . TPC(the only one I use at the moment) : Class AliTPCtrack .

  13. Angular Distributions (No Flow) MC TPC 10.000 π , GeVSim model 2 , T=0.18, Ev.Plane=0° , elliptic simple=0 .

  14. Angular Distributions (Elliptic Flow) MC TPC 10.000 π , GeVSim model 1 , T=0.18 , σ=0.6 , Ev.Plane=0° , elliptic simple=0.2 .

  15. Pt-Y Distributions 10.000 π , GeVSim model 2 , T=0.18 .

  16. (Transverse) Momentum Spectra MC 1/MT dN/dMT dN/dP dN/dPT 1/PT dN/dPT dN/dMT TPC 10.000 π , GeVSim model 1 , T=0.18 , σ=0.6 .

  17. Fits (p1 ~ T = 0.18 GeV) MC slope ~ -1/T = 5.555 TPC …fit functions… …rapidity win… 10.000 π , GeVSim model 2 , T=0.18 .

  18. y x y x z z Reaction Plane b LHC = z b (distance between nuclei centers) is a vector in the xy-plane b b and the z-axis define the : Reaction Plane Pdistribution is approximately symmetric with respect to the Reaction Plane .

  19. y x Plane angle calculation There are a lot of different methods to find out Φ : the angle of vector b . b Φ I mostly use 3 (4) of them, event by event : #1Kinetic Sphericity Tensor : …direction of b = eigenvector with the greatest eigenvalue . #2Transverse Momentum Analysis : …direction of b = direction of Q . #3Azimuthal Correlation : …angle of b = parameter a that minimizes the function D2 . (#4)First Fourier Angle : …ψ1 should be Φ± π…

  20. Implementation // #2 Transverse Momentum Analysis -------------------------------------- Double_t TrMan(TTree* TT, Bool_t ptrl=0) { TVector Q(2) ; TParticle* tp ; ... for(Int_t vv=0; vv<numerodientries; vv++) { TT->GetEntry(vv) ; w = (tp->Pz())/((fabs(tp->Pz()))*(tp->Pt())) ; Q[0] += w*(tp->Px()) ; Q[1] += w*(tp->Py()) ; } Rangle = atan2(Q[1],Q[0]) ; return Rangle ; } // #1 Kinetic Sphericity Tensor ----------------------------------------- Double_t KSphT(TTree* TT, Bool_t ptrl=0) { TMatrix F(3,3) ; TParticle* tp ; ... for(Int_t vv=0; vv<numerodientries; vv++) { TT->GetEntry(vv) ; if(CutP(tp)) { P[0] = tp->Px() ; P[1] = tp->Py() ; P[2] = tp->Pz() ; mass = tp->GetCalcMass() ; for(Int_t ii=0; ii<3; ii++) { for(Int_t jj=0; jj<3; jj++) { F(ii,jj) += (P[ii] * P[jj]) / (2 * mass) ; } } } } eigenv = F->EigenVectors(eigvals) ; TVector v1= TMatrixColumn(eigenv,0) ; Rangle = atan2(v1[2],v1[1]) ; return Rangle ; } #1 #2 // #3 Azimuthal Correlation -------------------------------------------- Double_t AzCorr(TTree* TT, Bool_t ptrl=0) { Double_t Parametro[2] ; TVector P(2) ; TParticle* tp ; ... for(Int_t vv=0; vv<numerodientries; vv++) { TT->GetEntry(vv) ; P[0] = tp->Px() ; P[1] = tp->Py() ; sx += P[0]*P[0] ; sy += P[1]*P[1] ; sxy += P[0]*P[1] ; } Parametro[0] = 1/2*(sy -sx +sqrt(sx*sx -2*sx*sy +sy*sy +4*sxy*sxy)) / sxy ; Parametro[1] = 1/2*(sy -sx -sqrt(sx*sx -2*sx*sy +sy*sy +4*sxy*sxy)) / sxy ; a = Parametro[0] ; Double_t D20 = sx = sy - (sx + a*sy + a*sxy)/(1-a*a) ; a = Parametro[1] ; Double_t D21 = sx = sy - (sx + a*sy + a*sxy)/(1-a*a) ; ... if(D20>D21) { a = Parametro[1] ; } else { a = Parametro[0] ; } return a ; } #3 For reconstructed tracks, TParticle* becomes AliTPCtrack* .

  21. #1 #1 #2 #2 Ok! Ok! ~ ~ #3 #3 #4 #4 under development under development wrong! wrong! Results (MC only) Reaction Plane fixed (0°) Reaction Plane rotating (0°→360°) …but I work out .

  22. Fourier Analysis Since the distribution dpT(Φ)/dΦis a periodical funcion, it can be written in the form of fourier expansion : Where the Fourier Coefficient (xn , yn) are integrals of dpT(Φ)/dΦweighted by cos(nΦ) & sin(nΦ)respectively . From datas we can estrapolate (event by event) : …in polar cords : There’s Flow if V2 ≠ 0 .

  23. Fourier Routine & Results ψ1‘s values distribution over 100 events // Fourier analysis ----------------------------------------------------- TVector FourCoff(TTree* TT, Int_t N, Double_t RapWin=.9) { Double_t pT, Y, phi ; TParticle* tp ; … for(Int_t vv=0;vv<numerodientries;vv++) { TT->GetEntry(vv) ; if(CutP(tp)) { pT = tp->Pt() ; phi = tp->Phi() ; Y = Ycalc(tp) ; XX += pT*cos(N*phi) ; YY += pT*sin(N*phi) ; } } VPsi[0] = sqrt(XX*XX + YY*YY) ; VPsi[1] = atan2(YY,XX) ; return VPsi ; } // ----------------------------------------------------------------------) Wrong !?! Should be a gaussian centered on 0° (angle of the reaction plane) . ψi evolution (i=0..4) over the same set of 100 events… ! Should be exactly 0°, it is! Should fluctuate around 0° . . . .

  24. Going On … • Fix GeVSim’s details about PT distribution and Slope Parameter (Radomski is coming from Germany…) . • Develop & debug the Fourier Analysis routines (…or grab them somewere else) . • Start with the “Cumulants Method” . • …and, of course, hope for a more stable release of AliRoot ! to be continued…

More Related