Geant4
10.02.p02
|
#include <G4PolarizedCompton.hh>
Private Member Functions | |
void | CleanTable () |
void | BuildAsymmetryTable (const G4ParticleDefinition &part) |
G4double | ComputeAsymmetry (G4double energy, const G4MaterialCutsCouple *couple, const G4ParticleDefinition &particle, G4double cut, G4double &tAsymmetry) |
G4double | ComputeSaturationFactor (const G4Track &aTrack) |
G4PolarizedCompton & | operator= (const G4PolarizedCompton &right) |
G4PolarizedCompton (const G4PolarizedCompton &) | |
Private Attributes | |
G4bool | buildAsymmetryTable |
G4bool | useAsymmetryTable |
G4bool | isInitialised |
G4int | mType |
G4PolarizedComptonModel * | emModel |
G4ThreeVector | targetPolarization |
Static Private Attributes | |
static G4PhysicsTable * | theAsymmetryTable = nullptr |
Additional Inherited Members | |
Static Public Member Functions inherited from G4VProcess | |
static const G4String & | GetProcessTypeName (G4ProcessType) |
Protected Attributes inherited from G4VEmProcess | |
G4ParticleChangeForGamma | fParticleChange |
Protected Attributes inherited from G4VProcess | |
const G4ProcessManager * | aProcessManager |
G4VParticleChange * | pParticleChange |
G4ParticleChange | aParticleChange |
G4double | theNumberOfInteractionLengthLeft |
G4double | currentInteractionLength |
G4double | theInitialNumberOfInteractionLength |
G4String | theProcessName |
G4String | thePhysicsTableFileName |
G4ProcessType | theProcessType |
G4int | theProcessSubType |
G4double | thePILfactor |
G4bool | enableAtRestDoIt |
G4bool | enableAlongStepDoIt |
G4bool | enablePostStepDoIt |
G4int | verboseLevel |
Definition at line 72 of file G4PolarizedCompton.hh.
G4PolarizedCompton::G4PolarizedCompton | ( | const G4String & | processName = "pol-compt" , |
G4ProcessType | type = fElectromagnetic |
||
) |
Definition at line 73 of file G4PolarizedCompton.cc.
References G4Electron::Electron(), emModel, fComptonScattering, MeV, G4VEmProcess::SetBuildTableFlag(), G4VEmProcess::SetMinKinEnergyPrim(), G4VProcess::SetProcessSubType(), G4VEmProcess::SetSecondaryParticle(), G4VEmProcess::SetSplineFlag(), and G4VEmProcess::SetStartFromNullFlag().
|
virtual |
Definition at line 93 of file G4PolarizedCompton.cc.
References CleanTable().
|
private |
|
private |
Definition at line 285 of file G4PolarizedCompton.cc.
References CleanTable(), ComputeAsymmetry(), emax, G4INCL::KinematicsUtils::energy(), G4PhysicsVector::Energy(), G4PhysicsTable::GetFlag(), G4ProductionCutsTable::GetMaterialCutsCouple(), G4ProductionCutsTable::GetProductionCutsTable(), G4ProductionCutsTable::GetTableSize(), G4VEmProcess::LambdaBinning(), G4VEmProcess::MaxKinEnergy(), G4VEmProcess::MinKinEnergy(), G4PhysicsTableHelper::PreparePhysicsTable(), G4PhysicsVector::PutValue(), G4PhysicsTableHelper::SetPhysicsVector(), G4PhysicsVector::SetSpline(), and theAsymmetryTable.
Referenced by BuildPhysicsTable().
|
protectedvirtual |
Reimplemented from G4VEmProcess.
Definition at line 270 of file G4PolarizedCompton.cc.
References BuildAsymmetryTable(), buildAsymmetryTable, G4VEmProcess::BuildPhysicsTable(), emModel, and G4VProcess::GetMasterProcess().
|
private |
Definition at line 100 of file G4PolarizedCompton.cc.
References G4PhysicsTable::clearAndDestroy(), and theAsymmetryTable.
Referenced by BuildAsymmetryTable(), and ~G4PolarizedCompton().
|
private |
Definition at line 330 of file G4PolarizedCompton.cc.
References G4VEmModel::CrossSection(), emModel, G4PolarizedComptonModel::SetBeamPolarization(), and G4PolarizedComptonModel::SetTargetPolarization().
Referenced by BuildAsymmetryTable().
Definition at line 204 of file G4PolarizedCompton.cc.
References G4VEmProcess::CurrentMaterialCutsCoupleIndex(), factor, G4cout, G4endl, G4Exception(), G4Track::GetDynamicParticle(), G4PolarizationManager::GetInstance(), G4DynamicParticle::GetKineticEnergy(), G4VPhysicalVolume::GetLogicalVolume(), G4Track::GetMaterial(), G4DynamicParticle::GetMomentumDirection(), G4VPhysicalVolume::GetName(), G4LogicalVolume::GetName(), G4Track::GetPolarization(), G4Track::GetVolume(), G4PolarizationManager::GetVolumePolarization(), G4PolarizationManager::IsPolarized(), JustWarning, G4StokesVector::p3(), G4PhysicsVector::Value(), and G4VProcess::verboseLevel.
Referenced by GetMeanFreePath(), and PostStepGetPhysicalInteractionLength().
|
protectedvirtual |
Reimplemented from G4VEmProcess.
Definition at line 155 of file G4PolarizedCompton.cc.
References ComputeSaturationFactor(), DBL_MAX, G4cout, G4endl, G4VEmProcess::GetMeanFreePath(), mm, theAsymmetryTable, useAsymmetryTable, and G4VProcess::verboseLevel.
|
protectedvirtual |
Implements G4VEmProcess.
Definition at line 118 of file G4PolarizedCompton.cc.
References G4VEmProcess::AddEmModel(), emModel, G4VEmProcess::EmModel(), G4EmParameters::Instance(), isInitialised, G4EmParameters::MaxKinEnergy(), G4EmParameters::MinKinEnergy(), mType, G4VEmProcess::SetEmModel(), G4VEmModel::SetHighEnergyLimit(), and G4VEmModel::SetLowEnergyLimit().
|
virtual |
Implements G4VEmProcess.
Definition at line 111 of file G4PolarizedCompton.cc.
References G4Gamma::Gamma().
|
private |
|
protectedvirtual |
Reimplemented from G4VEmProcess.
Definition at line 173 of file G4PolarizedCompton.cc.
References ComputeSaturationFactor(), G4VProcess::currentInteractionLength, DBL_MAX, G4cout, G4endl, G4INCL::Math::max(), mm, G4VEmProcess::PostStepGetPhysicalInteractionLength(), theAsymmetryTable, G4VProcess::theNumberOfInteractionLengthLeft, useAsymmetryTable, G4VProcess::verboseLevel, and x.
|
virtual |
Implements G4VEmProcess.
Definition at line 137 of file G4PolarizedCompton.cc.
References G4VEmProcess::EmModel(), G4cout, G4endl, and G4VEmModel::GetName().
void G4PolarizedCompton::SetModel | ( | const G4String & | name | ) |
Definition at line 147 of file G4PolarizedCompton.cc.
References mType.
|
private |
Definition at line 123 of file G4PolarizedCompton.hh.
Referenced by BuildPhysicsTable().
|
private |
Definition at line 130 of file G4PolarizedCompton.hh.
Referenced by BuildPhysicsTable(), ComputeAsymmetry(), G4PolarizedCompton(), and InitialiseProcess().
|
private |
Definition at line 126 of file G4PolarizedCompton.hh.
Referenced by InitialiseProcess().
|
private |
Definition at line 127 of file G4PolarizedCompton.hh.
Referenced by InitialiseProcess(), and SetModel().
|
private |
Definition at line 132 of file G4PolarizedCompton.hh.
|
staticprivate |
Definition at line 131 of file G4PolarizedCompton.hh.
Referenced by BuildAsymmetryTable(), CleanTable(), GetMeanFreePath(), and PostStepGetPhysicalInteractionLength().
|
private |
Definition at line 124 of file G4PolarizedCompton.hh.
Referenced by GetMeanFreePath(), and PostStepGetPhysicalInteractionLength().