Ignore:
Timestamp:
Sep 30, 2010, 2:47:17 PM (14 years ago)
Author:
garnier
Message:

tag geant4.9.4 beta 1 + modifs locales

Location:
trunk/examples/extended/hadronic/Hadr01/src
Files:
13 edited

Legend:

Unmodified
Added
Removed
  • trunk/examples/extended/hadronic/Hadr01/src/CheckVolumeSD.cc

    r1230 r1337  
    2525//
    2626// $Id: CheckVolumeSD.cc,v 1.3 2006/06/29 17:24:02 gunter Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
  • trunk/examples/extended/hadronic/Hadr01/src/DetectorConstruction.cc

    r1230 r1337  
    2424// ********************************************************************
    2525//
    26 // $Id: DetectorConstruction.cc,v 1.6 2006/10/04 09:56:03 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     26// $Id: DetectorConstruction.cc,v 1.7 2010/06/11 17:01:26 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
     
    151151
    152152  // colors
    153   logicWorld->SetVisAttributes(G4VisAttributes::Invisible);
    154 
    155   G4VisAttributes* regWcolor = new G4VisAttributes(G4Colour(0.3, 0.3, 0.3));
    156   logicCheck->SetVisAttributes(regWcolor);
    157 
    158   G4VisAttributes* regCcolor = new G4VisAttributes(G4Colour(0., 0.3, 0.7));
    159   logicTarget->SetVisAttributes(regCcolor);
     153  G4VisAttributes zero = G4VisAttributes::Invisible;
     154  logicWorld->SetVisAttributes(&zero);
     155
     156  G4VisAttributes regWcolor(G4Colour(0.3, 0.3, 0.3));
     157  logicCheck->SetVisAttributes(&regWcolor);
     158
     159  G4VisAttributes regCcolor(G4Colour(0., 0.3, 0.7));
     160  logicTarget->SetVisAttributes(&regCcolor);
    160161
    161162  G4cout << *(G4Material::GetMaterialTable()) << G4endl;
  • trunk/examples/extended/hadronic/Hadr01/src/DetectorMessenger.cc

    r1230 r1337  
    2525//
    2626// $Id: DetectorMessenger.cc,v 1.7 2007/05/16 11:43:30 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
  • trunk/examples/extended/hadronic/Hadr01/src/EventAction.cc

    r1230 r1337  
    2424// ********************************************************************
    2525//
    26 // $Id: EventAction.cc,v 1.4 2007/05/16 11:43:30 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     26// $Id: EventAction.cc,v 1.6 2010/06/07 05:40:46 perl Exp $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
     
    4545
    4646#include "G4UImanager.hh"
    47 #include "G4TrajectoryContainer.hh"
    48 #include "G4Trajectory.hh"
    49 #include "G4VVisManager.hh"
    5047#include "G4ios.hh"
    5148
     
    9996//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    10097
    101 void EventAction::EndOfEventAction(const G4Event* evt)
     98void EventAction::EndOfEventAction(const G4Event*)
    10299{
    103   G4VVisManager* pVVisManager = G4VVisManager::GetConcreteInstance();
    104 
    105   if(pVVisManager) {
    106     G4TrajectoryContainer* trjc = evt->GetTrajectoryContainer();
    107     G4int n_trajectories = 0;
    108     if (trjc) n_trajectories = trjc->entries();
    109 
    110     for(G4int i=0; i<n_trajectories; i++) {
    111       G4Trajectory* t = (G4Trajectory*)((*(evt->GetTrajectoryContainer()))[i]);
    112       if (drawFlag == "all") t->DrawTrajectory(1000);
    113       else if ((drawFlag == "charged")&&(t->GetCharge() != 0.))
    114                              t->DrawTrajectory(1000);
    115       else if ((drawFlag == "neutral")&&(t->GetCharge() == 0.))
    116                              t->DrawTrajectory(1000);
    117       else if ((drawFlag == "charged+n")&&((t->GetCharge() != 0.)||
    118                                            (t->GetCharge()==0.&&t->GetParticleName()=="neutron")))
    119                              t->DrawTrajectory(1000);
    120     }
    121   }
    122 
    123100  if(debugStarted) {
    124101    UI->ApplyCommand("/tracking/verbose  0");
  • trunk/examples/extended/hadronic/Hadr01/src/EventActionMessenger.cc

    r1230 r1337  
    2525//
    2626// $Id: EventActionMessenger.cc,v 1.3 2006/06/29 17:24:11 gunter Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
  • trunk/examples/extended/hadronic/Hadr01/src/HistoManager.cc

    r1230 r1337  
    2424// ********************************************************************
    2525//
    26 // $Id: HistoManager.cc,v 1.16 2009/09/02 10:21:32 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     26// $Id: HistoManager.cc,v 1.17 2010/01/13 15:53:44 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929//---------------------------------------------------------------------------
     
    422422  // Forward
    423423  if(z > -absZ0 && dir.z() > 0.0) {
     424    isLeaking = true;
    424425    if(pd == neutron) {
    425       n_neu_forw++;
     426      ++n_neu_forw;
    426427      histo->fill(15,e,1.0);
    427428    } else isLeaking = true;
     
    429430    // Backward
    430431  } else if (z < absZ0 && dir.z() < 0.0) {
     432    isLeaking = true;
    431433    if(pd == neutron) {
    432       n_neu_leak++;
     434      ++n_neu_back;
    433435      histo->fill(16,e,1.0);
    434436    } else isLeaking = true;
     
    438440    isLeaking = true;
    439441    if(pd == neutron) {
    440       n_neu_back++;
     442      ++n_neu_leak;
    441443      histo->fill(14,e,1.0);
    442444    } else isLeaking = true;
     
    447449    if(pd == G4Proton::Proton()) {
    448450      histo->fill(17,e,1.0);
    449       n_prot_leak++;
     451      ++n_prot_leak;
    450452    } else if (pd == G4PionPlus::PionPlus() || pd == G4PionMinus::PionMinus()) {
    451453      histo->fill(18,e,1.0);
    452       n_pion_leak++;
     454      ++n_pion_leak;
    453455    }
    454456  }
  • trunk/examples/extended/hadronic/Hadr01/src/HistoMessenger.cc

    r1230 r1337  
    2626//
    2727// $Id: HistoMessenger.cc,v 1.5 2006/06/29 17:24:18 gunter Exp $
    28 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     28// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2929//
    3030/////////////////////////////////////////////////////////////////////////
  • trunk/examples/extended/hadronic/Hadr01/src/PhysicsList.cc

    r1230 r1337  
    2525//
    2626//
    27 // $Id: PhysicsList.cc,v 1.31 2009/08/28 09:21:34 vnivanch Exp $
    28 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// $Id: PhysicsList.cc,v 1.33 2010/06/11 17:01:26 vnivanch Exp $
     28// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2929//
    3030/////////////////////////////////////////////////////////////////////////
     
    4545
    4646#include "G4DecayPhysics.hh"
     47#include "G4EmStandardPhysics.hh"
     48#include "G4EmStandardPhysics_option1.hh"
     49#include "G4EmStandardPhysics_option2.hh"
    4750#include "G4EmStandardPhysics_option3.hh"
    48 #include "G4EmStandardPhysics_option2.hh"
    49 #include "G4EmStandardPhysics_option1.hh"
    50 #include "G4EmStandardPhysics.hh"
     51#include "G4EmLivermorePhysics.hh"
     52#include "G4EmPenelopePhysics.hh"
    5153#include "G4HadronElasticPhysics.hh"
    5254#include "G4HadronDElasticPhysics.hh"
    5355#include "G4HadronQElasticPhysics.hh"
     56#include "G4HadronElasticPhysicsHP.hh"
     57#include "G4HadronElasticPhysicsLHEP.hh"
    5458#include "G4HadronHElasticPhysics.hh"
    5559#include "G4ChargeExchangePhysics.hh"
     
    9296#include "G4Electron.hh"
    9397#include "G4Positron.hh"
     98#include "G4Proton.hh"
    9499
    95100//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
     
    98103{
    99104  G4LossTableManager::Instance();
    100   defaultCutValue = 1.*mm;
     105  defaultCutValue = 0.7*mm;
    101106  cutForGamma     = defaultCutValue;
    102107  cutForElectron  = defaultCutValue;
    103108  cutForPositron  = defaultCutValue;
    104   dump            = false;
     109  cutForProton    = defaultCutValue;
    105110  verboseLevel    = 1;
    106111
     
    167172    emPhysicsList = new G4EmStandardPhysics_option1();
    168173
     174  } else if (name == "emstandard_opt0") {
     175
     176    delete emPhysicsList;
     177    emPhysicsList = new G4EmStandardPhysics();
     178
    169179  } else if (name == "FTFP_BERT_EMV") {
    170180
     
    177187    AddPhysicsList("FTFP_BERT");
    178188
    179   } else if (name == "FTFP") {
     189  } else if (name == "FTFP_BERT") {
    180190
    181191    SetBuilderList1();
    182     hadronPhys.push_back( new HadronPhysicsFTFP("hadron",true));
    183     dump = true;
    184 
    185   } else if (name == "FTFP_BERT") {
     192    hadronPhys.push_back( new HadronPhysicsFTFP_BERT());
     193
     194  } else if (name == "FTFP_BERT_TRV") {
    186195
    187196    SetBuilderList1();
    188     hadronPhys.push_back( new HadronPhysicsFTFP_BERT("hadron",true));
    189     dump = true;
    190 
    191   } else if (name == "FTFP_BERT_TRV") {
    192 
    193     SetBuilderList1();
    194     hadronPhys.push_back( new HadronPhysicsFTFP_BERT_TRV("hadron",true));
    195     dump = true;
     197    hadronPhys.push_back( new HadronPhysicsFTFP_BERT_TRV());
    196198
    197199  } else if (name == "FTF_BIC") {
    198200
    199201    SetBuilderList0();
    200     hadronPhys.push_back( new HadronPhysicsFTF_BIC("hadron",true));
    201     dump = true;
     202    hadronPhys.push_back( new HadronPhysicsFTF_BIC());
    202203
    203204  } else if (name == "LHEP") {
    204205
    205206    SetBuilderList2();
    206     hadronPhys.push_back( new HadronPhysicsLHEP("hadron"));
    207     dump = true;
     207    hadronPhys.push_back( new HadronPhysicsLHEP());
    208208
    209209  } else if (name == "LHEP_EMV") {
     
    211211    AddPhysicsList("emstandard_opt1");
    212212    SetBuilderList3();
    213     hadronPhys.push_back( new HadronPhysicsLHEP_EMV("hadron"));
    214     dump = true;
     213    hadronPhys.push_back( new HadronPhysicsLHEP_EMV());
    215214
    216215  } else if (name == "QBBC") {
    217216
    218     SetBuilderList0();
    219     hadronPhys.push_back( new G4HadronInelasticQBBC("QBBC",verboseLevel,
    220                                                     false,true,false,false,false));
    221 
    222   } else if (name == "QBBCG") {
    223 
    224     SetBuilderList0();
    225     hadronPhys.push_back( new G4ChargeExchangePhysics(verboseLevel,false));
    226     hadronPhys.push_back( new G4HadronInelasticQBBC("QBBC",verboseLevel,
    227                                                     false,true,false,false,true));
    228   } else if (name == "QBBCF") {
    229 
    230     SetBuilderList0();
    231     hadronPhys.push_back( new G4ChargeExchangePhysics(verboseLevel,false));
    232     hadronPhys.push_back( new G4HadronInelasticQBBC("QBBC",verboseLevel,
    233                                                     false,true,false,false,false));
    234 
    235   } else if (name == "QBBC_DEL") {
    236 
    237     SetBuilderList5();
    238     hadronPhys.push_back( new G4HadronInelasticQBBC("QBBC",verboseLevel,
    239                                                     false,false,false,false,true));
    240 
    241   } else if (name == "QBBC_HEL") {
    242 
     217    AddPhysicsList("emstandard_opt2");
    243218    SetBuilderList6();
    244     hadronPhys.push_back( new G4HadronInelasticQBBC("QBBC",verboseLevel,
    245                                                     false,false,false,false,true));
    246 
    247   } else if (name == "QBBC_HP") {
    248 
    249     SetBuilderList0(true);
    250     hadronPhys.push_back( new G4HadronInelasticQBBC("QBBC",verboseLevel,
    251                                                     false,false,false,true,true));
    252   } else if (name == "QGSC") {
     219    hadronPhys.push_back( new G4HadronInelasticQBBC());
     220
     221  } else if (name == "QBBC_XGG") {
     222
     223    AddPhysicsList("emstandard_opt2");
     224    SetBuilderList6();
     225    hadronPhys.push_back( new G4HadronInelasticQBBC("QBBC_XGG",verboseLevel));
     226
     227  } else if (name == "QBBC_XGGSN") {
     228
     229    AddPhysicsList("emstandard_opt2");
     230    SetBuilderList6();
     231    hadronPhys.push_back( new G4HadronInelasticQBBC("QBBC_XGG",verboseLevel));
     232
     233
     234  } else if (name == "QGSC_BERT") {
    253235
    254236    SetBuilderList4();
    255     hadronPhys.push_back( new HadronPhysicsQGSC("hadron",true));
    256     dump = true;
    257 
    258   } else if (name == "QGSC_BERT") {
     237    hadronPhys.push_back( new HadronPhysicsQGSC_BERT());
     238
     239  } else if (name == "QGSC_CHIPS") {
    259240
    260241    SetBuilderList4();
    261     hadronPhys.push_back( new HadronPhysicsQGSC_BERT("hadron",true));
    262     dump = true;
    263 
    264   } else if (name == "QGSC_CHIPS") {
    265 
    266     SetBuilderList4();
    267     hadronPhys.push_back( new HadronPhysicsQGSC_CHIPS("hadron",true));
    268     dump = true;
    269 
    270   } else if (name == "QGSC_QGSC") {
    271 
    272     SetBuilderList4();
    273     hadronPhys.push_back( new HadronPhysicsQGSC_QGSC("hadron",true));
    274     dump = true;
    275 
    276   } else if (name == "QGSC_EMV") {
    277 
    278     AddPhysicsList("emstandard_opt1");
    279     AddPhysicsList("QGSC");
    280 
    281   } else if (name == "QGSP") {
     242    hadronPhys.push_back( new HadronPhysicsQGSC_CHIPS());
     243
     244  } else if (name == "QGSP_BERT") {
    282245
    283246    SetBuilderList1();
    284     hadronPhys.push_back( new HadronPhysicsQGSP("hadron",true));
    285     dump = true;
    286 
    287   } else if (name == "QGSP_BERT") {
     247    hadronPhys.push_back( new HadronPhysicsQGSP_BERT());
     248
     249  } else if (name == "QGSP_FTFP_BERT") {
    288250
    289251    SetBuilderList1();
    290     hadronPhys.push_back( new HadronPhysicsQGSP_BERT("hadron",true));
    291     dump = true;
    292 
    293   } else if (name == "QGSP_FTFP_BERT") {
    294 
    295     SetBuilderList1();
    296     hadronPhys.push_back( new HadronPhysicsQGSP_FTFP_BERT("hadron",true));
    297     dump = true;
     252    hadronPhys.push_back( new HadronPhysicsQGSP_FTFP_BERT());
    298253
    299254  } else if (name == "QGSP_BERT_EMV") {
     
    310265
    311266    SetBuilderList1(true);
    312     hadronPhys.push_back( new HadronPhysicsQGSP_BERT_HP("hadron",true));
     267    hadronPhys.push_back( new HadronPhysicsQGSP_BERT_HP());
    313268
    314269  } else if (name == "QGSP_BIC") {
    315270
    316271    SetBuilderList0();
    317     hadronPhys.push_back( new HadronPhysicsQGSP_BIC("hadron",true));
    318     dump = true;
     272    hadronPhys.push_back( new HadronPhysicsQGSP_BIC());
     273
     274  } else if (name == "QGSP_BIC_EMY") {
     275
     276    AddPhysicsList("emstandard_opt3");
     277    SetBuilderList0();
     278    hadronPhys.push_back( new HadronPhysicsQGSP_BIC());
    319279
    320280  } else if (name == "QGS_BIC") {
    321281
    322282    SetBuilderList0();
    323     hadronPhys.push_back( new HadronPhysicsQGS_BIC("hadron",true));
    324     dump = true;
     283    hadronPhys.push_back( new HadronPhysicsQGS_BIC());
    325284
    326285  } else if (name == "QGSP_BIC_HP") {
    327286
    328287    SetBuilderList0(true);
    329     hadronPhys.push_back( new HadronPhysicsQGSP_BIC_HP("hadron",true));
    330     dump = true;
     288    hadronPhys.push_back( new HadronPhysicsQGSP_BIC_HP());
    331289
    332290  } else if (name == "QGSP_BIC_EMY") {
     
    347305void PhysicsList::SetBuilderList0(G4bool flagHP)
    348306{
    349   hadronPhys.push_back( new G4EmExtraPhysics("extra EM"));
    350   hadronPhys.push_back( new G4HadronElasticPhysics("elastic",verboseLevel,
    351                                                     flagHP));
    352   hadronPhys.push_back( new G4QStoppingPhysics("stopping",verboseLevel));
    353   hadronPhys.push_back( new G4IonBinaryCascadePhysics("ionBIC"));
    354   hadronPhys.push_back( new G4NeutronTrackingCut("nTackingCut",verboseLevel));
     307  hadronPhys.push_back( new G4EmExtraPhysics(verboseLevel));
     308  if(flagHP) {
     309    hadronPhys.push_back( new G4HadronElasticPhysicsHP(verboseLevel) );
     310  } else {
     311    hadronPhys.push_back( new G4HadronElasticPhysics(verboseLevel) );
     312  }
     313  hadronPhys.push_back( new G4QStoppingPhysics(verboseLevel));
     314  hadronPhys.push_back( new G4IonBinaryCascadePhysics(verboseLevel));
     315  hadronPhys.push_back( new G4NeutronTrackingCut(verboseLevel));
    355316}
    356317
     
    359320void PhysicsList::SetBuilderList1(G4bool flagHP)
    360321{
    361   hadronPhys.push_back( new G4EmExtraPhysics("extra EM"));
    362   hadronPhys.push_back( new G4HadronElasticPhysics("elastic",verboseLevel,
    363                                                     flagHP));
    364   hadronPhys.push_back( new G4QStoppingPhysics("stopping",verboseLevel));
    365   hadronPhys.push_back( new G4IonPhysics("ion"));
    366   hadronPhys.push_back( new G4NeutronTrackingCut("nTackingCut",verboseLevel));
    367 }
    368 
    369 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
    370 
    371 void PhysicsList::SetBuilderList2(G4bool flagHP)
    372 {
    373   hadronPhys.push_back( new G4EmExtraPhysics("extra EM"));
    374   hadronPhys.push_back( new G4HadronElasticPhysics("LElastic",verboseLevel,
    375                                                     flagHP));
    376   hadronPhys.push_back( new G4IonPhysics("ion"));
    377 }
    378 
    379 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
    380 
    381 void PhysicsList::SetBuilderList3(G4bool flagHP)
    382 {
    383   hadronPhys.push_back( new G4EmExtraPhysics("extra EM"));
    384   hadronPhys.push_back( new G4HadronElasticPhysics("LElastic",verboseLevel,
    385                                                     flagHP));
    386   hadronPhys.push_back( new G4QStoppingPhysics("stopping",verboseLevel));
    387   hadronPhys.push_back( new G4IonPhysics("ion"));
     322  hadronPhys.push_back( new G4EmExtraPhysics(verboseLevel));
     323  if(flagHP) {
     324    hadronPhys.push_back( new G4HadronElasticPhysicsHP(verboseLevel) );
     325  } else {
     326    hadronPhys.push_back( new G4HadronHElasticPhysics(verboseLevel) );
     327  }
     328  hadronPhys.push_back( new G4QStoppingPhysics(verboseLevel));
     329  hadronPhys.push_back( new G4IonPhysics(verboseLevel));
     330  hadronPhys.push_back( new G4NeutronTrackingCut(verboseLevel));
     331}
     332
     333//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
     334
     335void PhysicsList::SetBuilderList2(G4bool)
     336{
     337  hadronPhys.push_back( new G4EmExtraPhysics(verboseLevel));
     338  hadronPhys.push_back( new G4HadronElasticPhysicsLHEP(verboseLevel));
     339  hadronPhys.push_back( new G4IonPhysics(verboseLevel));
     340}
     341
     342//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
     343
     344void PhysicsList::SetBuilderList3(G4bool)
     345{
     346  hadronPhys.push_back( new G4EmExtraPhysics(verboseLevel));
     347  hadronPhys.push_back( new G4HadronElasticPhysicsLHEP(verboseLevel));
     348  hadronPhys.push_back( new G4QStoppingPhysics(verboseLevel));
     349  hadronPhys.push_back( new G4IonPhysics(verboseLevel));
    388350}
    389351
     
    392354void PhysicsList::SetBuilderList4(G4bool)
    393355{
    394   hadronPhys.push_back( new G4EmExtraPhysics("extra EM"));
    395   hadronPhys.push_back( new G4HadronQElasticPhysics("elastic",verboseLevel));
    396   hadronPhys.push_back( new G4QStoppingPhysics("stopping",verboseLevel));
    397   hadronPhys.push_back( new G4IonPhysics("ion"));
    398   hadronPhys.push_back( new G4NeutronTrackingCut("nTackingCut",verboseLevel));
    399 }
    400 
    401 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
    402 
    403 void PhysicsList::SetBuilderList5(G4bool flagHP)
    404 {
    405   hadronPhys.push_back( new G4EmExtraPhysics("extra EM"));
    406   hadronPhys.push_back( new G4HadronDElasticPhysics(verboseLevel,flagHP));
    407   hadronPhys.push_back( new G4QStoppingPhysics("stopping",verboseLevel));
    408   hadronPhys.push_back( new G4IonBinaryCascadePhysics("ionBIC"));
    409   hadronPhys.push_back( new G4NeutronTrackingCut("nTackingCut",verboseLevel));
    410 }
    411 
    412 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
    413 
    414 void PhysicsList::SetBuilderList6(G4bool flagHP)
    415 {
    416   hadronPhys.push_back( new G4EmExtraPhysics("extra EM"));
    417   hadronPhys.push_back( new G4HadronHElasticPhysics(verboseLevel,flagHP));
    418   hadronPhys.push_back( new G4QStoppingPhysics("stopping",verboseLevel));
    419   hadronPhys.push_back( new G4IonBinaryCascadePhysics("ionBIC"));
    420   hadronPhys.push_back( new G4NeutronTrackingCut("nTackingCut",verboseLevel));
     356  hadronPhys.push_back( new G4EmExtraPhysics(verboseLevel));
     357  hadronPhys.push_back( new G4HadronQElasticPhysics(verboseLevel));
     358  hadronPhys.push_back( new G4QStoppingPhysics(verboseLevel));
     359  hadronPhys.push_back( new G4IonPhysics(verboseLevel));
     360  hadronPhys.push_back( new G4NeutronTrackingCut(verboseLevel));
     361}
     362
     363//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
     364
     365void PhysicsList::SetBuilderList5(G4bool)
     366{
     367  hadronPhys.push_back( new G4EmExtraPhysics(verboseLevel));
     368  hadronPhys.push_back( new G4HadronDElasticPhysics(verboseLevel));
     369  hadronPhys.push_back( new G4QStoppingPhysics(verboseLevel));
     370  hadronPhys.push_back( new G4IonBinaryCascadePhysics(verboseLevel));
     371  hadronPhys.push_back( new G4NeutronTrackingCut(verboseLevel));
     372}
     373
     374//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.....
     375
     376void PhysicsList::SetBuilderList6(G4bool)
     377{
     378  hadronPhys.push_back( new G4EmExtraPhysics(verboseLevel));
     379  hadronPhys.push_back( new G4HadronHElasticPhysics(verboseLevel));
     380  hadronPhys.push_back( new G4QStoppingPhysics(verboseLevel));
     381  hadronPhys.push_back( new G4IonBinaryCascadePhysics(verboseLevel));
     382  hadronPhys.push_back( new G4NeutronTrackingCut(verboseLevel));
    421383}
    422384
     
    436398  SetCutValue(cutForElectron, "e-");
    437399  SetCutValue(cutForPositron, "e+");
     400  SetCutValue(cutForProton, "proton");
    438401
    439402  if (verboseLevel>0) DumpCutValuesTable();
     
    464427}
    465428
     429//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
     430
     431void PhysicsList::SetCutForProton(G4double cut)
     432{
     433  cutForProton = cut;
     434  SetParticleCuts(cutForProton, G4Proton::Proton());
     435}
     436
    466437void PhysicsList::List()
    467438{
    468   G4cout << "### PhysicsLists available: FTFP FTFP_BERT FTFP_BERT_EMV FTFP_BERT_EMX FTFP_BERT_TRV FTF_BIC LHEP LHEP_EMV"
     439  G4cout << "### PhysicsLists available: FTFP_BERT FTFP_BERT_EMV FTFP_BERT_EMX FTFP_BERT_TRV FTF_BIC"
    469440         << G4endl;
    470   G4cout << "                            QBBC QBBC_DEL QBBC_HEL QBBC_HP QGSC "
     441  G4cout << "                            LHEP LHEP_EMV QBBC QBBC_XGG QBBC_XGGSN"
    471442         << G4endl;
    472   G4cout << "                            QGSC_BERT QGSC_CHIPS QGSC_QGSC QGSC_EMV QGSP QGSP_BERT QGSP_BER_EMV "
     443  G4cout << "                            QGSC_BERT QGSC_CHIPS QGSP_BERT QGSP_BERT_EMV QGSP_BIC_EMY"
    473444         << G4endl;
    474   G4cout << "                            QGSP_BERT_EMX QGSP_BERT_HP QGSP_BIC QGSP_BIC_HP QGSP_FTFP_BERT "
     445  G4cout << "                            QGSP_BERT_EMX QGSP_BERT_HP QGSP_BIC QGSP_BIC_HP"
    475446         << G4endl;
    476447}
  • trunk/examples/extended/hadronic/Hadr01/src/PhysicsListMessenger.cc

    r1230 r1337  
    2525//
    2626//
    27 // $Id: PhysicsListMessenger.cc,v 1.4 2006/08/11 14:38:11 vnivanch Exp $
    28 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// $Id: PhysicsListMessenger.cc,v 1.7 2010/01/13 15:53:44 vnivanch Exp $
     28// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2929//
    3030//
     
    4848#include "G4UIcmdWithAString.hh"
    4949#include "G4UIcmdWithoutParameter.hh"
     50#include "G4UImanager.hh"
    5051
    5152//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
     
    5859  gammaCutCmd->SetParameterName("Gcut",false);
    5960  gammaCutCmd->SetUnitCategory("Length");
    60   gammaCutCmd->SetRange("Gcut>0.0");
     61  gammaCutCmd->SetRange("Gcut>=0.0");
    6162  gammaCutCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
    6263
     
    6566  electCutCmd->SetParameterName("Ecut",false);
    6667  electCutCmd->SetUnitCategory("Length");
    67   electCutCmd->SetRange("Ecut>0.0");
     68  electCutCmd->SetRange("Ecut>=0.0");
    6869  electCutCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
    6970 
     
    7273  posCutCmd->SetParameterName("Pcut",false);
    7374  posCutCmd->SetUnitCategory("Length");
    74   posCutCmd->SetRange("Pcut>0.0");
     75  posCutCmd->SetRange("Pcut>=0.0");
    7576  posCutCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
     77
     78  pCutCmd = new G4UIcmdWithADoubleAndUnit("/testhadr/CutProt",this);
     79  pCutCmd->SetGuidance("Set proton cut.");
     80  pCutCmd->SetParameterName("ProtCut",false);
     81  pCutCmd->SetUnitCategory("Length");
     82  pCutCmd->SetRange("ProtCut>=0.0");
     83  pCutCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
    7684
    7785  allCutCmd = new G4UIcmdWithADoubleAndUnit("/testhadr/CutsAll",this);
     
    7987  allCutCmd->SetParameterName("cut",false);
    8088  allCutCmd->SetUnitCategory("Length");
    81   allCutCmd->SetRange("cut>0.0");
     89  allCutCmd->SetRange("cut>=0.0");
    8290  allCutCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
    8391
     
    100108  delete electCutCmd;
    101109  delete posCutCmd;
     110  delete pCutCmd;
    102111  delete allCutCmd;
    103112  delete pListCmd;
     
    107116//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
    108117
    109 void PhysicsListMessenger::SetNewValue(G4UIcommand* command,
    110                                           G4String newValue)
     118void PhysicsListMessenger::SetNewValue(G4UIcommand* command, G4String newValue)
    111119{
    112   if( command == gammaCutCmd )
    113     pPhysicsList->SetCutForGamma(gammaCutCmd->GetNewDoubleValue(newValue));
     120  G4UImanager* UI = G4UImanager::GetUIpointer();
     121  if( command == gammaCutCmd ) {
     122    if(pPhysicsList) {
     123      pPhysicsList->SetCutForGamma(gammaCutCmd->GetNewDoubleValue(newValue));
     124    } else {
     125      UI->ApplyCommand("/run/setCutForAGivenParticle gamma " + newValue);
     126    }
    114127
    115   if( command == electCutCmd )
    116     pPhysicsList->SetCutForElectron(electCutCmd->GetNewDoubleValue(newValue));
     128  } else if( command == electCutCmd ) {
     129    if(pPhysicsList) {
     130      pPhysicsList->SetCutForElectron(electCutCmd->GetNewDoubleValue(newValue));
     131    } else {
     132      UI->ApplyCommand("/run/setCutForAGivenParticle e- " + newValue);
     133    }
    117134
    118   if( command == posCutCmd )
    119    pPhysicsList->SetCutForPositron(posCutCmd->GetNewDoubleValue(newValue));
     135  } else if( command == posCutCmd ) {
     136    if(pPhysicsList) {
     137      pPhysicsList->SetCutForPositron(posCutCmd->GetNewDoubleValue(newValue));
     138    } else {
     139      UI->ApplyCommand("/run/setCutForAGivenParticle e+ " + newValue);
     140    }
    120141
    121   if( command == allCutCmd )
    122     {
     142  } else if( command == pCutCmd ) {
     143    if(pPhysicsList) {
     144      pPhysicsList->SetCutForProton(pCutCmd->GetNewDoubleValue(newValue));
     145    } else {
     146      UI->ApplyCommand("/run/setCutForAGivenParticle proton " + newValue);
     147    }
     148
     149  } else if( command == allCutCmd ) {
     150
     151    if(pPhysicsList) {
    123152      G4double cut = allCutCmd->GetNewDoubleValue(newValue);
    124153      pPhysicsList->SetCutForGamma(cut);
    125154      pPhysicsList->SetCutForElectron(cut);
    126155      pPhysicsList->SetCutForPositron(cut);
     156      pPhysicsList->SetCutForProton(cut);
     157    } else {
     158      UI->ApplyCommand("/run/setCut " + newValue);
    127159    }
    128160
    129   if( command == pListCmd ) {
    130     G4String name = newValue;
    131     if(name == "PHYSLIST") {
    132       char* path = getenv(name);
    133       if (path) name = G4String(path);
    134       else {
    135         G4cout << "### PhysicsListMessenger WARNING: "
    136                << " environment variable PHYSLIST is not defined"
    137                << G4endl;
    138         return;
     161  } else if( command == pListCmd ) {
     162    if(pPhysicsList) {
     163      G4String name = newValue;
     164      if(name == "PHYSLIST") {
     165        char* path = getenv(name);
     166        if (path) name = G4String(path);
     167        else {
     168          G4cout << "### PhysicsListMessenger WARNING: "
     169                 << " environment variable PHYSLIST is not defined"
     170                 << G4endl;
     171          return;
     172        }
    139173      }
     174      pPhysicsList->AddPhysicsList(name);
     175    } else {
     176      G4cout << "### PhysicsListMessenger WARNING: "
     177             << " /testhadr/Physics UI command is not available "
     178             << "for reference Physics List" << G4endl;
    140179    }
    141     pPhysicsList->AddPhysicsList(name);
     180
     181  } else if( command == listCmd ) {
     182    if(pPhysicsList) {
     183      pPhysicsList->List();
     184    } else {
     185      G4cout << "### PhysicsListMessenger WARNING: "
     186             << " /testhadr/ListPhysics UI command is not available "
     187             << "for reference Physics List" << G4endl;
     188    }
    142189  }
    143 
    144   if( command == listCmd )
    145     pPhysicsList->List();
    146 
    147190}
    148191
  • trunk/examples/extended/hadronic/Hadr01/src/PrimaryGeneratorAction.cc

    r1230 r1337  
    2525//
    2626// $Id: PrimaryGeneratorAction.cc,v 1.4 2006/11/15 14:58:10 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
  • trunk/examples/extended/hadronic/Hadr01/src/StackingAction.cc

    r1230 r1337  
    2525//
    2626// $Id: StackingAction.cc,v 1.5 2006/10/04 09:56:03 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
  • trunk/examples/extended/hadronic/Hadr01/src/StackingMessenger.cc

    r1230 r1337  
    2525//
    2626// $Id: StackingMessenger.cc,v 1.3 2006/06/29 17:24:32 gunter Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
  • trunk/examples/extended/hadronic/Hadr01/src/TargetSD.cc

    r1230 r1337  
    2525//
    2626// $Id: TargetSD.cc,v 1.4 2006/06/29 17:24:34 gunter Exp $
    27 // GEANT4 tag $Name: geant4-09-03-cand-01 $
     27// GEANT4 tag $Name: geant4-09-04-beta-01 $
    2828//
    2929/////////////////////////////////////////////////////////////////////////
Note: See TracChangeset for help on using the changeset viewer.