Geant4
10.01.p02
|
#include <G4eplusPolarizedAnnihilation.hh>
Private Attributes | |
G4bool | isInitialised |
G4PolarizedAnnihilationModel * | emModel |
G4ThreeVector | theTargetPolarization |
G4PhysicsTable * | theAsymmetryTable |
G4PhysicsTable * | theTransverseAsymmetryTable |
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 63 of file G4eplusPolarizedAnnihilation.hh.
G4eplusPolarizedAnnihilation::G4eplusPolarizedAnnihilation | ( | const G4String & | name = "pol-annihil" | ) |
Definition at line 75 of file G4eplusPolarizedAnnihilation.cc.
References emModel, G4VProcess::enableAtRestDoIt, fAnnihilation, and G4VProcess::SetProcessSubType().
|
virtual |
Definition at line 87 of file G4eplusPolarizedAnnihilation.cc.
References theAsymmetryTable, and theTransverseAsymmetryTable.
|
virtual |
Reimplemented from G4VDiscreteProcess.
Definition at line 353 of file G4eplusPolarizedAnnihilation.cc.
References G4ParticleChangeForGamma::AddSecondary(), G4VEmProcess::fParticleChange, fStopAndKill, G4UniformRand, G4Gamma::Gamma(), G4ParticleChangeForGamma::InitializeForPostStep(), G4VParticleChange::ProposeTrackStatus(), and G4VParticleChange::SetNumberOfSecondaries().
|
inlinevirtual |
Reimplemented from G4VDiscreteProcess.
Definition at line 135 of file G4eplusPolarizedAnnihilation.hh.
References NotForced.
void G4eplusPolarizedAnnihilation::BuildAsymmetryTable | ( | const G4ParticleDefinition & | part | ) |
Definition at line 266 of file G4eplusPolarizedAnnihilation.cc.
References ComputeAsymmetry(), G4cout, G4PhysicsTable::GetFlag(), G4PhysicsVector::GetLowEdgeEnergy(), G4ProductionCutsTable::GetMaterialCutsCouple(), G4ProductionCutsTable::GetProductionCutsTable(), G4ProductionCutsTable::GetTableSize(), G4VEmProcess::LambdaBinning(), G4VEmProcess::LambdaPhysicsVector(), G4PhysicsVector::PutValue(), G4PhysicsTableHelper::SetPhysicsVector(), theAsymmetryTable, and theTransverseAsymmetryTable.
Referenced by BuildPhysicsTable().
|
virtual |
Reimplemented from G4VProcess.
Definition at line 252 of file G4eplusPolarizedAnnihilation.cc.
References BuildAsymmetryTable(), and G4VEmProcess::BuildPhysicsTable().
G4double G4eplusPolarizedAnnihilation::ComputeAsymmetry | ( | G4double | energy, |
const G4MaterialCutsCouple * | couple, | ||
const G4ParticleDefinition & | particle, | ||
G4double | cut, | ||
G4double & | tasm | ||
) |
Definition at line 305 of file G4eplusPolarizedAnnihilation.cc.
References G4VEmModel::CrossSection(), emModel, G4PolarizedAnnihilationModel::SetBeamPolarization(), G4PolarizedAnnihilationModel::SetTargetPolarization(), and theTargetPolarization.
Referenced by BuildAsymmetryTable().
|
virtual |
Implements G4VDiscreteProcess.
Definition at line 120 of file G4eplusPolarizedAnnihilation.cc.
References G4VEmProcess::CurrentMaterialCutsCoupleIndex(), DBL_MAX, G4cout, G4endl, G4Track::GetDynamicParticle(), G4PolarizationManager::GetInstance(), G4DynamicParticle::GetKineticEnergy(), G4VPhysicalVolume::GetLogicalVolume(), G4Track::GetMaterial(), G4VEmProcess::GetMeanFreePath(), G4DynamicParticle::GetMomentumDirection(), G4VPhysicalVolume::GetName(), G4LogicalVolume::GetName(), G4PolarizationHelper::GetParticleFrameX(), G4PolarizationHelper::GetParticleFrameY(), G4Track::GetPolarization(), G4Track::GetVolume(), G4PolarizationManager::GetVolumePolarization(), G4PolarizationManager::IsPolarized(), mm, theAsymmetryTable, and G4VProcess::verboseLevel.
|
protectedvirtual |
Implements G4VEmProcess.
Definition at line 95 of file G4eplusPolarizedAnnihilation.cc.
References G4VEmProcess::AddEmModel(), emModel, G4Gamma::Gamma(), isInitialised, keV, G4VEmProcess::SetBuildTableFlag(), G4VEmModel::SetHighEnergyLimit(), G4VEmProcess::SetLambdaBinning(), G4VEmModel::SetLowEnergyLimit(), G4VEmProcess::SetMaxKinEnergy(), G4VEmProcess::SetMinKinEnergy(), G4VEmProcess::SetSecondaryParticle(), G4VEmProcess::SetStartFromNullFlag(), and TeV.
|
inlinevirtual |
Implements G4VEmProcess.
Definition at line 128 of file G4eplusPolarizedAnnihilation.hh.
References G4Positron::Positron().
|
virtual |
Reimplemented from G4VDiscreteProcess.
Definition at line 186 of file G4eplusPolarizedAnnihilation.cc.
References G4VEmProcess::CurrentMaterialCutsCoupleIndex(), DBL_MAX, G4cout, G4endl, G4Track::GetDynamicParticle(), G4PolarizationManager::GetInstance(), G4DynamicParticle::GetKineticEnergy(), G4VPhysicalVolume::GetLogicalVolume(), G4Track::GetMaterial(), G4DynamicParticle::GetMomentumDirection(), G4VPhysicalVolume::GetName(), G4LogicalVolume::GetName(), G4PolarizationHelper::GetParticleFrameX(), G4PolarizationHelper::GetParticleFrameY(), G4Track::GetPolarization(), G4Track::GetVolume(), G4PolarizationManager::GetVolumePolarization(), G4PolarizationManager::IsPolarized(), mm, G4VEmProcess::PostStepGetPhysicalInteractionLength(), theAsymmetryTable, and G4VProcess::verboseLevel.
|
virtual |
Reimplemented from G4VProcess.
Definition at line 259 of file G4eplusPolarizedAnnihilation.cc.
References G4PhysicsTableHelper::PreparePhysicsTable(), G4VEmProcess::PreparePhysicsTable(), theAsymmetryTable, and theTransverseAsymmetryTable.
|
virtual |
Implements G4VEmProcess.
Definition at line 345 of file G4eplusPolarizedAnnihilation.cc.
|
private |
Definition at line 118 of file G4eplusPolarizedAnnihilation.hh.
Referenced by ComputeAsymmetry(), G4eplusPolarizedAnnihilation(), and InitialiseProcess().
|
private |
Definition at line 115 of file G4eplusPolarizedAnnihilation.hh.
Referenced by InitialiseProcess().
|
private |
Definition at line 121 of file G4eplusPolarizedAnnihilation.hh.
Referenced by BuildAsymmetryTable(), GetMeanFreePath(), PostStepGetPhysicalInteractionLength(), PreparePhysicsTable(), and ~G4eplusPolarizedAnnihilation().
|
private |
Definition at line 119 of file G4eplusPolarizedAnnihilation.hh.
Referenced by ComputeAsymmetry().
|
private |
Definition at line 122 of file G4eplusPolarizedAnnihilation.hh.
Referenced by BuildAsymmetryTable(), PreparePhysicsTable(), and ~G4eplusPolarizedAnnihilation().