当前位置: 首页>>代码示例>>C++>>正文


C++ AliGenCocktail类代码示例

本文整理汇总了C++中AliGenCocktail的典型用法代码示例。如果您正苦于以下问题:C++ AliGenCocktail类的具体用法?C++ AliGenCocktail怎么用?C++ AliGenCocktail使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了AliGenCocktail类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: MbCocktail

AliGenerator* MbCocktail()
{
      comment = comment.Append(" pp at 14 TeV: Pythia low-pt, no heavy quarks + J/Psi from parameterisation");
      AliGenCocktail * gener = new AliGenCocktail();
      gener->UsePerEventRates();

//    Pythia

      AliGenPythia* pythia = new AliGenPythia(-1);
      pythia->SetMomentumRange(0, 999999.);
      pythia->SetThetaRange(0., 180.);
      pythia->SetYRange(-12.,12.);
      pythia->SetPtRange(0,1000.);
      pythia->SetProcess(kPyMb);
      pythia->SetEnergyCMS(14000.);
      pythia->SwitchHFOff();

//   J/Psi parameterisation

      AliGenParam* jpsi = new AliGenParam(1, AliGenMUONlib::kJpsi, "CDF scaled", "Jpsi");
      jpsi->SetPtRange(0.,100.);
      jpsi->SetYRange(-8., 8.);
      jpsi->SetPhiRange(0., 360.);
      jpsi->SetForceDecay(kAll);

      gener->AddGenerator(pythia, "Pythia", 1.);
      gener->AddGenerator(jpsi,   "J/Psi", 8.e-4);

      return gener;
}
开发者ID:alisw,项目名称:AliRoot,代码行数:30,代码来源:Config.C

示例2: GeneratorCustom

AliGenerator* GeneratorCustom()
{
  AliGenCocktail *ctl = GeneratorCocktail("Monash2013_RsnNcl002");
  // pythia8
  AliGenerator   *py8 = GeneratorPythia8(kPythia8Tune_Monash2013);
  ctl->AddGenerator(py8, "Pythia8 (Monash2013)", 1.);

  // randomly injected particles
  const int nParticles = 10;
  particle_inj particleList[10] = { // {name,pdgcode,maxpt,maxy},
    {1,"f2(1270)",225,15.,0.6},
    {1,"Lambda(1520)",3124,15.,0.6},
    {1,"Lambda_bar(1520)",-3124,15.,0.6},
    {1,"f0(980)",9010221,15.,0.6},
    {1,"Xi*0(1530)",3324,15.,0.6},
    {1,"Xi*0_bar(1530)",-3324,15.,0.6},
    {1,"Xi0(1820)",123324,15.,0.6},
    {1,"Xi0_bar(1820)",-123324,15.,0.6},
    {1,"Xi-(1820)",123314,15.,0.6},
    {1,"Xi+(1820)",-123314,15.,0.6}
  };

  AliDecayerPythia *dec = new AliDecayerPythia;
  AliPDG::AddParticlesToPdgDataBase();

  ctl->UseSingleInjectionPerEvent();
  for (int idx = 0; idx < nParticles; ++idx) {
    AliGenerator   *inj = GeneratorParam(particleList[idx].n, particleList[idx].pdg, 0., particleList[idx].maxpt,-particleList[idx].maxy, particleList[idx].maxy,dec);
    ctl->AddGenerator(inj, (TString(particleList[idx].name) + " injector").Data(), 1.);
  }
  return ctl;
}
开发者ID:alisw,项目名称:AliDPG,代码行数:32,代码来源:Pythia8_Monash2013_Rsn002.C

示例3: GeneratorCustom

/// \ingroup MC/CustomGenerators/DPG
/// \brief   Performance generator (ATO-245)
AliGenerator * GeneratorCustom() {
  AliGenCocktail *ctl    = GeneratorCocktail("Hijing+Generator for performance (tracking,PID) studies");
  AliGenerator   *hij    = GeneratorHijing();
  AliGenerator   *genJet = PerformanceGenerator();
  ctl->AddGenerator(hij,    "Hijing", 1.);
  ctl->AddGenerator(genJet,"Generator for performance (tracking,PID) studies",1);
  return ctl;
}
开发者ID:alisw,项目名称:AliDPG,代码行数:10,代码来源:PerformanceGenerator.C

