* provided "as is" without express or implied warranty. *
**************************************************************************/
+
+// ******************************************************************
+//
+// Class for nuclear fragments formation
+//
+// ******************************************************************
+
// --- Standard libraries
#include <stdlib.h>
//_____________________________________________________________________________
-AliZDCFragment::AliZDCFragment()
+AliZDCFragment::AliZDCFragment():
+ fB(0),
+ fZbAverage(0),
+ fNimf(0),
+ fZmax(0),
+ fTau(0),
+ fNalpha(0),
+ fZtot(0),
+ fNtot(0)
{
//
// Default constructor
//
- fB = 0;
}
//_____________________________________________________________________________
-AliZDCFragment::AliZDCFragment(Float_t b)
- : TNamed(" "," ")
+AliZDCFragment::AliZDCFragment(Float_t b):
+ TNamed(" "," "),
+ fB(b),
+ fZbAverage(0),
+ fNimf(0),
+ fZmax(0),
+ fTau(0),
+ fNalpha(0),
+ fZtot(0),
+ fNtot(0)
{
//
// Standard constructor
//
- fB = b;
- fZbAverage = 0;
- fNimf = 0;
- fZmax = 0;
- fTau = 0;
for(Int_t i=0; i<=99; i++){
fZZ[i] = 0;
fNN[i] = 0;
}
- fNalpha = 0;
- fZtot = 0;
- fNtot = 0;
}
//_____________________________________________________________________________
-void AliZDCFragment::GenerateIMF(Int_t* fZZ, Int_t &fNalpha)
+void AliZDCFragment::GenerateIMF()
{
// Loop variables
}
//_____________________________________________________________________________
-void AliZDCFragment::AttachNeutrons(Int_t *fZZ, Int_t *fNN, Int_t &fZtot,Int_t &fNtot)
+void AliZDCFragment::AttachNeutrons()
{
//
// Prepare nuclear fragment by attaching a suitable number of neutrons
}
+
+//_____________________________________________________________________________
+Float_t AliZDCFragment::DeuteronNumber()
+{
+ // Calculates the fraction of deuterum nucleus produced
+ //
+ Float_t deuteronProdPar[2] = {-0.068,0.0385};
+ Float_t deutNum = deuteronProdPar[0] + deuteronProdPar[1]*fB;
+ if(deutNum<0.) deutNum = 0.;
+ return deutNum;
+}