Some little changes in AliDecayerPythia::ForceHadronicD, in
authormorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 4 Feb 2009 15:32:53 +0000 (15:32 +0000)
committermorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 4 Feb 2009 15:32:53 +0000 (15:32 +0000)
order to force the following decay channels:
1. Lambda_c --> Lambda pi
2. Lambda_c --> Lambda(1520) pi (resonant for Lambda_c --> pKpi)
3. D0 --> K*0 pi pi (resonant for D0 --> 4 prongs)
(Rossella Romita <r.romita@gsi.de>)

PYTHIA6/AliDecayerPythia.cxx
PYTHIA8/AliDecayerPythia8.cxx
data/decaytable.dat

index 7579cfe..176c8d8 100644 (file)
@@ -111,7 +111,6 @@ void AliDecayerPythia::Init()
 
 
     fPythia->SetMDCY(fPythia->Pycomp(310) ,1,0);
-    fPythia->SetMDCY(fPythia->Pycomp(3122),1,0);
     fPythia->SetMDCY(fPythia->Pycomp(3112),1,0);
     fPythia->SetMDCY(fPythia->Pycomp(3212),1,0);
     fPythia->SetMDCY(fPythia->Pycomp(3222),1,0);
@@ -430,6 +429,12 @@ void AliDecayerPythia::ForceHadronicD(Int_t optUse4Bodies)
   Int_t iDeltaPP = 2224;
   Int_t productsD[2] = {kProton, kPiPlus}, multD[2] = {1, 1};
   ForceParticleDecay(iDeltaPP, productsD, multD, 2);
+  // for Lambda_c -> Lambda(1520) pi+ -> p K- pi+ 
+  Int_t iLambda_1520 = 3124;
+  Int_t productsL[2] = {kProton, kKMinus}, multL[2] = {1, 1};
+  ForceParticleDecay(iLambda_1520, productsL, multL, 2);
+  // for Lambda_c -> Lambda pi+
+  Int_t iLambda=3122;
 
 
   Int_t decayP1[kNHadrons][4] = 
@@ -456,6 +461,25 @@ void AliDecayerPythia::ForceHadronicD(Int_t optUse4Bodies)
       {-1        , -1     , -1      , -1},
       {kProton   , kKMinus, kPiPlus , 0}
     };
+  // for Lambda_c -> Lambda_1520 pi+ -> p K- pi+, D0-> K*0 pi+ pi- -> K3pi
+    Int_t decayP4[kNHadrons][4] =
+    {
+      {-1          , -1      , -1      , -1},
+      {iKstarbar0  , kPiPlus , kPiMinus,  0},
+      {-1          , -1      , -1      , -1},
+      {-1          , -1      , -1      , -1},
+      {iLambda_1520, kPiPlus ,  0      ,  0}
+    };
+  // for Lambda_c -> Lambda pi+ 
+    Int_t decayP5[kNHadrons][4] =
+    {
+      {-1        , -1     , -1      , -1},
+      {-1        , -1     , -1      , -1},
+      {-1        , -1     , -1      , -1},
+      {-1        , -1     , -1      , -1},
+      {iLambda   , kPiPlus,  0      ,  0}
+    };
+
   if(optUse4Bodies==0){
     for(Int_t iDau=0;iDau<4;iDau++){
       decayP2[1][iDau]=-1;
@@ -489,6 +513,18 @@ void AliDecayerPythia::ForceHadronicD(Int_t optUse4Bodies)
              fPythia->GetKFDP(channel,3) == decayP3[ihadron][2] &&
              fPythia->GetKFDP(channel,4) == decayP3[ihadron][3] &&
              fPythia->GetKFDP(channel,5) == 0
+        ) || (
+              fPythia->GetKFDP(channel,1) == decayP4[ihadron][0] &&
+              fPythia->GetKFDP(channel,2) == decayP4[ihadron][1] &&
+              fPythia->GetKFDP(channel,3) == decayP4[ihadron][2] &&
+              fPythia->GetKFDP(channel,4) == decayP4[ihadron][3] &&
+              fPythia->GetKFDP(channel,5) == 0
+        ) || (
+              fPythia->GetKFDP(channel,1) == decayP5[ihadron][0] &&
+              fPythia->GetKFDP(channel,2) == decayP5[ihadron][1] &&
+              fPythia->GetKFDP(channel,3) == decayP5[ihadron][2] &&
+              fPythia->GetKFDP(channel,4) == decayP5[ihadron][3] &&
+              fPythia->GetKFDP(channel,5) == 0
              ))
          
          {
index de72a8c..49308f1 100644 (file)
@@ -67,7 +67,6 @@ void AliDecayerPythia8::Init()
     }
 
     TPythia8::Instance()->ReadString("310:onMode = off");