示例4: GeneratorCocktail

///
/// Main configuration method 
///
AliGenerator * 
GeneratorCustom
(TString opt = "kFullDetector")
{
  // Init cocktail
  AliGenCocktail *ctl   = GeneratorCocktail(Form("Dpmjet_%s",processConfig.Data()));
  
  //
  // DPMjet
  //
  AliGenerator   *dpm   = GeneratorPhojet();
  ctl->AddGenerator(dpm,  "Dpmjet", 1.);

  //
  // PYTHIA
  //
  // acceptance
  Int_t acceptance = kCalorimeterAcceptance_FullDetector;
  if (opt.EqualTo("FullDetector"))
    acceptance = kCalorimeterAcceptance_FullDetector;
  if (opt.EqualTo("EMCRun1"))
    acceptance = kCalorimeterAcceptance_EMCRun1;
  if (opt.EqualTo("PHSRun1"))
    acceptance = kCalorimeterAcceptance_PHSRun1;
  if (opt.EqualTo("EMCRun2"))
    acceptance = kCalorimeterAcceptance_EMCRun2;
  if (opt.EqualTo("PHSRun2"))
    acceptance = kCalorimeterAcceptance_PHSRun2;
  if (opt.EqualTo("PHSDMC"))
    acceptance = kCalorimeterAcceptance_PHSDMC;
    
  // process
  AliGenerator   *gammajet   = 0;

  // PYTHIA6
  if (processConfig.EqualTo("Pythia6Jets"))
    gammajet = GeneratorPythia6Jets         (kPythia6Tune_Perugia2011, acceptance); 
  if (processConfig.EqualTo("Pythia6GammaJet"))
    gammajet = GeneratorPythia6GammaJet     (kPythia6Tune_Perugia2011, acceptance); 
  if (processConfig.EqualTo("Pythia6JetsGammaTrg"))
    gammajet = GeneratorPythia6JetsGammaTrg (kPythia6Tune_Perugia2011, acceptance); 
  
  // PYTHIA8
  if (processConfig.EqualTo("Pythia8Jets"))
    gammajet = GeneratorPythia8Jets         (kPythia8Tune_Monash2013 , acceptance); 
  if (processConfig.EqualTo("Pythia8GammaJet"))
    gammajet =  GeneratorPythia8GammaJet     (kPythia8Tune_Monash2013 , acceptance); 
  if (processConfig.EqualTo("Pythia8JetsGammaTrg"))
    gammajet = GeneratorPythia8JetsGammaTrg (kPythia8Tune_Monash2013 , acceptance); 
  
  ctl->AddGenerator(gammajet, processConfig, 1.);  
  
  return ctl;
}
开发者ID:alisw,项目名称:AliDPG,代码行数:57,代码来源:Dpmjet_Pythia_GammaTriggerAndJet.C

示例5: GeneratorCustom

AliGenerator *
GeneratorCustom() 
{
  AliGenCocktail *ctl   = GeneratorCocktail("Perugia2011_Nuclex002");
  AliGenerator   *pyt   = GeneratorPythia6(kPythia6Tune_Perugia2011);
  ctl->AddGenerator(pyt,  "Pythia6", 1.);
  AliGenerator   *nu1a  = Generator_Nuclex(0x1F, kFALSE, 10);
  AliGenerator   *nu1b  = Generator_Nuclex(0x1F, kTRUE, 10);
  ctl->AddGenerator(nu1a,  "Nuclex1a", 1.);
  ctl->AddGenerator(nu1b,  "Nuclex1b", 1.);
  return ctl;
}
开发者ID:alisw,项目名称:AliDPG,代码行数:12,代码来源:Pythia6_Perugia2011_Nuclex002.C

