LCOV - code coverage report
Current view: top level - PYTHIA6/AliPythia6 - AliPythia6.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 1 11 9.1 %
Date: 2016-06-14 17:26:59 Functions: 1 30 3.3 %

          Line data    Source code
       1             : #ifndef ALIPYTHIA6_H
       2             : #define ALIPYTHIA6_H
       3             : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
       4             :  * See cxx source for full Copyright notice                               */
       5             : 
       6             : /* $Id: AliPythia.h,v 1.22 2007/10/09 08:43:24 morsch Exp $ */
       7             : 
       8             : #include <TPythia6.h>
       9             : #include "AliPythiaBase.h"
      10             : 
      11             : 
      12             : class AliFastGlauber;
      13             : class AliQuenchingWeights;
      14             : class AliStack;
      15             : 
      16             : class AliPythia6 : public TPythia6, public AliPythiaBase
      17             : {
      18             : 
      19             :  public:
      20           0 :     virtual ~AliPythia6(){;}
      21           0 :     virtual Int_t Version() {return (6);}
      22             :     // convert to compressed code and print result (for debugging only)
      23             :     virtual Int_t CheckedLuComp(Int_t kf);
      24             :     // Pythia initialisation for selected processes
      25             :     virtual void ProcInit
      26             :       (Process_t process, Float_t energy, StrucFunc_t strucfunc, Int_t tune);
      27           0 :     virtual void  GenerateEvent()   {Pyevnt();}
      28           0 :     virtual void  GenerateMIEvent() {Pyevnw();}
      29           0 :     virtual void  HadronizeEvent()  {Pyexec();}
      30           0 :     virtual Int_t GetNumberOfParticles() {return GetN();}
      31           0 :     virtual void  SetNumberOfParticles(Int_t i) {SetN(i);}
      32           0 :     virtual void  EditEventList(Int_t i) {Pyedit(i);}
      33             :     virtual void  PrintStatistics();
      34             :     virtual void  EventListing();    
      35           0 :     virtual Int_t GetParticles(TClonesArray *particles) {return ImportParticles(particles, "All");}
      36             :     // Treat protons as inside nuclei
      37             :     virtual void  SetNuclei(Int_t a1, Int_t a2);
      38             :     // Set colliding nuclei ("p","n",...)
      39           0 :     virtual void  SetCollisionSystem(TString projectile, TString target) { fProjectile = projectile; fTarget = target; }
      40             :     // Print particle properties
      41             :     virtual void PrintParticles();
      42             :     // Reset the decay table
      43             :     virtual void ResetDecayTable();
      44             :     //
      45             :     // Common Physics Configuration
      46             :     virtual void SetWeightPower(Double_t pow); // use pT,hard dependent weight instead of p_T,hard bins
      47             :     virtual void SetPtHardRange(Float_t ptmin, Float_t ptmax);
      48             :     virtual void SetYHardRange(Float_t ymin, Float_t ymax);
      49             :     virtual void SetFragmentation(Int_t flag);
      50             :     virtual void SetInitialAndFinalStateRadiation(Int_t flag1, Int_t flag2);
      51             :     virtual void SetIntrinsicKt(Float_t kt);
      52             :     virtual void SwitchHFOff();
      53             :     virtual void SetPycellParameters(Float_t etamax, Int_t neta, Int_t nphi,
      54             :                                      Float_t thresh, Float_t etseed, Float_t minet, Float_t r);
      55             :     virtual void ModifiedSplitting();
      56             :     virtual void SwitchHadronisationOff();
      57             :     virtual void SwitchHadronisationOn();
      58             :     //
      59             :     // Common Getters
      60             :     virtual void    GetXandQ(Float_t& x1, Float_t& x2, Float_t& q);
      61             :     virtual Float_t GetXSection();
      62             :     virtual Int_t   ProcessCode();
      63             :     virtual Float_t GetPtHard();
      64             :     virtual Int_t   GetNMPI();
      65             :     //
      66             :     //
      67             :     virtual void SetDecayTable();
      68             :     virtual void Pyevnw();
      69             :     virtual void Pyjoin(Int_t& npart, Int_t* ipart);
      70             :     virtual void Pycell(Int_t& nclus);
      71             :     virtual void Pyclus(Int_t& nclus);
      72             :     virtual void GetJet(Int_t i, Float_t& px, Float_t& py, Float_t& pz, Float_t& e);
      73             :     virtual void LoadEvent(AliStack* stack, Int_t flag, Int_t reHadr);
      74             :     virtual void Pyshow(Int_t ip1, Int_t ip2, Double_t qmax);
      75             :     virtual void Pyshowq(Int_t ip1, Int_t ip2, Double_t qmax);
      76             : 
      77             :     virtual void Pyrobo(Int_t imi, Int_t ima, Double_t the, Double_t phi, Double_t bex, Double_t bey, Double_t bez);
      78             :     virtual void InitQuenching(Float_t bmin, Float_t bmax, Float_t k, Int_t iECMethod, Float_t zmax = 0.97, Int_t ngmax = 30);
      79             :     virtual void SetPyquenParameters(Double_t t0, Double_t tau0, Int_t nf, Int_t iengl, Int_t iangl);
      80             :     virtual void Pyquen(Double_t a, Int_t ibf, Double_t b);
      81             :     virtual void Qpygin0();
      82             :     virtual void GetQuenchingParameters(Double_t& xp, Double_t& yp, Double_t z[4]);
      83             :     // return instance of the singleton
      84             :     static  AliPythia6* Instance();
      85             :     virtual void Quench();
      86             :     // Assignment Operator
      87             :     AliPythia6 & operator=(const AliPythia6 & rhs);
      88             :     void Copy(TObject&) const;
      89             :  protected:
      90             :     Process_t             fProcess;           // Process type
      91             :     Float_t               fEcms;              // Centre of mass energy
      92             :     StrucFunc_t           fStrucFunc;         // Structure function
      93             :     TString               fProjectile;        // Projectile
      94             :     TString               fTarget;            // Target
      95             :     Int_t                 fDefMDCY[501];      //  ! Default decay switches per particle
      96             :     Int_t                 fDefMDME[2001];     //  ! Default decay switches per mode
      97             :     Double_t              fZQuench[4];        //  ! Quenching fractions for this even
      98             :     Double_t              fXJet;              //  ! Jet production point X
      99             :     Double_t              fYJet;              //  ! Jet production point Y
     100             :     Int_t                 fNGmax;             //    Maximum number of radiated gluons in quenching
     101             :     Float_t               fZmax;              //    Maximum energy loss in quenching
     102             :     AliFastGlauber*       fGlauber;           //  ! The Glauber model
     103             :     AliQuenchingWeights*  fQuenchingWeights;  //  ! The Quenching Weights model
     104             :     static AliPythia6*    fgAliPythia;        //  Pointer to single instance
     105             :  private: 
     106             :     AliPythia6();
     107             :     AliPythia6(const AliPythia6& pythia);
     108             :     void ConfigHeavyFlavor();
     109             :     void AtlasTuning();
     110             :     void AtlasTuningMC09();
     111           2 :     ClassDef(AliPythia6,1) //ALICE UI to PYTHIA
     112             : };
     113             : 
     114             : #endif
     115             : 
     116             : 
     117             : 
     118             : 
     119             : 

Generated by: LCOV version 1.11