]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - THijing/AliGenHijing.cxx
Use AliLog for messages
[u/mrichter/AliRoot.git] / THijing / AliGenHijing.cxx
index 31fe03d5a08654b906187152f3d791c5bf3506ee..645b05da9ed20883250541ff1719bd33d688d7cc 100644 (file)
@@ -31,8 +31,9 @@
 
 #include "AliGenHijing.h"
 #include "AliGenHijingEventHeader.h"
-#include "AliRun.h"
 #include "AliHijingRndm.h"
+#include "AliLog.h"
+#include "AliRun.h"
 
 ClassImp(AliGenHijing)
 
@@ -49,7 +50,6 @@ AliGenHijing::AliGenHijing()
      fEvaluate(0),
      fSelectAll(0),
      fFlavor(0),
-     fEnergyCMS(5500.),
      fKineBias(0.),
      fTrials(0),
      fXsection(0.),
@@ -75,9 +75,9 @@ AliGenHijing::AliGenHijing()
      fRandomPz(kFALSE),
      fNoHeavyQuarks(kFALSE)
 {
-// Constructor
-    fParticles = 0;
-    AliHijingRndm::SetHijingRandom(GetRandom());
+  // Constructor
+  fEnergyCMS = 5500.;
+  AliHijingRndm::SetHijingRandom(GetRandom());
 }
 
 AliGenHijing::AliGenHijing(Int_t npart)
@@ -93,7 +93,6 @@ AliGenHijing::AliGenHijing(Int_t npart)
      fEvaluate(0),
      fSelectAll(0),
      fFlavor(0),
-     fEnergyCMS(5500.),
      fKineBias(0.),
      fTrials(0),
      fXsection(0.),
@@ -121,10 +120,10 @@ AliGenHijing::AliGenHijing(Int_t npart)
 {
 // Default PbPb collisions at 5. 5 TeV
 //
+    fEnergyCMS = 5500.;
     fName = "Hijing";
     fTitle= "Particle Generator using HIJING";
 //
-    fParticles = new TClonesArray("TParticle",10000);    
 //
 // Set random number generator   
     AliHijingRndm::SetHijingRandom(GetRandom());
@@ -135,7 +134,6 @@ AliGenHijing::~AliGenHijing()
 // Destructor
     if ( fDsigmaDb) delete  fDsigmaDb;  
     if ( fDnDb)     delete  fDnDb;  
-    delete fParticles;
 }
 
 void AliGenHijing::Init()
@@ -252,15 +250,14 @@ void AliGenHijing::Generate()
       fHijing->GenerateEvent();
       fTrials++;
       fNprimaries = 0;
-      fHijing->ImportParticles(fParticles,"All");
+      fHijing->ImportParticles(&fParticles,"All");
       if (fTrigger != kNoTrigger) {
          if (!CheckTrigger()) continue;
       }
       if (fLHC) Boost();
       
       
-      Int_t np = fParticles->GetEntriesFast();
-      printf("\n **************************************************%d\n",np);
+      Int_t np = fParticles.GetEntriesFast();
       Int_t nc = 0;
       if (np == 0 ) continue;
       Int_t i;
@@ -274,7 +271,7 @@ void AliGenHijing::Generate()
       
 //      Get event vertex
 //
-      TParticle *  iparticle = (TParticle *) fParticles->At(0);
+      TParticle *  iparticle = (TParticle *) fParticles.At(0);
       fVertex[0] = origin0[0];
       fVertex[1] = origin0[1]; 
       fVertex[2] = origin0[2];
@@ -284,7 +281,7 @@ void AliGenHijing::Generate()
 //
 
       for (i = 0; i < np; i++) {
-         iparticle = (TParticle *) fParticles->At(i);
+         iparticle = (TParticle *) fParticles.At(i);
 
 // Is this a parent particle ?
          if (Stable(iparticle)) continue;
@@ -314,7 +311,7 @@ void AliGenHijing::Generate()
 //
 
       for (i = 0; i<np; i++) {
-         TParticle *  iparticle = (TParticle *) fParticles->At(i);
+         iparticle = (TParticle *) fParticles.At(i);
 // Is this a final state particle ?
          if (!Stable(iparticle)) continue;
       
@@ -358,7 +355,7 @@ void AliGenHijing::Generate()
 // Write particles to stack
 
       for (i = 0; i<np; i++) {
-         TParticle *  iparticle = (TParticle *) fParticles->At(i);
+         iparticle = (TParticle *) fParticles.At(i);
          Bool_t  hasMother   = (iparticle->GetFirstMother()     >=0);
          Bool_t  hasDaughter = (iparticle->GetFirstDaughter()   >=0);
          if (pSelected[i]) {
@@ -370,14 +367,15 @@ void AliGenHijing::Generate()
              origin[0] = origin0[0]+iparticle->Vx()/10;
              origin[1] = origin0[1]+iparticle->Vy()/10;
              origin[2] = origin0[2]+iparticle->Vz()/10;
-             tof = kconv * iparticle->T() + sign * origin0[2] / 3.e10;
+//           tof = kconv * iparticle->T() + sign * origin0[2] / 3.e10;
+             tof = kconv * iparticle->T();
              if (fPileUpTimeWindow > 0.) tof += tInt;
              
              imo = -1;
              TParticle* mother = 0;
              if (hasMother) {
                  imo = iparticle->GetFirstMother();
-                 mother = (TParticle *) fParticles->At(imo);
+                 mother = (TParticle *) fParticles.At(imo);
                  imo = (mother->GetPdgCode() != 92) ? newPos[imo] : -1;
              } // if has mother   
              Bool_t tFlag = (fTrackIt && !hasDaughter);
@@ -390,12 +388,12 @@ void AliGenHijing::Generate()
       delete[] newPos;
       delete[] pSelected;
       
-      printf("\n I've put %i particles on the stack \n",nc);
+      AliInfo(Form("\n I've put %i particles on the stack \n",nc));
       if (nc > 0) {
          jev += nc;
          if (jev >= fNpart || fNpart == -1) {
              fKineBias = Float_t(fNpart)/Float_t(fTrials);
-             printf("\n Trials: %i %i %i\n",fTrials, fNpart, jev);
+             AliInfo(Form("\n Trials: %i %i %i\n",fTrials, fNpart, jev));
              break;
          }
       }
@@ -490,7 +488,7 @@ Bool_t AliGenHijing::DaughtersSelection(TParticle* iparticle)
        imin = iparticle->GetFirstDaughter();
        imax = iparticle->GetLastDaughter();       
        for (i = imin; i <= imax; i++){
-           TParticle *  jparticle = (TParticle *) fParticles->At(i);   
+           TParticle *  jparticle = (TParticle *) fParticles.At(i);    
            Int_t ip = jparticle->GetPdgCode();
            if (KinematicSelection(jparticle,0)&&SelectFlavor(ip)) {
                selected=kTRUE; break;
@@ -629,9 +627,9 @@ Bool_t AliGenHijing::CheckTrigger()
     } else if (fTrigger == 2) {
 //  Gamma Jet
 //
-       Int_t np = fParticles->GetEntriesFast();
+       Int_t np = fParticles.GetEntriesFast();
        for (Int_t i = 0; i < np; i++) {
-           TParticle* part = (TParticle*) fParticles->At(i);
+           TParticle* part = (TParticle*) fParticles.At(i);
            Int_t kf = part->GetPdgCode();
            Int_t ksp = part->GetUniqueID();
            if (kf == 22 && ksp == 40) {