示例6: GeneratorCustom

AliGenerator *
GeneratorCustom()
{
  AliGenCocktail* cocktail = GeneratorCocktail("Hijing_Starlight");
  AliGenerator* starlight = GeneratorStarlight();
  cocktail->AddGenerator(starlight, "Starlight", 1.);
  
  AliGenerator* hijing = GeneratorHijing();
  cocktail->AddGenerator(hijing, "Hijing", 1.);    
  
  return cocktail;
}
开发者ID:preghenella,项目名称:AliDPG,代码行数:12,代码来源:Hijing_Starlight.C

示例7: GeneratorCustom

// Requires AliRoot from v5-09-02
AliGenerator *
GeneratorCustom()
{
  AliGenCocktail *ctl   = GeneratorCocktail("Hijing_Nuclex005");
  AliGenerator   *hij   = GeneratorHijing();
  ctl->AddGenerator(hij,  "Hijing", 1.);
  AliGenerator   *nu1a  = Generator_Nuclex(0x70000, kFALSE, 10);
  AliGenerator   *nu1b  = Generator_Nuclex(0x70000, kTRUE, 10);
  ctl->AddGenerator(nu1a,  "Nuclex1a", 1.);
  ctl->AddGenerator(nu1b,  "Nuclex1b", 1.);
  return ctl;
}
开发者ID:alisw,项目名称:AliDPG,代码行数:13,代码来源:Hijing_Nuclex005.C

示例8: GeneratorCustom

AliGenerator *
GeneratorCustom(TString opt = "")
{
    AliGenCocktail *ctl  = GeneratorCocktail("Hijing_HF");
  
        AliGenerator   *hij  = GeneratorHijing();
        ctl->AddGenerator(hij, "Hijing", 1.);
    //
    const Char_t *label[2][3] = {
        "chadr PYTHIA", "chadr PYTHIA", "cele PYTHIA",
        "bchadr PYTHIA", "bchadr PYTHIA", "bele PYTHIA"
    };
    //
    Int_t process[2] = {kPythia6HeavyProcess_Charm, kPythia6HeavyProcess_Beauty};
    Int_t iprocess = uidConfig % 2;
    //
    Int_t decay[3]   = {kPythia6HeavyDecay_Hadrons, kPythia6HeavyDecay_HadronsWithV0, kPythia6HeavyDecay_Electron};
    TString optList[3] = {"had", "hv0", "ele"};
    Int_t idecay = 0;
    for (Int_t iopt = 0; iopt < 3; iopt++)
        if (opt.EqualTo(optList[iopt]))
            idecay = iopt;
    //
    AliGenerator *phf  = GeneratorPythia6Heavy(process[iprocess], decay[idecay], kPythia6Tune_Perugia2011);
    //
    TFormula *formula = new TFormula("Signals","max(1.,80.*(1.-x/20.)*(x<9)+240.*(1.-x/13.)*(x>9.))");
    //
    Float_t pth[4] = {2.76, 20., 50., 1000.};
    Int_t ipt;
    if      ((uidConfig / 2) % 10 < 7) ipt = 0;
    else if ((uidConfig / 2) % 10 < 9) ipt = 1;
    else                               ipt = 2;
    ((AliGenPythia *)phf)->SetPtHard(pth[ipt], pth[ipt + 1]);
    //
    ctl->AddGenerator(phf, label[iprocess][idecay], 1., formula);
    printf(">>>>> added HF generator %s \n", label[iprocess][idecay]);
    // add pi0 and eta enhancement
    if (decay[idecay] == kPythia6HeavyDecay_Electron) {
        TFormula* neutralsF = new TFormula("neutrals", "20.+ 80. * exp(- 0.5 * x * x / 5.12 / 5.12)");
        AliGenPHOSlib *plib = new AliGenPHOSlib();
        AliGenParam *pi0 = new AliGenParam(1, plib, AliGenPHOSlib::kPi0Flat);
        pi0->SetPhiRange(0., 360.) ;
        pi0->SetYRange(-1.2, 1.2) ;
        pi0->SetPtRange(0., 50.) ;
        ctl->AddGenerator(pi0,  "pi0", 1., neutralsF);
        AliGenParam *eta = new AliGenParam(1, plib, AliGenPHOSlib::kEtaFlat);
        eta->SetPhiRange(0., 360.) ;
        eta->SetYRange(-1.2, 1.2) ;
        eta->SetPtRange(0., 50.) ;
        ctl->AddGenerator(eta,  "eta", 1., neutralsF);
    }
    return ctl;
}
开发者ID:alisw,项目名称:AliDPG,代码行数:53,代码来源:Hijing_Xe_HF.C

