23 #include <Geant4/G4SystemOfUnits.hh>
24 #include <Geant4/G4UnitsTable.hh>
26 #include <Geant4/G4EmStandardPhysics.hh>
27 #include <Geant4/G4EmExtraPhysics.hh>
28 #include <Geant4/G4OpticalPhysics.hh>
29 #include <Geant4/G4EmParameters.hh>
30 #include <Geant4/G4DecayPhysics.hh>
31 #include <Geant4/G4NuclideTable.hh>
36 #include <Geant4/G4BosonConstructor.hh>
37 #include <Geant4/G4LeptonConstructor.hh>
38 #include <Geant4/G4MesonConstructor.hh>
39 #include <Geant4/G4BaryonConstructor.hh>
40 #include <Geant4/G4IonConstructor.hh>
41 #include <Geant4/G4ShortLivedConstructor.hh>
45 :G4VModularPhysicsList()
48 SetVerboseLevel(verb);
52 new G4UnitDefinition(
"millielectronVolt",
"meV",
"Energy", 1.
e-3*
eV);
54 const G4double minute = 60*second;
55 const G4double hour = 60*minute;
56 const G4double day = 24*hour;
57 const G4double year = 365*day;
58 new G4UnitDefinition(
"minute",
"min",
"Time", minute);
59 new G4UnitDefinition(
"hour",
"h",
"Time", hour);
60 new G4UnitDefinition(
"day",
"d",
"Time", day);
61 new G4UnitDefinition(
"year",
"y",
"Time", year);
66 G4NuclideTable::GetInstance()->SetThresholdOfHalfLife(0.1*picosecond);
67 G4NuclideTable::GetInstance()->SetLevelTolerance(1.0*
eV);
70 RegisterPhysics(
new G4EmStandardPhysics());
71 G4EmParameters* param = G4EmParameters::Instance();
72 param->SetAugerCascade(
true);
73 #if G4VERSION_NUMBER >= 1004
75 param->SetStepFunctionMuHad(1., 1*
CLHEP::mm);
79 RegisterPhysics(
new G4DecayPhysics());
101 RegisterPhysics(
new G4OpticalPhysics() );
111 G4BosonConstructor pBosonConstructor;
112 pBosonConstructor.ConstructParticle();
114 G4LeptonConstructor pLeptonConstructor;
115 pLeptonConstructor.ConstructParticle();
117 G4MesonConstructor pMesonConstructor;
118 pMesonConstructor.ConstructParticle();
120 G4BaryonConstructor pBaryonConstructor;
121 pBaryonConstructor.ConstructParticle();
123 G4IonConstructor pIonConstructor;
124 pIonConstructor.ConstructParticle();
126 G4ShortLivedConstructor pShortLivedConstructor;
127 pShortLivedConstructor.ConstructParticle();
133 SetCutValue(0.7*
mm,
"proton");
134 SetCutValue(0.7*
mm,
"e-");
135 SetCutValue(0.7*
mm,
"e+");
136 SetCutValue(0.7*
mm,
"gamma");