* provided "as is" without express or implied warranty. *
**************************************************************************/
-/*
-$Log$
-Revision 1.2 2001/08/30 09:48:12 hristov
-The operator[] is replaced by At() or AddAt() in case of TObjArray.
+/* $Id$ */
-Revision 1.1 2001/07/25 17:28:32 morsch
-LHC related code. First commit.
+//
+// Class for a simple description of the LHC.
+// The LHC is described by two beams,
+// the interaction regions and the
+// beam loss processes.
+// Run paramters can be set in order to simulate the time evolution
+// of emittance, number of particles per bunch and luminosity.
+// Author: Andreas Morsch
+// andreas.morsch@cern.ch
-*/
#include "AliLHC.h"
#include "AliLhcIRegion.h"
#include "AliLhcProcess.h"
ClassImp(AliLHC)
-AliLHC::AliLHC()
+
+AliLHC::AliLHC():
+ fNRegions(0),
+ fNProcesses(0),
+ fIRegions(new TList()),
+ fProcesses(new TList()),
+ fBeams(new TObjArray(2)),
+ fRadius(0.),
+ fAverageBeta(0.),
+ fAverageDisp(0.),
+ fNt(0),
+ fNmax(0),
+ fTime(0.),
+ fTimeA(0),
+ fTimeStep(0.),
+ fTimeMax(0.),
+ fFillingTime(0.),
+ fSetUpTime(0.)
{
// Constructor
- fIRegions = new TList;
- fProcesses = new TList;
- fNRegions = 0;
- fNProcesses = 0;
- fBeams = new TObjArray(2);
- //PH (*fBeams)[0] = 0;
- //PH (*fBeams)[1] = 0;
fBeams->AddAt(0,0);
fBeams->AddAt(0,1);
- fTime = 0;
- fTimeMax = 0;
- fTimeA = 0;
}
-AliLHC::AliLHC(const AliLHC& lhc)
+AliLHC::AliLHC(const AliLHC& lhc):
+ TObject(lhc),
+ fNRegions(0),
+ fNProcesses(0),
+ fIRegions(0),
+ fProcesses(0),
+ fBeams(0),
+ fRadius(0.),
+ fAverageBeta(0.),
+ fAverageDisp(0.),
+ fNt(0),
+ fNmax(0),
+ fTime(0.),
+ fTimeA(0),
+ fTimeStep(0.),
+ fTimeMax(0.),
+ fFillingTime(0.),
+ fSetUpTime(0.)
{
-// copy constructor
+// Copy constructor
}
AliLHC::~AliLHC()
//
// Loop over generators and initialize
while((region = (AliLhcIRegion*)nextregion())) {
- region->Draw();
+ region->DrawPlots();
}
TIter next(fProcesses);
//
// Evolve for each process
while((process = (AliLhcProcess*)next())) {
- process->Draw();
+ process->DrawPlots();
}
- Beam(0)->Draw();
+ Beam(0)->DrawPlots();
}
-AliLHC& AliLHC::operator=(const AliLHC & rhs)
+AliLHC& AliLHC::operator=(const AliLHC & /*rhs*/)
{
// Assignment operator
return *this;