示例9: GeneratorCustom

AliGenerator *
GeneratorCustom()
{
  AliGenCocktail *ctl = GeneratorCocktail("Monash2013_Nuclex001");
  // pythia8
  AliGenerator   *py8 = GeneratorPythia8(kPythia8Tune_Monash2013);
  ctl->AddGenerator(py8, "Pythia8 (Monash2013)", 1.);
  //
  AliGenerator   *nu1a  = Generator_Nuclex(0x7, kFALSE, 7,6.f,1.f);
  AliGenerator   *nu1b  = Generator_Nuclex(0x7, kTRUE,  7,6.f,1.f);
  ctl->AddGenerator(nu1a,  "Nuclex1a", 1.);
  ctl->AddGenerator(nu1b,  "Nuclex1b", 1.);
  return ctl;
}
开发者ID:preghenella,项目名称:AliDPG,代码行数:14,代码来源:Pythia8_Monash2013_Nuclex001.C

示例10: JPsi7TeV

AliGenerator* JPsi7TeV()
/*{
    AliGenParam *jpsi7TeV = new AliGenParam(1, AliGenMUONlib::kJpsi,"CDF pp 7");
    jpsi7TeV->SetMomentumRange(0,999);
    jpsi7TeV->SetPtRange(0,20.);
    jpsi7TeV->SetYRange(-4.2,-2.3);
    jpsi7TeV->SetPhiRange(0., 360.);
    jpsi7TeV->SetCutOnChild(1);
    jpsi7TeV->SetChildPhiRange(0.,360.);
    jpsi7TeV->SetChildThetaRange(0.,180.);
    jpsi7TeV->SetForceDecay(kDiMuon);
    jpsi7TeV->SetTrackingFlag(1);

    return jpsi7TeV;
}*/
{
      comment = comment.Append(" pp at 7 TeV: Pythia low-pt, no heavy quarks + J/Psi from parameterisation");
      AliGenCocktail * gener = new AliGenCocktail();
      gener->UsePerEventRates();

//    Pythia

      AliGenPythia* pythia = new AliGenPythia(-1);
      pythia->SetMomentumRange(0, 999999.);
      pythia->SetThetaRange(0., 180.);
      pythia->SetYRange(-12.,12.);
      pythia->SetPtRange(0,1000.);
      pythia->SetProcess(kPyMb);
      pythia->SetEnergyCMS(energy);
      pythia->SwitchHFOff();

//   J/Psi parameterisation
//      AliGenParam* jpsi = new AliGenParam(1, AliGenMUONlib::kJpsi, "CDF scaled", "Jpsi");
      AliGenParam* jpsi = new AliGenParam(1, AliGenMUONlib::kJpsi,"CDF pp 7");
      jpsi->SetPtRange(0.,100.);
      // jpsi->SetYRange(-8., 8.);
      jpsi->SetYRange(-1.5, 1.5); //this to speed up !!!
      jpsi->SetPhiRange(0., 360.);
      jpsi->SetForceDecay(kDiElectron);  // this has to be changed to force J/psi->e+e-

      //gener->AddGenerator(jpsi,   "J/Psi", 8.e-4); // expected yield
      gener->AddGenerator(jpsi,   "J/Psi", 1.);  // 1 J/psi per event
      gener->AddGenerator(pythia, "Pythia", 1.);

      return gener;
}
开发者ID:JanFSchulte,项目名称:monalisa,代码行数:46,代码来源:Config.C

