]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - EVGEN/AliGenMUONlib.cxx
Resonances added. (G. Martinez)
[u/mrichter/AliRoot.git] / EVGEN / AliGenMUONlib.cxx
index 48be2d33085631eba603416e17914cc8651cb5c9..6207544baf69a2b0598c5f53ec3fa697e5b3ccc4 100644 (file)
@@ -339,6 +339,25 @@ Int_t AliGenMUONlib::IpJpsi(TRandom *)
 // J/Psi composition
     return 443;
 }
+Int_t AliGenMUONlib::IpPsiP(TRandom *)
+{
+// Psi prime composition
+    return 100443;
+}
+Int_t AliGenMUONlib::IpJpsiFamily(TRandom *)
+{
+// J/Psi composition
+  Int_t ip;
+  Float_t r = gRandom->Rndm();
+  if (r < 0.98) {
+    ip = 443;
+  } else {
+    ip = 100443;
+  }
+  return ip;
+}
+
+
 
 //                      Upsilon
 //
@@ -487,6 +506,32 @@ Int_t AliGenMUONlib::IpUpsilon(TRandom *)
 // y composition
     return 553;
 }
+Int_t AliGenMUONlib::IpUpsilonP(TRandom *)
+{
+// y composition
+    return 100553;
+}
+Int_t AliGenMUONlib::IpUpsilonPP(TRandom *)
+{
+// y composition
+    return 200553;
+}
+Int_t AliGenMUONlib::IpUpsilonFamily(TRandom *)
+{
+// y composition
+  Int_t ip;
+  Float_t r = gRandom->Rndm();
+  
+  if (r < 0.712) {
+    ip = 553;
+  } else if (r < 0.896) {
+    ip = 100553;
+  } else {
+    ip = 200553;
+  }
+  return ip;
+}
+
 
 //
 //                        Phi
@@ -675,6 +720,8 @@ GenFunc AliGenMUONlib::GetPt(Int_t param,  const char* tname) const
     case kEta:
        func=PtEta;
        break;
+    case kJpsiFamily:
+    case kPsiP:
     case kJpsi:
        if (sname == "Vogt" || sname == "Vogt PbPb") {
            func=PtJpsiPbPb;
@@ -687,6 +734,9 @@ GenFunc AliGenMUONlib::GetPt(Int_t param,  const char* tname) const
     case kJpsiFromB:
        func = PtJpsiBPbPb;
        break;
+    case kUpsilonFamily:
+    case kUpsilonP:
+    case kUpsilonPP:
     case kUpsilon:
        if (sname == "Vogt" || sname == "Vogt PbPb") {
            func=PtUpsilonPbPb;
@@ -695,7 +745,7 @@ GenFunc AliGenMUONlib::GetPt(Int_t param,  const char* tname) const
        } else {
            func=PtUpsilon;
        }
-       break;
+       break;  
     case kCharm:
        func=PtCharm;
        break;
@@ -732,6 +782,8 @@ GenFunc AliGenMUONlib::GetY(Int_t param, const char* tname) const
     case kOmega:
        func=YOmega;
        break;
+    case kJpsiFamily:
+    case kPsiP:
     case kJpsi:
        if (sname == "Vogt" || sname == "Vogt PbPb") {
            func=YJpsiPbPb;
@@ -740,11 +792,13 @@ GenFunc AliGenMUONlib::GetY(Int_t param, const char* tname) const
        } else {
            func=YJpsi;
        }
-       
        break;
     case kJpsiFromB:
        func = YJpsiBPbPb;
        break;
+    case kUpsilonFamily:
+    case kUpsilonP:
+    case kUpsilonPP:
     case kUpsilon:
        if (sname == "Vogt" || sname == "Vogt PbPb") {
            func=YUpsilonPbPb;
@@ -788,6 +842,12 @@ GenFuncIp AliGenMUONlib::GetIp(Int_t param,  const char* /*tname*/) const
     case kOmega:
        func=IpOmega;
        break;
+    case kJpsiFamily:
+       func=IpJpsiFamily;
+       break;
+    case kPsiP:
+       func=IpPsiP;
+       break;
     case kJpsi:
     case kJpsiFromB:
        func=IpJpsi;
@@ -795,6 +855,15 @@ GenFuncIp AliGenMUONlib::GetIp(Int_t param,  const char* /*tname*/) const
     case kUpsilon:
        func=IpUpsilon;
        break;
+    case kUpsilonFamily:
+      func=IpUpsilonFamily;
+      break;
+    case kUpsilonP:
+       func=IpUpsilonP;
+       break;
+    case kUpsilonPP:
+       func=IpUpsilonPP;
+       break;
     case kCharm:
        func=IpCharm;
        break;