]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - FASTSIM/fastGen.C
add pt spectra histograms for different pile-up event definition
[u/mrichter/AliRoot.git] / FASTSIM / fastGen.C
index e68598298892fa4a98a17507d3a46bc79a329437..fb24662e850b98e2ad5efb8c90e4cd1a29016ace 100644 (file)
@@ -2,21 +2,28 @@ AliGenerator*  CreateGenerator();
 
 void fastGen(Int_t nev = 1, char* filename = "galice.root")
 {
-//
-//                        Construction
-//
-//  Output file
-    TFile*  file         = new TFile(filename, "recreate");
+//  Load libraries
+  gSystem->Load("liblhapdf.so");
+  gSystem->Load("libpythia6.so");
+  gSystem->Load("libEGPythia6.so");
+  gSystem->Load("libAliPythia6.so");
+
+//  Runloader
+    
+    AliRunLoader* rl = AliRunLoader::Open("galice.root","FASTRUN","recreate");
+    
+    rl->SetCompressionLevel(2);
+    rl->SetNumberOfEventsPerFile(nev);
+    rl->LoadKinematics("RECREATE");
+    rl->MakeTree("E");
+    gAlice->SetRunLoader(rl);
+
 //  Create stack
-    AliStack* stack      = new AliStack(10000);
-    stack->MakeTree(0, filename);
-
-//  Create Header
-    AliHeader* header    = new AliHeader();
-//  Create Header Tree
-    TTree* treeE         = new TTree("TE","Headers");
-    treeE->Branch("Header", "AliHeader", &header, 4000, 0);
-    treeE->Write();
+    rl->MakeStack();
+    AliStack* stack      = rl->Stack();
+//  Header
+    AliHeader* header = rl->GetHeader();
 //
 //  Create and Initialize Generator
     AliGenerator *gener = CreateGenerator();
@@ -34,9 +41,11 @@ void fastGen(Int_t nev = 1, char* filename = "galice.root")
        
 //  Initialize event
        header->Reset(0,iev);
+       rl->SetEventNumber(iev);
        stack->Reset();
-       stack->BeginEvent(iev);
-
+       rl->MakeTree("K");
+//     stack->ConnectTree();
+    
 //  Generate event
        gener->Generate();
 //  Analysis
@@ -55,21 +64,19 @@ void fastGen(Int_t nev = 1, char* filename = "galice.root")
 //     
        stack->FinishEvent();
        header->SetStack(stack);
-       treeE->Fill();
-       (stack->TreeK())->Write(0,TObject::kOverwrite);
+       rl->TreeE()->Fill();
+       rl->WriteKinematics("OVERWRITE");
+
     } // event loop
 //
 //                         Termination
 //  Generator
     gener->FinishRun();
-//  Header
-    treeE->Write(0,TObject::kOverwrite);
-    delete treeE;   treeE = 0;
-//  Stack
-    stack->FinishRun();
 //  Write file
+    rl->WriteHeader("OVERWRITE");
     gener->Write();
-    file->Write();
+    rl->Write();
+    
 }
 
 
@@ -81,7 +88,7 @@ AliGenerator*  CreateGenerator()
 //   vertex position and smearing 
     gener->SetVertexSmear(kPerEvent);
 //   structure function
-    gener->SetStrucFunc(kGRVHO);
+    gener->SetStrucFunc(kCTEQ6);
 //   charm, beauty, charm_unforced, beauty_unforced, jpsi, jpsi_chi, mb
     gener->SetProcess(kPyJets);
 //   Centre of mass energy