示例11: GeneratorCustom

AliGenerator *
GeneratorCustom(TString opt = "")
{
  TString optList[6] = {"", "a", "b", "c", "d", "e"};
  Int_t ninjlist[6] = {1, 10, 5, 3, 2, 1};
  Int_t iinj = 0;
  for (Int_t iopt = 0; iopt < 3; iopt++)
    if (opt.EqualTo(optList[iopt]))
      iinj = iopt;
  Int_t ninj = ninjlist[iinj];
  AliGenCocktail *ctl   = GeneratorCocktail("Hijing_Jets001");
  AliGenerator   *hij   = GeneratorHijing();
  ctl->AddGenerator(hij,  "Hijing", 1.);
  AliGenerator   *jet   = GeneratorPythia8Jets();
  ctl->AddGenerator(jet,  "Jets", 1., new TFormula(Form("ninj_%d", ninj), Form("%d", ninj)));
  return ctl;
}
开发者ID:alisw,项目名称:AliDPG,代码行数:17,代码来源:Hijing_Jets001.C

示例12: Hijing2000HF

AliGenerator* Hijing2000HF(Int_t typeHF)
{
  comment = comment.Append(" PbPb: Hjing2000 + pythia events for HF signals");

  AliGenCocktail *cocktail = new AliGenCocktail();
  cocktail->SetProjectile("A", 208, 82);
  cocktail->SetTarget    ("A", 208, 82);

  AliGenerator* pythiaHF = 0x0;
  // 20 Pythia events
  Int_t nPythia=20;
  for(Int_t i=0;i<nPythia; i++) {
    
    switch(typeHF) {
    case 0:
      pythiaHF = MbPythiaTunePerugia0chadr();
      break;
    case 1:
      pythiaHF = MbPythiaTunePerugia0bchadr();
      break;
    case 2:
      pythiaHF = MbPythiaTunePerugia0cele();
      break;
    case 3:
      pythiaHF = MbPythiaTunePerugia0bele();
      break;
    case 4:
      pythiaHF = MbPythiaTunePerugia0Jpsi2e();
      break;
    case 5:
      pythiaHF = MbPythiaTunePerugia0BtoJpsi2e();
      break;
    default:
      pythiaHF = MbPythiaTunePerugia0chadr();
      break;
    }
    cocktail->AddGenerator(pythiaHF,"pythiaHF",1); 
  }

  // 1 Hijing event  
  AliGenHijing *hijing = Hijing2000();
  cocktail->AddGenerator(hijing,"hijing",1);


  return cocktail;
}
开发者ID:JanFSchulte,项目名称:monalisa,代码行数:46,代码来源:Config.C

示例13: MbPythiaTunePerugia0Jpsi

