#include <G4PolarizedGammaConversion.hh>
Inheritance diagram for G4PolarizedGammaConversion:
Public Member Functions | |
G4PolarizedGammaConversion (const G4String &processName="pol-conv", G4ProcessType type=fElectromagnetic) | |
virtual | ~G4PolarizedGammaConversion () |
G4bool | IsApplicable (const G4ParticleDefinition &) |
virtual void | PrintInfo () |
Protected Member Functions | |
virtual void | InitialiseProcess (const G4ParticleDefinition *) |
Definition at line 62 of file G4PolarizedGammaConversion.hh.
G4PolarizedGammaConversion::G4PolarizedGammaConversion | ( | const G4String & | processName = "pol-conv" , |
|
G4ProcessType | type = fElectromagnetic | |||
) |
Definition at line 51 of file G4PolarizedGammaConversion.cc.
References fGammaConversion, G4VEmProcess::SetLambdaBinning(), G4VEmProcess::SetMaxKinEnergy(), G4VEmProcess::SetMinKinEnergy(), and G4VProcess::SetProcessSubType().
00052 :G4VEmProcess (processName, type), 00053 isInitialised(false) 00054 { 00055 SetLambdaBinning(100); 00056 SetMinKinEnergy(2.0*electron_mass_c2); 00057 SetMaxKinEnergy(100.0*GeV); 00058 SetProcessSubType(fGammaConversion); 00059 }
G4PolarizedGammaConversion::~G4PolarizedGammaConversion | ( | ) | [virtual] |
void G4PolarizedGammaConversion::InitialiseProcess | ( | const G4ParticleDefinition * | ) | [protected, virtual] |
Implements G4VEmProcess.
Definition at line 68 of file G4PolarizedGammaConversion.cc.
References G4VEmProcess::AddEmModel(), G4Electron::Electron(), G4VEmProcess::MaxKinEnergy(), G4VEmProcess::MinKinEnergy(), G4VEmProcess::SetBuildTableFlag(), G4VEmModel::SetHighEnergyLimit(), G4VEmModel::SetLowEnergyLimit(), G4VEmProcess::SetMinKinEnergy(), and G4VEmProcess::SetSecondaryParticle().
00069 { 00070 if(!isInitialised) { 00071 isInitialised = true; 00072 // SetVerboseLevel(1); 00073 SetBuildTableFlag(true); 00074 SetSecondaryParticle(G4Electron::Electron()); 00075 G4double emin = std::max(MinKinEnergy(), 2.0*electron_mass_c2); 00076 SetMinKinEnergy(emin); 00077 G4double emax = MaxKinEnergy(); 00078 // G4VEmModel* model = new G4BetheHeitlerModel(); 00079 G4VEmModel* model = new G4PolarizedGammaConversionModel(); 00080 model->SetLowEnergyLimit(emin); 00081 model->SetHighEnergyLimit(emax); 00082 AddEmModel(1, model); 00083 } 00084 }
G4bool G4PolarizedGammaConversion::IsApplicable | ( | const G4ParticleDefinition & | ) | [inline, virtual] |
Implements G4VEmProcess.
Definition at line 94 of file G4PolarizedGammaConversion.hh.
References G4Gamma::Gamma().
00095 { 00096 return (&p == G4Gamma::Gamma()); 00097 }
void G4PolarizedGammaConversion::PrintInfo | ( | ) | [virtual] |
Implements G4VEmProcess.
Definition at line 88 of file G4PolarizedGammaConversion.cc.
References G4cout, and G4endl.
00089 { 00090 G4cout << " Total cross sections has a good parametrisation" 00091 << " from 1.5 MeV to 100 GeV for all Z;" 00092 << "\n sampling secondary e+e- according to the polarized compton cross section" 00093 << G4endl; 00094 }