X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=EVGEN%2FAliGenHalo.cxx;h=8fb4b372aa9cada1233382067c3f82def2d9a6b7;hb=dac6c6759099d1a55c6836f66ae2afda197c5288;hp=4541a034a1cb170f11a888ea24598d37f7705f47;hpb=1578254f491848aff213be55a70a61d195dd001a;p=u%2Fmrichter%2FAliRoot.git diff --git a/EVGEN/AliGenHalo.cxx b/EVGEN/AliGenHalo.cxx index 4541a034a1c..8fb4b372aa9 100644 --- a/EVGEN/AliGenHalo.cxx +++ b/EVGEN/AliGenHalo.cxx @@ -1,62 +1,87 @@ +/************************************************************************** + * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * + * * + * Author: The ALICE Off-line Project. * + * Contributors are mentioned in the code where appropriate. * + * * + * Permission to use, copy, modify and distribute this software and its * + * documentation strictly for non-commercial purposes is hereby granted * + * without fee, provided that the above copyright notice appears in all * + * copies and that both the copyright notice and this permission notice * + * appear in the supporting documentation. The authors make no claims * + * about the suitability of this software for any purpose. It is * + * provided "as is" without express or implied warranty. * + **************************************************************************/ + +/* $Id$ */ + +// Read background particles from a boundary source +// Very specialized generator to simulate background from beam halo. +// The input file is a text file specially prepared +// for this purpose. +// Author: andreas.morsch@cern.ch + +#include + +#include +#include + #include "AliGenHalo.h" -#include "AliGenMUONlib.h" -#include "AliMC.h" #include "AliRun.h" -#include "AliConst.h" -#include -#include -#include -#include -#include - ClassImp(AliGenHalo) - AliGenHalo::AliGenHalo() - :AliGenerator(-1) + +ClassImp(AliGenHalo) + +AliGenHalo::AliGenHalo() + :AliGenerator(-1), + fp(0), + fFileName(0) { +// Constructor fName="Halo"; fTitle="Halo from LHC Tunnel"; - // Set the default file - fFileName="~/marsip/marsip5.mu"; // // Read all particles fNpart=-1; - fp=0; } AliGenHalo::AliGenHalo(Int_t npart) - :AliGenerator(npart) + :AliGenerator(npart), + fp(0), + fFileName(0) { +// Constructor fName="Halo"; fTitle="Halo from LHC Tunnel"; - // Set the default file - fFileName="~/marsip/marsip5.mu"; // // Read all particles fNpart=-1; - fp=0; } //____________________________________________________________ AliGenHalo::~AliGenHalo() { +// Destructor } //____________________________________________________________ void AliGenHalo::Init() -{} +{ +// Initialisation +} //____________________________________________________________ void AliGenHalo::Generate() { - FILE *fp = fopen(fFileName,"r"); +// Generate from input file + fp = fopen(fFileName,"r"); if (fp) { - printf("\n File %s opened for reading ! \n ", fFileName); + printf("\n File %s opened for reading ! \n ", (char*) &fFileName); } else { - printf("\n Opening of file %s failed ! \n ", fFileName); + printf("\n Opening of file %s failed ! \n ", (char*) &fFileName); } // // MARS particle codes - // const Int_t imars[12]={0,14, 13, 8, 9, 11, 12, 5, 6, 1, 3, 2}; - const Int_t imars[12]={0,kProton,kNeutron,kPiPlus,kPiMinus,kKPlus,kKMinus, + const Int_t kmars[12]={0,kProton,kNeutron,kPiPlus,kPiMinus,kKPlus,kKMinus, kMuonPlus,kMuonMinus,kGamma,kElectron,kPositron}; Float_t polar[3]= {0,0,0}; @@ -78,7 +103,7 @@ void AliGenHalo::Generate() if (ncols < 0) break; nread++; if (fNpart !=-1 && nread > fNpart) break; - ipart = imars[ipart]; + ipart = kmars[ipart]; amass = TDatabasePDG::Instance()->GetParticle(ipart)->Mass(); p0=sqrt(ekin*ekin + 2.*amass); @@ -92,10 +117,12 @@ void AliGenHalo::Generate() p[1]=p0*ty; p[2]=p0*tz; fParentWeight=wgt; - gAlice->SetTrack(1,-1,ipart,p,origin,polar,0,"Halo+",nt,fParentWeight); + PushTrack(fTrackIt,-1,ipart,p,origin,polar,0,kPNoProcess,nt,fParentWeight); +// PushTrack(fTrackIt,-1,ipart,p,origin,polar,0,"Halo+",nt,fParentWeight); origin[2]=-origin[2]; p[2]=-p[2]; - gAlice->SetTrack(1,-1,ipart,p,origin,polar,0,"Halo-",nt,fParentWeight); + PushTrack(fTrackIt,-1,ipart,p,origin,polar,0,kPNoProcess,nt,fParentWeight); +// PushTrack(fTrackIt,-1,ipart,p,origin,polar,0,"Halo-",nt,fParentWeight); origin[2]=-origin[2]; p[2]=-p[2]; } @@ -108,4 +135,3 @@ void AliGenHalo::Generate() -