LHAPDF veraion 5.9.1
[u/mrichter/AliRoot.git] / ZDC / AliZDCFragment.h
CommitLineData
28e0901a 1#ifndef ALIZDCFRAGMENT_H
2#define ALIZDCFRAGMENT_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6
7////////////////////////////////////////////////////
8// //
9// Generate nuclear fragments parametrizing //
10// resuslts of SIS and SPS energies //
11// //
12////////////////////////////////////////////////////
13
14
15#include <TMath.h>
16
5a881c97 17extern int comp(const void *, const void *);
28e0901a 18
19class AliZDCFragment : public TNamed {
20
21public:
22 AliZDCFragment();
23 AliZDCFragment(Float_t b);
24 virtual ~AliZDCFragment() {}
92339a90 25 void GenerateIMF();
26 void AttachNeutrons();
3848c666 27 Float_t DeuteronNumber();
28e0901a 28
29 // Setting parameters
30 virtual void SetImpactParameter(Float_t b) {fB=b;};
31
32 // Getting parameters
92339a90 33 Float_t GetZbAverage() {return fZbAverage;}
34 Int_t GetFragmentNum() {return fNimf;}
35 Float_t GetZmax() {return fZmax;}
36 Int_t* GetZZ() {return (int*)fZZ;}
37 Int_t* GetNN() {return (int*)fNN;}
38 Int_t GetNalpha() {return fNalpha;}
39 Int_t GetZtot() {return fZtot;}
40 Int_t GetNtot() {return fNtot;}
28e0901a 41
42protected:
43
44 Float_t fB; // Impact parameter
92339a90 45 Float_t fZbAverage; // Mean value of Z bound
28e0901a 46 Int_t fNimf; // Number of IMF
47 Float_t fZmax; // Mean value of maximum Z of fragment
48 Float_t fTau; // Exponent of charge distribution: dN/dZ = Z*exp(-fTau)
49 Int_t fZZ[100]; // Array of atomic numbers of fragments
28e0901a 50 Int_t fNN[100]; // Array of number of neutrons of fragments
5a881c97 51 Int_t fNalpha; // Number of alpha particles
28e0901a 52 Int_t fZtot; // Total number of bound protons
53 Int_t fNtot; // Total number of bound neutrons
54
55
56 ClassDef(AliZDCFragment,1) // Generator for AliZDC fragment class
57};
58
59#endif