AliGenerator* MbPythiaTunePerugia0Jpsi()
{
    comment = comment.Append("pp Cocktail: Pythia (Perugia0) + 1 Jpsi forced to dielectrons");
    //Generating a cocktail
    AliGenCocktail *gener = new AliGenCocktail();
    gener->UsePerEventRates();
//
//    Pythia
      AliGenPythia* pythia = new AliGenPythia(-1);
      pythia->SetMomentumRange(0, 999999.);
      pythia->SetThetaRange(0., 180.);
      pythia->SetYRange(-12.,12.);
      pythia->SetPtRange(0,1000.);
      pythia->SetProcess(kPyMb);
      pythia->SetEnergyCMS(energy);
//    Tune
//    320     Perugia 0
      pythia->SetTune(320);
      pythia->UseNewMultipleInteractionsScenario();

//
//  JPsi is the second ingredient of the cocktail
      //AliGenParam* jpsi = new AliGenParam(1, AliGenMUONlib::kJpsi, "CDF scaled", "Jpsi"); // 14 TeV
      AliGenParam* jpsi=0x0;
      if(JpsiHarderPt) jpsi = new AliGenParam(1, AliGenMUONlib::kJpsi, "CDF pp 8.8", "Jpsi");  // 8.8 TeV
      else jpsi = new AliGenParam(1, AliGenMUONlib::kJpsi, "CDF pp 7", "Jpsi");  // 7 TeV
      //AliGenParam* jpsi = new AliGenParam(1, AliGenMUONlib::kJpsi, "CDF pp 7", "Jpsi");  // 7 TeV
      //AliGenParam* jpsi = new AliGenParam(1, AliGenMUONlib::kJpsi, "CDF pp 8.8", "Jpsi");  // 8.8 TeV

      jpsi->SetPtRange(0.,999.);
      jpsi->SetYRange(-1.0, 1.0);
      jpsi->SetPhiRange(0.,360.);
      //jpsi->SetChildYRange(-0.9,0.9);     // decaying electrons should be in TRD acceptance
      jpsi->SetForceDecay(kDiElectron);
      jpsi->Init();

    gener->AddGenerator(pythia, "Pythia", 1.);  // 1 is weighting factor : Rate per event
    gener->AddGenerator(jpsi,"JPsi",1);
//    gener->Init();

    return gener;
}
开发者ID:JanFSchulte,项目名称:monalisa,代码行数:42,代码来源:Config.C

示例14: GeneratorCocktail

AliGenerator *GeneratorCustom(){

  int ninjxi = 3;
  int ninjom = 3;
  
  Int_t sign = uidConfig % 2 == 0 ? 1 : -1;
  
  AliGenCocktail *ctl  = GeneratorCocktail("EPOS_StrInj_pPb8");
  AliGenerator   *epos  = GeneratorEPOSLHC();
  
  AliGenerator   *ixi = GeneratorInjector(ninjxi, sign * 3312, 2., 20., -1.2, 1.2);
  AliGenerator   *iom = GeneratorInjector(ninjom, (-1) * sign * 3334, 0., 10., -1.2, 1.2);
  
  ctl->AddGenerator(epos,  "Epos", 1.);
  ctl->AddGenerator(ixi, "Injector (Xi)", 1.);
  ctl->AddGenerator(iom, "Injector (Omega)", 1.);

  return ctl;

}
开发者ID:alisw,项目名称:AliDPG,代码行数:20,代码来源:EPOS_StrInj_pPb8.C

示例15: GeneratorCustom

AliGenerator *
GeneratorCustom()
{
    AliGenCocktail *ctl   = GeneratorCocktail("Perugia2011_Nuclex001");
    AliGenerator   *pyt   = GeneratorPythia6(kPythia6Tune_Perugia2011);
    ctl->AddGenerator(pyt,  "Pythia6", 1.);
    AliGenerator   *nu1a  = Generator_Nuclex(0xF, kFALSE, 10);
    AliGenerator   *nu1b  = Generator_Nuclex(0xF, kTRUE, 10);
    AliGenerator   *nu2a  = Generator_Nuclex(0x10, kFALSE, 40);
    AliGenerator   *nu2b  = Generator_Nuclex(0x10, kTRUE, 40);
    AliGenerator   *nu3a  = Generator_Nuclex(0xFE0, kFALSE, 20);
    AliGenerator   *nu3b  = Generator_Nuclex(0xFE0, kTRUE, 20);
    ctl->AddGenerator(nu1a,  "Nuclex1a", 1.);
    ctl->AddGenerator(nu1b,  "Nuclex1b", 1.);
    ctl->AddGenerator(nu2a,  "Nuclex2a", 1.);
    ctl->AddGenerator(nu2b,  "Nuclex2b", 1.);
    ctl->AddGenerator(nu3a,  "Nuclex3a", 1.);
    ctl->AddGenerator(nu3b,  "Nuclex3b", 1.);
    return ctl;
}
开发者ID:alisw,项目名称:AliDPG,代码行数:20,代码来源:Pythia6_Perugia2011_Nuclex001.C


注:本文中的AliGenCocktail类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。