/*
$Log$
+Revision 1.36 2002/02/08 16:50:50 morsch
+Add name and title in constructor.
+
Revision 1.35 2002/01/21 10:02:40 morsch
ty is Double_t
Abort if too high rapidity causes numerical paroblem. User has to specify
*/
+
+
+// Class to generate particles from using paramtrized pT and y distributions.
+// Distributions are obtained from pointer to object of type AliGenLib.
+// (For example AliGenMUONlib)
+// Decays are performed using Pythia.
+// andreas.morsch@cern.ch
+
#include "AliGenParam.h"
#include "AliDecayerPythia.h"
#include "AliGenMUONlib.h"
}
-AliGenParam::AliGenParam(const AliGenParam & Paramd)
+AliGenParam::AliGenParam(const AliGenParam & Param)
{
// copy constructor
+ Param.Copy(*this);
}
//____________________________________________________________
/*
$Log$
+Revision 1.54 2002/03/28 11:49:10 morsch
+Pass status code in SetTrack.
+
Revision 1.53 2002/03/25 14:51:13 morsch
New stack-fill and count options introduced (N. Carrer).
Introduction of the Copyright and cvs Log
*/
+//
+// Generator using the TPythia interface (via AliPythia)
+// to generate pp collisions.
+// Using SetNuclei() also nuclear modifications to the structure functions
+// can be taken into account. This makes, of course, only sense for the
+// generation of the products of hard processes (heavy flavor, jets ...)
+//
+// andreas.morsch@cern.ch
+//
+
+
#include "AliGenPythia.h"
#include "AliGenPythiaEventHeader.h"
#include "AliDecayerPythia.h"
AliGenPythia::AliGenPythia(const AliGenPythia & Pythia)
{
// copy constructor
+ Pythia.Copy(*this);
}
AliGenPythia::~AliGenPythia()
}
-void AliGenPythia::MakeHeader()
+void AliGenPythia::MakeHeader() const
{
// Builds the event header, to be called after each event
AliGenEventHeader* header = new AliGenPythiaEventHeader("Pythia");
/* $Id$ */
+//
+// Generator using the TPythia interface (via AliPythia)
+// to generate pp collisions.
+// Using SetNuclei() also nuclear modifications to the structure functions
+// can be taken into account. This makes, of course, only sense for the
+// generation of the products of hard processes (heavy flavor, jets ...)
+//
+// andreas.morsch@cern.ch
+//
#include "AliGenMC.h"
#include "AliPythia.h"
// select process type
virtual void SetProcess(Process_t proc = kPyCharm) {fProcess = proc;}
// select structure function
- virtual void SetStrucFunc(StrucFunc_t func = kGRV_HO) {fStrucFunc = func;}
+ virtual void SetStrucFunc(StrucFunc_t func = kGRVHO) {fStrucFunc = func;}
// select pt of hard scattering
virtual void SetPtHard(Float_t ptmin = 0, Float_t ptmax = 1.e10)
{fPtHardMin = ptmin; fPtHardMax = ptmax; }
// Assignment Operator
AliGenPythia & operator=(const AliGenPythia & rhs);
- private:
- Int_t GenerateMB();
- virtual void MakeHeader();
protected:
+ // adjust the weight from kinematic cuts
+ void AdjustWeights();
+ Int_t GenerateMB();
+ void MakeHeader() const;
+
TClonesArray* fParticles; //Particle List
Process_t fProcess; //Process type
AliDecayer *fDecayer; //!Pointer to the decayer instance
Int_t fDebugEventFirst; //!First event to debug
Int_t fDebugEventLast; //!Last event to debug
- Float_t fEtaMinJet; // Minimum eta of triggered Jet
- Float_t fEtaMaxJet; // Maximum eta of triggered Jet
- Float_t fPhiMinJet; // Minimum phi of triggered Jet
- Float_t fPhiMaxJet; // Maximum phi of triggered Jet
+ Float_t fEtaMinJet; //Minimum eta of triggered Jet
+ Float_t fEtaMaxJet; //Maximum eta of triggered Jet
+ Float_t fPhiMinJet; //Minimum phi of triggered Jet
+ Float_t fPhiMaxJet; //Maximum phi of triggered Jet
- Float_t fEtaMinGamma; // Minimum eta of triggered gamma
- Float_t fEtaMaxGamma; // Maximum eta of triggered gamma
- Float_t fPhiMinGamma; // Minimum phi of triggered gamma
- Float_t fPhiMaxGamma; // Maximum phi of triggered gamma
+ Float_t fEtaMinGamma; // Minimum eta of triggered gamma
+ Float_t fEtaMaxGamma; // Maximum eta of triggered gamma
+ Float_t fPhiMinGamma; // Minimum phi of triggered gamma
+ Float_t fPhiMaxGamma; // Maximum phi of triggered gamma
StackFillOpt_t fStackFillOpt; // Stack filling with all particles with
// that flavour or only with selected
// fCountMode = kCountParents --> Only selected parents are counted
// fCountMode = kCountTrackabless --> Only particles flagged for tracking
// are counted
-
- private:
- // adjust the weight from kinematic cuts
- void AdjustWeights();
+ //
ClassDef(AliGenPythia,2) // AliGenerator interface to Pythia
+
};
#endif