File indexing completed on 2026-04-09 07:52:07
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029 #include "PhysicsList.hh"
0030
0031 #include "GammaNuclearPhysics.hh"
0032 #include "GammaNuclearPhysicsLEND.hh"
0033
0034 #include "G4HadronElasticPhysicsHP.hh"
0035 #include "G4HadronElasticPhysicsXS.hh"
0036 #include "G4HadronInelasticQBBC.hh"
0037 #include "G4HadronPhysicsFTFP_BERT_HP.hh"
0038 #include "G4HadronPhysicsINCLXX.hh"
0039 #include "G4HadronPhysicsQGSP_BIC.hh"
0040 #include "G4HadronPhysicsQGSP_BIC_AllHP.hh"
0041 #include "G4HadronPhysicsQGSP_BIC_HP.hh"
0042 #include "G4HadronPhysicsShielding.hh"
0043 #include "G4IonElasticPhysics.hh"
0044 #include "G4IonINCLXXPhysics.hh"
0045 #include "G4IonPhysicsPHP.hh"
0046 #include "G4IonPhysicsXS.hh"
0047 #include "G4IonQMDPhysics.hh"
0048 #include "G4NuclideTable.hh"
0049 #include "G4SystemOfUnits.hh"
0050 #include "G4UnitsTable.hh"
0051
0052
0053
0054 #include "G4BaryonConstructor.hh"
0055 #include "G4BosonConstructor.hh"
0056 #include "G4IonConstructor.hh"
0057 #include "G4LeptonConstructor.hh"
0058 #include "G4MesonConstructor.hh"
0059 #include "G4ShortLivedConstructor.hh"
0060
0061
0062
0063 PhysicsList::PhysicsList()
0064 {
0065 G4int verb = 1;
0066 SetVerboseLevel(verb);
0067
0068
0069
0070 new G4UnitDefinition("mm2/g", "mm2/g", "Surface/Mass", mm2 / g);
0071 new G4UnitDefinition("um2/mg", "um2/mg", "Surface/Mass", um * um / mg);
0072
0073
0074
0075 const G4double meanLife = 1 * nanosecond;
0076 G4NuclideTable::GetInstance()->SetMeanLifeThreshold(meanLife);
0077
0078
0079
0080
0081 RegisterPhysics(new G4HadronElasticPhysicsXS(verb));
0082
0083
0084
0085
0086 RegisterPhysics(new G4HadronPhysicsQGSP_BIC_HP(verb));
0087
0088
0089
0090
0091
0092
0093
0094
0095
0096 RegisterPhysics(new G4IonElasticPhysics(verb));
0097
0098
0099
0100 RegisterPhysics(new G4IonPhysicsXS(verb));
0101
0102
0103
0104
0105
0106
0107 RegisterPhysics(new GammaNuclearPhysics("gamma"));
0108
0109 }
0110
0111
0112
0113 void PhysicsList::ConstructParticle()
0114 {
0115 G4BosonConstructor pBosonConstructor;
0116 pBosonConstructor.ConstructParticle();
0117
0118 G4LeptonConstructor pLeptonConstructor;
0119 pLeptonConstructor.ConstructParticle();
0120
0121 G4MesonConstructor pMesonConstructor;
0122 pMesonConstructor.ConstructParticle();
0123
0124 G4BaryonConstructor pBaryonConstructor;
0125 pBaryonConstructor.ConstructParticle();
0126
0127 G4IonConstructor pIonConstructor;
0128 pIonConstructor.ConstructParticle();
0129
0130 G4ShortLivedConstructor pShortLivedConstructor;
0131 pShortLivedConstructor.ConstructParticle();
0132 }
0133
0134
0135
0136 void PhysicsList::SetCuts()
0137 {
0138 SetCutValue(0. * mm, "proton");
0139 }
0140
0141