Ignore:
Timestamp:
Feb 16, 2009, 10:14:30 AM (16 years ago)
Author:
garnier
Message:

en test de gl2ps. Problemes de libraries

Location:
trunk/source/physics_lists/lists
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/physics_lists/lists/include/G4HadronInelasticQBBC.hh

    r850 r921  
    2424// ********************************************************************
    2525//
    26 // $Id: G4HadronInelasticQBBC.hh,v 1.5 2008/08/05 10:25:00 vnivanch Exp $
    27 // GEANT4 tag $Name: HEAD $
     26// $Id: G4HadronInelasticQBBC.hh,v 1.7 2008/09/24 18:10:51 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-02-cand-01 $
    2828//
    2929//---------------------------------------------------------------------------
     
    102102  G4PreCompoundModel* thePreEquilib;
    103103  G4QuasiElasticChannel*    theQuasiElastic;
    104   //  G4GeneratorPrecompoundInterface* theCascade;
     104  G4GeneratorPrecompoundInterface* preCompound;
    105105  G4BinaryCascade* theCascade;
    106106  G4QStringChipsParticleLevelInterface * theCHIPSCascade;
    107107  G4QGSModel< G4QGSParticipants > * theQGStringModel;
    108108  G4ExcitedStringDecay* theQGStringDecay;
    109   G4ExcitedStringDecay* theFTFStringDecay;
    110   G4FTFModel*           theFTFStringModel;
     109  G4ExcitedStringDecay* theFTFBStringDecay;
     110  G4ExcitedStringDecay* theFTFCStringDecay;
     111  G4FTFModel*           theFTFBStringModel;
     112  G4FTFModel*           theFTFCStringModel;
    111113
    112114  G4int    verbose;
  • trunk/source/physics_lists/lists/include/QBBC.icc

    r850 r921  
    2424// ********************************************************************
    2525//
    26 // $Id: QBBC.icc,v 1.12 2008/08/05 10:25:00 vnivanch Exp $
    27 // GEANT4 tag $Name: HEAD $
     26// $Id: QBBC.icc,v 1.16 2008/11/25 15:36:19 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-02-cand-01 $
    2828//
    2929//---------------------------------------------------------------------------
     
    5555#include "G4HadronDElasticPhysics.hh"
    5656#include "G4HadronHElasticPhysics.hh"
     57#include "G4ChargeExchangePhysics.hh"
    5758#include "G4IonBinaryCascadePhysics.hh"
    5859#include "G4IonPhysics.hh"
     
    7980   // Hadron Physics
    8081  if(type == "QBBC") {
    81     this->RegisterPhysics( new G4HadronElasticPhysics("hElastic",ver,false,true));
     82    this->RegisterPhysics( new G4HadronElasticPhysics("elastic",ver,false,false));
    8283    this->RegisterPhysics( new G4QStoppingPhysics("stopping",ver));
    8384    this->RegisterPhysics( new G4IonBinaryCascadePhysics("ionBIC"));
    84     this->RegisterPhysics( new G4HadronInelasticQBBC("inelastic", ver, true,
    85                 false, false, false, false));
     85    this->RegisterPhysics( new G4HadronInelasticQBBC("inelastic", ver, false,
     86                true, false, false, false));
    8687
    87   } else if(type == "QBBCG") {
    88     this->RegisterPhysics( new G4HadronElasticPhysics("hElastic",ver,false,true));
     88  } else if(type == "QBBBG") {
     89    this->RegisterPhysics( new G4HadronElasticPhysics("elastic",ver,false,true));
     90    this->RegisterPhysics( new G4ChargeExchangePhysics(ver,true));
    8991    this->RegisterPhysics( new G4QStoppingPhysics("stopping",ver));
    9092    this->RegisterPhysics( new G4IonBinaryCascadePhysics("ionBIC"));
     
    9294                false, false, false, true));
    9395
    94   } else if(type == "QBBC_DEL") {
    95     this->RegisterPhysics( new G4HadronDElasticPhysics(ver,false));
     96  } else if(type == "QBBCG") {
     97    this->RegisterPhysics( new G4HadronElasticPhysics("elastic",ver,false,true));
     98    this->RegisterPhysics( new G4ChargeExchangePhysics(ver,true));
    9699    this->RegisterPhysics( new G4QStoppingPhysics("stopping",ver));
    97100    this->RegisterPhysics( new G4IonBinaryCascadePhysics("ionBIC"));
    98101    this->RegisterPhysics( new G4HadronInelasticQBBC("inelastic", ver, false,
     102                true, false, false, true));
     103
     104  } else if(type == "QBBCF") {
     105    this->RegisterPhysics( new G4HadronElasticPhysics("elastic",ver,false,false));
     106    this->RegisterPhysics( new G4ChargeExchangePhysics(ver,false));
     107    this->RegisterPhysics( new G4QStoppingPhysics("stopping",ver));
     108    this->RegisterPhysics( new G4IonBinaryCascadePhysics("ionBIC"));
     109    this->RegisterPhysics( new G4HadronInelasticQBBC("inelastic", ver, true,
    99110                true, false, false, false));
    100111
    101   } else if(type == "QBBC_HEL") {
    102     this->RegisterPhysics( new G4HadronHElasticPhysics(ver,false));
     112  } else if(type == "QBBC_HP") {
     113    this->RegisterPhysics( new G4HadronElasticPhysics("elastic",ver,true,false));
    103114    this->RegisterPhysics( new G4QStoppingPhysics("stopping",ver));
    104115    this->RegisterPhysics( new G4IonBinaryCascadePhysics("ionBIC"));
    105116    this->RegisterPhysics( new G4HadronInelasticQBBC("inelastic", ver, false,
    106                 true, false, false, false));
    107 
    108   } else if(type == "QBBC_HP") {
    109     this->RegisterPhysics( new G4HadronElasticPhysics("hElastic",ver,true,true));
    110     this->RegisterPhysics( new G4QStoppingPhysics("stopping",ver));
    111     this->RegisterPhysics( new G4IonBinaryCascadePhysics("ionBIC"));
    112     this->RegisterPhysics( new G4HadronInelasticQBBC("inelastic", ver, false,
    113                 false, false, true, false));
     117                true, false, true, false));
    114118
    115119  } else {
  • trunk/source/physics_lists/lists/src/G4HadronInelasticQBBC.cc

    r850 r921  
    2424// ********************************************************************
    2525//
    26 // $Id: G4HadronInelasticQBBC.cc,v 1.9 2008/08/05 10:25:00 vnivanch Exp $
    27 // GEANT4 tag $Name: HEAD $
     26// $Id: G4HadronInelasticQBBC.cc,v 1.15 2008/11/21 18:42:36 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-02-cand-01 $
    2828//
    2929//---------------------------------------------------------------------------
     
    5757#include "G4QStringChipsParticleLevelInterface.hh"
    5858#include "G4StringChipsInterface.hh"
     59#include "G4GeneratorPrecompoundInterface.hh"
    5960#include "G4QGSMFragmentation.hh"
    6061#include "G4LundStringFragmentation.hh"
     
    7879    chipsFlag(chips), hpFlag(hp), glFlag(glauber), wasActivated(false)
    7980{
    80   if(verbose > -1) G4cout << "### HadronInelasticQBBC" << G4endl;
    81   //  store = G4HadronProcessStore::Instance();
     81  if(verbose > 1) G4cout << "### HadronInelasticQBBC bertFlag= " <<  bertFlag <<G4endl;
    8282  theHPXSecI = 0;
    8383  theHPXSecC = 0;
    8484  theHPXSecF = 0;
    8585  theCascade = 0;
     86  preCompound = 0;
    8687  theCHIPSCascade   = 0;
    8788  theQuasiElastic   = 0;
    8889  theQGStringDecay  = 0;
    8990  theQGStringModel  = 0;
    90   theFTFStringDecay = 0;
    91   theFTFStringModel = 0;
     91  theFTFBStringDecay = 0;
     92  theFTFBStringModel = 0;
     93  theFTFCStringDecay = 0;
     94  theFTFCStringModel = 0;
    9295}
    9396
     
    9598{
    9699  delete theCascade;
     100  delete preCompound;
    97101  delete theCHIPSCascade;
    98102  delete theQuasiElastic;
    99103  delete theQGStringDecay;
    100104  delete theQGStringModel;
    101   delete theFTFStringDecay;
    102   delete theFTFStringModel;
     105  delete theFTFBStringDecay;
     106  delete theFTFCStringDecay;
     107  delete theFTFBStringModel;
     108  delete theFTFCStringModel;
    103109  delete theHPXSecI;
    104110  delete theHPXSecC;
     
    121127
    122128  if(verbose > 1)
    123     G4cout << "### HadronInelasticQBBC Construct Process" << G4endl;
    124 
    125   G4double minEstring  = 4.0*GeV;
    126   G4double maxEcascade = 6.0*GeV;
    127   //  G4double minFtf      = 7.5*GeV;
     129    G4cout << "### HadronInelasticQBBC Construct Process"
     130           << " ftfFlag= " << ftfFlag << "  bertFlag= " << bertFlag
     131           << G4endl;
     132
     133  G4double minEstring  = 9.5*GeV;
     134  G4double maxEcascade = 7.5*GeV;
     135  G4double minFTF      = 4.5*GeV;
     136  G4double maxFTF      = 25.*GeV;
    128137
    129138  //Binary
     
    143152
    144153  //QGS
    145   theCascade = new G4BinaryCascade;
     154  theCascade = new G4BinaryCascade();
     155  preCompound = new G4GeneratorPrecompoundInterface();
     156
    146157  theCHIPSCascade = new G4QStringChipsParticleLevelInterface;
    147   G4TheoFSGenerator* theQGSModel = new G4TheoFSGenerator();
     158  G4TheoFSGenerator* theQGSModel = new G4TheoFSGenerator("QGSP");
    148159  theQGStringModel  = new G4QGSModel< G4QGSParticipants >;
    149160  theQGStringDecay  = new G4ExcitedStringDecay(new G4QGSMFragmentation());
    150161  theQGStringModel->SetFragmentationModel(theQGStringDecay);
    151   theQGSModel->SetTransport(theCHIPSCascade);
    152 
    153   theQuasiElastic = new G4QuasiElasticChannel;
     162  theQGSModel->SetTransport(preCompound);
     163
     164  theQuasiElastic = new G4QuasiElasticChannel();
    154165  theQGSModel->SetQuasiElasticChannel(theQuasiElastic);
    155166  theQGSModel->SetHighEnergyGenerator(theQGStringModel);
     
    157168  theQGSModel->SetMaxEnergy(100*TeV);
    158169
    159   //FTF
    160   G4TheoFSGenerator* theFTFModel = new G4TheoFSGenerator();
    161   theFTFStringModel = new G4FTFModel();
    162   theFTFStringDecay = new G4ExcitedStringDecay(new G4LundStringFragmentation());
    163   theFTFStringModel->SetFragmentationModel(theFTFStringDecay);
    164   //theFTFModel->SetTransport(theCHIPSCascade);
    165   theFTFModel->SetTransport(theCascade);
    166   theFTFModel->SetHighEnergyGenerator(theFTFStringModel);
    167   theFTFModel->SetMinEnergy(minEstring);
    168   theFTFModel->SetMaxEnergy(100*TeV);
    169   //theFTFModel->SetQuasiElasticChannel(theQuasiElastic);
     170  //FTFB
     171  G4TheoFSGenerator* theFTFBModel = new G4TheoFSGenerator("FTFP");
     172  theFTFBStringModel = new G4FTFModel();
     173  theFTFBStringDecay = new G4ExcitedStringDecay(new G4LundStringFragmentation());
     174  theFTFBStringModel->SetFragmentationModel(theFTFBStringDecay);
     175
     176  //  theFTFBModel->SetTransport(theCascade);
     177  theFTFBModel->SetTransport(preCompound);
     178  theFTFBModel->SetHighEnergyGenerator(theFTFBStringModel);
     179  theFTFBModel->SetMinEnergy(minFTF);
     180  theFTFBModel->SetMaxEnergy(100*TeV);
     181
     182  //FTFP
     183  G4TheoFSGenerator* theFTFCModel = new G4TheoFSGenerator("FTFP");
     184  theFTFCStringModel = new G4FTFModel();
     185  theFTFCStringDecay = new G4ExcitedStringDecay(new G4LundStringFragmentation());
     186  theFTFCStringModel->SetFragmentationModel(theFTFCStringDecay);
     187
     188  theFTFCModel->SetTransport(preCompound);
     189  theFTFCModel->SetHighEnergyGenerator(theFTFCStringModel);
     190  theFTFCModel->SetMinEnergy(minFTF);
     191  theFTFCModel->SetMaxEnergy(maxFTF);
    170192
    171193  theParticleIterator->reset();
     
    205227        hp->AddDataSet(&theXSecP);
    206228
    207         if(ftfFlag) hp->RegisterMe(theFTFModel);
    208         else        hp->RegisterMe(theQGSModel);
     229        hp->RegisterMe(theQGSModel);
     230        hp->RegisterMe(theFTFCModel);
     231        //if(ftfFlag) hp->RegisterMe(theFTFCModel);
     232        //else        hp->RegisterMe(theQGSModel);
    209233 
    210234        if(bertFlag) hp->RegisterMe(theBERT);
     
    216240      } else if(pname == "neutron") {
    217241        hp->AddDataSet(&theXSecN);
    218         if(ftfFlag) hp->RegisterMe(theFTFModel);
    219         else        hp->RegisterMe(theQGSModel);
     242        hp->RegisterMe(theQGSModel);
     243        hp->RegisterMe(theFTFCModel);
     244        //if(ftfFlag) hp->RegisterMe(theFTFCModel);
     245        //else        hp->RegisterMe(theQGSModel);
    220246
    221247        G4HadronCaptureProcess* theNeutronCapture =
     
    260286      } else if(pname == "pi-" || pname == "pi+") {
    261287        hp->AddDataSet(&thePiCross);
    262         if(ftfFlag) hp->RegisterMe(theFTFModel);
    263         else        hp->RegisterMe(theQGSModel);
     288        hp->RegisterMe(theQGSModel);
     289        hp->RegisterMe(theFTFCModel);
     290        //if(ftfFlag) hp->RegisterMe(theFTFCModel);
     291        //else        hp->RegisterMe(theQGSModel);
    264292
    265293        hp->RegisterMe(theBERT);
     
    274302                pname == "kaon0S"    ||
    275303                pname == "kaon0L") {
    276         hp->RegisterMe(theFTFModel);
     304        hp->RegisterMe(theFTFBModel);
    277305        hp->RegisterMe(theBERT);
    278306        //hp->AddDataSet(new G4UInelasticCrossSection(particle));
     
    284312                pname == "xi0") {
    285313
    286         hp->RegisterMe(theFTFModel);
     314        hp->RegisterMe(theFTFBModel);
    287315        hp->RegisterMe(theBERT);
    288316        //hp->AddDataSet(new G4UInelasticCrossSection(particle));
    289317
    290318      } else if(pname == "anti_proton" || pname == "anti_neutron") {
    291         hp->RegisterMe(theFTFModel);
     319        hp->RegisterMe(theFTFBModel);
    292320        hp->RegisterMe(theCHIPS);
    293321        //hp->AddDataSet(new G4UInelasticCrossSection(particle));
    294322
    295323      } else {
    296         hp->RegisterMe(theFTFModel);
     324        hp->RegisterMe(theFTFBModel);
    297325        hp->RegisterMe(theCHIPS);
    298326        //hp->AddDataSet(new G4UInelasticCrossSection(particle));
Note: See TracChangeset for help on using the changeset viewer.