Printf commented out
[u/mrichter/AliRoot.git] / LHC / AliLhcBeam.h
CommitLineData
11141716 1#ifndef ALILHCBEAM_H
2#define ALILHCBAEM_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7#include <TNamed.h>
8#include "AliLhcMonitor.h"
9
10class AliLHC;
11
12class AliLhcBeam : public TNamed, public AliLhcMonitor
13{
14 public:
15 AliLhcBeam(AliLHC* lhc);
16 AliLhcBeam(const AliLhcBeam &beam);
17 virtual ~AliLhcBeam();
18
19 virtual void Init();
20
21 virtual Float_t N() {return fN;}
22 virtual Float_t A() {return fA;}
23 virtual Float_t Z() {return fZ;}
24 virtual Float_t Emittance() {return fEmittance;}
25 virtual Float_t Energy() {return fEnergy;}
26 virtual Float_t Gamma() {return fGamma;}
27 virtual Float_t LongEmittance() {return fEmittanceL;}
28 virtual Float_t EnergySpread() {return fEnergySpread;}
29
30 virtual void SetParticle(Float_t a, Float_t z) {fA = a; fZ = z;}
31 virtual void SetN(Float_t n) {fN = n;}
32 virtual void SetAccelerator(AliLHC* acc) {fAccelerator = acc;}
33 virtual void SetEnergy(Float_t e) {fEnergy = e;}
34 virtual void SetNEmittance(Float_t e) {fNEmittance = e;}
35 virtual void SetLongEmittance(Float_t e) {fEmittanceL = e;}
36 virtual void SetEnergySpread(Float_t b) {fEnergySpread = b;}
37
38 virtual void RemoveParticles(Float_t loss);
39 virtual void IncreaseEmittance(Float_t de, Float_t del);
40 virtual void SetMonitor(Int_t n);
41 virtual void Record();
42 virtual void DrawPlots();
43
44
45 AliLhcBeam & operator=(const AliLhcBeam & rhs);
46
47 protected:
48 AliLHC* fAccelerator; // Accelerator
49 Float_t fN; // Number of Particles
50 Float_t fN0; // Initial Number of Particles
51 Float_t fNEmittance; // Normalized Emittance
52 Float_t fEmittance; // Emittance
53 Float_t fEmittance0; // Initial Emittance
54 Float_t fEmittanceL; // Longitudinal Emittance
55 Float_t fEmittanceL0; // Longitudinal Emittance
56 Float_t fEnergySpread; // Energy Spread
57
58 Float_t fA; // Atomic Number
59 Float_t fZ; // Charge Number
60 Float_t fEnergy; // Energy
61 Float_t fGamma; // relativistic gamma
62 //
63 Float_t* fTimeArray; // [fNmax] Time array
64 Float_t* fEmittanceArray; // [fNmax] Emittance array
65 Float_t* fEmittanceLArray; // [fNmax] Long. Emittance array
66//
67 ClassDef(AliLhcBeam,1) // LHC Beam
68};
69
70#endif
71
72
73
74
75