CMS 3D CMS Logo

DummyEMPhysics.cc
Go to the documentation of this file.
2 #include "G4EmParameters.hh"
3 #include "G4ParticleTable.hh"
4 
5 #include "G4ParticleDefinition.hh"
6 
7 #include "G4ComptonScattering.hh"
8 #include "G4GammaConversion.hh"
9 #include "G4PhotoElectricEffect.hh"
10 
11 #include "G4eMultipleScattering.hh"
12 #include "G4eIonisation.hh"
13 #include "G4eBremsstrahlung.hh"
14 #include "G4eplusAnnihilation.hh"
15 
16 #include "G4Gamma.hh"
17 #include "G4Electron.hh"
18 #include "G4Positron.hh"
19 #include "G4LeptonConstructor.hh"
20 
21 #include "G4PhysicsListHelper.hh"
22 #include "G4BuilderType.hh"
23 
24 #include "G4SystemOfUnits.hh"
25 
27  G4VPhysicsConstructor("CMSEmGeantV"), verbose(ver) {
28  G4EmParameters* param = G4EmParameters::Instance();
29  param->SetDefaults();
30  param->SetVerbose(verbose);
31  param->SetApplyCuts(true);
32  param->SetStepFunction(0.8, 1*CLHEP::mm);
33  param->SetLossFluctuations(false);
34  param->SetMscRangeFactor(0.2);
35  param->SetMscStepLimitType(fMinimal);
36  SetPhysicsType(bElectromagnetic);
37 }
38 
40  // gamma
42 
43  // leptons
45  G4Positron::Positron();
46 
47  G4LeptonConstructor pLeptonConstructor;
48  pLeptonConstructor.ConstructParticle();
49 }
50 
52 
53  if(verbose > 0) {
54  G4cout << "### " << GetPhysicsName() << " Construct Processes " << G4endl;
55  }
56 
57  // This EM builder takes GeantV variant of physics
58 
59  G4PhysicsListHelper* ph = G4PhysicsListHelper::GetPhysicsListHelper();
60 
61  G4ParticleDefinition* particle = G4Gamma::Gamma();
62 
63  ph->RegisterProcess(new G4PhotoElectricEffect(), particle);
64  ph->RegisterProcess(new G4ComptonScattering(), particle);
65  ph->RegisterProcess(new G4GammaConversion(), particle);
66 
67  particle = G4Electron::Electron();
68 
69  ph->RegisterProcess(new G4eMultipleScattering(), particle);
70  ph->RegisterProcess(new G4eIonisation(), particle);
71  ph->RegisterProcess(new G4eBremsstrahlung(), particle);
72 
73  particle = G4Positron::Positron();
74 
75  ph->RegisterProcess(new G4eMultipleScattering(), particle);
76  ph->RegisterProcess(new G4eIonisation(), particle);
77  ph->RegisterProcess(new G4eBremsstrahlung(), particle);
78  ph->RegisterProcess(new G4eplusAnnihilation(), particle);
79 }
void ConstructParticle() override
void ConstructProcess() override
dbl * Gamma
Definition: mlp_gen.cc:38
DummyEMPhysics(G4int verb)