98 theeminusStepCut(0), theeplusStepCut(0),
99 fRadiatorCuts(0),fDetectorCuts(0),fXTRModel(
"transpM")
122 delete physicsListMessenger;
146 void Em10PhysicsList::ConstructBosons()
152 void Em10PhysicsList::ConstructLeptons()
167 void Em10PhysicsList::ConstructMesons()
179 void Em10PhysicsList::ConstructBarions()
203 void Em10PhysicsList::ConstructEM()
215 if(fXTRModel ==
"gammaR" )
228 else if(fXTRModel ==
"gammaM" )
241 else if(fXTRModel ==
"strawR" )
254 else if(fXTRModel ==
"regR" )
263 "RegularXTRadiator");
265 else if(fXTRModel ==
"transpR" )
274 "RegularXTRadiator");
276 else if(fXTRModel ==
"regM" )
285 "RegularXTRadiator");
288 else if(fXTRModel ==
"transpM" )
298 "RegularXTRadiator");
302 G4Exception(
"Invalid XTR model name",
"InvalidSetup",
316 if (particleName ==
"gamma")
325 else if (particleName ==
"e-")
329 theeminusStepCut->
SetMaxStep(MaxChargedStep) ;
342 else if (particleName ==
"e+")
361 else if( particleName ==
"mu+" ||
362 particleName ==
"mu-" )
382 particleName ==
"proton"
383 || particleName ==
"antiproton"
384 || particleName ==
"pi+"
385 || particleName ==
"pi-"
386 || particleName ==
"kaon+"
387 || particleName ==
"kaon-"
391 thehadronStepCut->
SetMaxStep(MaxChargedStep) ;
399 pmanager->
AddProcess( thehadronStepCut,-1,-1,3);
407 void Em10PhysicsList::ConstructGeneral()
438 SetCutValue(cutForGamma,
"gamma",
"DefaultRegionForTheWorld");
439 SetCutValue(cutForElectron,
"e-",
"DefaultRegionForTheWorld");
440 SetCutValue(cutForPositron,
"e+",
"DefaultRegionForTheWorld");
444 G4cout <<
"Em10PhysicsList::SetCuts:";
445 G4cout <<
"CutLength for e-, e+ and gamma is: "
474 cutForElectron = val;
481 MaxChargedStep = step ;
482 G4cout <<
" MaxChargedStep=" << MaxChargedStep <<
G4endl;
497 G4cout<<
"Radiator electron cut = "<<fElectronCut/
mm<<
" mm"<<
G4endl;
498 G4cout<<
"Radiator positron cut = "<<fPositronCut/
mm<<
" mm"<<
G4endl;
512 G4cout<<
"Detector electron cut = "<<fElectronCut/
mm<<
" mm"<<
G4endl;
513 G4cout<<
"Detector positron cut = "<<fPositronCut/
mm<<
" mm"<<
G4endl;
static G4Electron * ElectronDefinition()
static G4KaonPlus * KaonPlusDefinition()
G4Material * GetGasMaterial()
G4Region * GetRegion(const G4String &name, G4bool verbose=true) const
static G4MuonPlus * MuonPlusDefinition()
void SetCutValue(G4double aCut, const G4String &pname)
void SetMaxStep(G4double)
virtual G4bool IsApplicable(const G4ParticleDefinition &)
static G4KaonMinus * KaonMinusDefinition()
static G4Proton * ProtonDefinition()
G4int AddDiscreteProcess(G4VProcess *aProcess, G4int ord=ordDefault)
Definition of the Em10StepCut class.
void SetProductionCut(G4double cut, G4int index=-1)
#define G4BestUnit(a, b)
#define G4_USE_G4BESTUNIT_FOR_VERBOSE 1
void SetMaxStep(G4double)
static G4AntiProton * AntiProtonDefinition()
G4ProcessManager * GetProcessManager() const
static G4PionZero * PionZeroDefinition()
const G4String & GetParticleName() const
static G4RegionStore * GetInstance()
void DumpCutValuesTable(G4int flag=1)
G4GLOB_DLL std::ostream G4cout
static G4PionMinus * PionMinusDefinition()
G4int AddProcess(G4VProcess *aProcess, G4int ordAtRestDoIt=ordInActive, G4int ordAlongSteptDoIt=ordInActive, G4int ordPostStepDoIt=ordInActive)
static G4NeutrinoE * NeutrinoEDefinition()
static G4AntiNeutrinoMu * AntiNeutrinoMuDefinition()
static G4PionPlus * PionPlusDefinition()
void SetGammaCut(G4double)
void AddEmModel(G4int, G4VEmModel *, G4VEmFluctuationModel *fluc=0, const G4Region *region=0)
void SetProcessOrdering(G4VProcess *aProcess, G4ProcessVectorDoItIndex idDoIt, G4int ordDoIt=ordDefault)
void SetVerboseLevel(G4int value)
G4Material * GetAbsorberMaterial()
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
static G4Positron * PositronDefinition()
Definition of the Em10XTRTransparentRegRadModel class.
Definition of the Em10PhysicsListMessenger class.
Definition of the Em10DetectorConstruction class.
void SetElectronCut(G4double)
static G4MuonMinus * MuonMinusDefinition()
Em10PhysicsList(Em10DetectorConstruction *)
void SetProductionCuts(G4ProductionCuts *cut)
G4Material * GetFoilMaterial()
static G4AntiNeutrinoE * AntiNeutrinoEDefinition()
Definition of the Em10PhysicsList class.
static G4NeutrinoMu * NeutrinoMuDefinition()
G4LogicalVolume * GetLogicalRadiator()
#define theParticleIterator
void SetVerboseLevel(G4int value)
void SetApplyCuts(G4bool val)
static G4Gamma * GammaDefinition()