kPsiPrimeJpsiDiElectron added
authormorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 18 Jun 2010 21:55:06 +0000 (21:55 +0000)
committermorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 18 Jun 2010 21:55:06 +0000 (21:55 +0000)
Moritz Pohl

EVGEN/AliDecayer.h
EVGEN/AliGenMC.cxx
PYTHIA6/AliDecayerPythia.cxx
PYTHIA6/AliDecayerPythia.h
PYTHIA8/AliDecayerPythia8.cxx

index 46fd0bd..3fe4f37 100644 (file)
@@ -19,7 +19,7 @@ typedef enum
     kNoDecay, kHadronicD, kHadronicDWithout4Bodies, kOmega, kLambda, kPhiKK, 
     kAll, kNoDecayHeavy, kHardMuons, kBJpsi,
     kWToMuon,kWToCharm, kWToCharmToMuon, kZDiMuon, kZDiElectron, kNeutralPion, kAllMuonic,
-    kChiToJpsiGammaToMuonMuon, kChiToJpsiGammaToElectronElectron, kNoDecayBeauty
+    kChiToJpsiGammaToMuonMuon, kChiToJpsiGammaToElectronElectron, kNoDecayBeauty, kPsiPrimeJpsiDiElectron
 } Decay_t;
 #endif
 
index 68bbef8..6660454 100644 (file)
@@ -162,6 +162,10 @@ void AliGenMC::Init()
        fChildSelect[0]= kProton;
         fChildSelect[1]= 211;
        break;
+    case kPsiPrimeJpsiDiElectron:
+      fChildSelect[0]= 211;
+      fChildSelect[1]= 11;
+      break;
     case kOmega:
     case kAll:
     case kAllMuonic:
index 3584f44..19e895b 100644 (file)
@@ -286,6 +286,14 @@ void AliDecayerPythia::ForceDecay()
        ForceParticleDecay(100553,11,2);// Upsilon'
        ForceParticleDecay(200553,11,2);// Upsilon''
        break;
+    case kPsiPrimeJpsiDiElectron:
+       products[0] =    443;
+        products[1] =    211;
+        mult[0] = 1;
+        mult[1] = 2;
+        ForceParticleDecay( 100443, products, mult, 2, 1);
+        ForceParticleDecay(    443,11,2);             
+        break; 
     case kBJpsiDiMuon:
 
        products[0] =    443;
@@ -613,7 +621,7 @@ void AliDecayerPythia::ForceParticleDecay(Int_t particle, Int_t product, Int_t m
     if (norm > 0.) fBraPart[kc] /= norm;
 }
 
-void AliDecayerPythia::ForceParticleDecay(Int_t particle, Int_t* products, Int_t* mult, Int_t npart)
+void AliDecayerPythia::ForceParticleDecay(Int_t particle, Int_t* products, Int_t* mult, Int_t npart, Bool_t flag)
 {
 //
 //  Force decay of particle into products with multiplicity mult
@@ -637,9 +645,9 @@ void AliDecayerPythia::ForceParticleDecay(Int_t particle, Int_t* products, Int_t
        for (Int_t i = 0; i < npart; i++) {
            nprod += (CountProducts(channel, products[i]) >= mult[i]);
        }
-       if (nprod) {
+       if ((nprod && !flag) || ((nprod == npart) && flag)) {
            fPythia->SetMDME(channel,1,1);
-       } else {
+       } else {                // 
            fPythia->SetMDME(channel,1,0);
            fBraPart[kc] -= fPythia->GetBRAT(channel);
        }
index 6b124fb..8869a05 100644 (file)
@@ -42,7 +42,7 @@ public AliDecayer
                    Double_t mom, Double_t theta, Double_t phi);
     Int_t    CountProducts(Int_t channel, Int_t particle);
     void     ForceParticleDecay(Int_t particle, Int_t product, Int_t mult);
-    void     ForceParticleDecay(Int_t particle, Int_t* products, Int_t* mult, Int_t npart);
+    void     ForceParticleDecay(Int_t particle, Int_t* products, Int_t* mult, Int_t npart, Bool_t flag = 0);
     void     ForceHadronicD(Int_t optUser4Bodies=1);
     void     ForceOmega();
     void     ForceLambda();
index 1819d0a..2f9a437 100644 (file)
@@ -540,6 +540,7 @@ void AliDecayerPythia8::ForceDecay()
     case kNoDecayHeavy:
     case kNoDecayBeauty:
     case kNeutralPion:
+    case kPsiPrimeJpsiDiElectron: 
        break;
     }
 }