-    TPythia8::Instance()->ReadString("3122:onMode = off");
     TPythia8::Instance()->ReadString("3112:onMode = off");
     TPythia8::Instance()->ReadString("3212:onMode = off");
     TPythia8::Instance()->ReadString("3222:onMode = off");
@@ -603,6 +602,9 @@ void AliDecayerPythia8::ForceHadronicD(Int_t optUse4Bodies)
     // for Lambda_c -> Delta++ K-
     TPythia8::Instance()->ReadString("2224:onMode = off");
     TPythia8::Instance()->ReadString("2224:onIfAll = 2212 211");
+    // for Lambda_c -> Lambda(1520) K-
+    TPythia8::Instance()->ReadString("3124:onMode = off");
+    TPythia8::Instance()->ReadString("3124:onIfAll = 2212 321");
 
 
     TPythia8::Instance()->ReadString("411:onMode = off");
@@ -615,7 +617,7 @@ void AliDecayerPythia8::ForceHadronicD(Int_t optUse4Bodies)
     TPythia8::Instance()->ReadString("411:onIfMatch = 321 211 211");
     // D+/- -> K K* pi
     TPythia8::Instance()->ReadString("411:onIfMatch = 313 211");
-    // D+/- -> K pi
+    // D0 -> K pi
     TPythia8::Instance()->ReadString("421:onIfMatch = 321 211");
 
     if (optUse4Bodies) {
@@ -623,6 +625,8 @@ void AliDecayerPythia8::ForceHadronicD(Int_t optUse4Bodies)
        TPythia8::Instance()->ReadString("421:onIfMatch = 321 211 211 211");
        // D0 -> K pi rho
        TPythia8::Instance()->ReadString("421:onIfMatch = 321 211 113");
+       // D0 -> K*0 pi pi
+       TPythia8::Instance()->ReadString("421:onIfMatch = 313 211 211");
     }
     
     // D_s -> K K*
@@ -634,8 +638,12 @@ void AliDecayerPythia8::ForceHadronicD(Int_t optUse4Bodies)
     TPythia8::Instance()->ReadString("4122:onIfMatch = 2212 313");
     // Lambda_c -> Delta K
     TPythia8::Instance()->ReadString("4122:onIfMatch = 2224 321");
+    // Lambda_c -> Lambda(1520) pi
+    TPythia8::Instance()->ReadString("4122:onIfMatch = 3124 211");
     // Lambda_c -> p K pi
     TPythia8::Instance()->ReadString("4122:onIfMatch = 2212 321 211");
+    // Lambda_c -> Lambda pi 
+    TPythia8::Instance()->ReadString("4122:onIfMatch = 3122 211");
 
 }
 
index c1cfd75..8748636 100644 (file)
               1   42    0.002000       -13        14      2114         0         0
               1   42    0.006000       -13        14      2212      -211         0
               1   42    0.006000       -13        14      2112       111         0
-              1    0    0.008600      2224      -321         0         0         0
+              1    0    0.000860      2224      -321         0         0         0
               1    0    0.025000      2224      -323         0         0         0
               1    0    0.016000      2212      -311         0         0         0
               1    0    0.016000      2212      -313         0         0         0
               1    0    0.028000      2212      -321       211         0         0
               1    0    0.005000      2214      -311         0         0         0
               1    0    0.005000      2214      -313         0         0         0
-              1    0    0.005800      3122       211         0         0         0
+              1    0    0.010700      3122       211         0         0         0
               1    0    0.005000      3122       213         0         0         0
               1    0    0.018000      3124       211         0         0         0
               1    0    0.005500      3212       211         0         0         0
               1    0    0.001600       111       111         0         0         0
               1    0    0.001800       333       113         0         0         0
               1    0    0.011000      -321       211       111         0         0
-              1    0    0.064000      -321       211       113         0         0
+              1    0    0.067600      -321       211       113         0         0
               1    0    0.005200      -321       321      -311         0         0
               1    0    0.018000      -311       211      -211         0         0
-              1    0    0.016000      -313       211      -211         0         0
+              1    0    0.015000      -313       211      -211         0         0
               1    0    0.003400      -321       311       211         0         0
               1    0    0.003600      -313       321      -211         0         0
               1    0    0.000900       310       310       310         0         0
               1    0    0.000600       333       211      -211         0         0
               1    0    0.015000       211      -211       111         0         0
               1    0    0.092300      -321       211       111       111         0
-              1    0    0.018000      -321       211       211      -211         0
+              1    0    0.018800      -321       211       211      -211         0
               1    0    0.022000      -311       211      -211       111         0
               1    0    0.007700      -313       211      -211       111         0
               1    0    0.009000      -311       321      -321       111         0