ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4Channeling Class Reference

#include <geant4/tree/geant4-10.6-release/source/processes/solidstate/channeling/include/G4Channeling.hh>

+ Inheritance diagram for G4Channeling:
+ Collaboration diagram for G4Channeling:

Public Member Functions

 G4Channeling ()
 
virtual ~G4Channeling ()
 
virtual G4VParticleChangePostStepDoIt (const G4Track &, const G4Step &)
 
virtual G4bool IsApplicable (const G4ParticleDefinition &aPD)
 
virtual void BuildPhysicsTable (const G4ParticleDefinition &)
 
G4double GetCriticalAngle (const G4Track &aTrack)
 
G4double GetOscillationPeriod (const G4Track &aTrack)
 
void PosToLattice (G4StepPoint *step, G4ThreeVector &)
 
G4double GetTransverseVariationMax ()
 
void SetTransverseVariationMax (G4double aDouble)
 
G4double GetTimeStepMin ()
 
void SetTimeStepMin (G4double aDouble)
 
- Public Member Functions inherited from G4VDiscreteProcess
 G4VDiscreteProcess (const G4String &, G4ProcessType aType=fNotDefined)
 
 G4VDiscreteProcess (G4VDiscreteProcess &)
 
virtual ~G4VDiscreteProcess ()
 
virtual G4double PostStepGetPhysicalInteractionLength (const G4Track &track, G4double previousStepSize, G4ForceCondition *condition)
 
virtual G4double AlongStepGetPhysicalInteractionLength (const G4Track &, G4double, G4double, G4double &, G4GPILSelection *)
 
virtual G4double AtRestGetPhysicalInteractionLength (const G4Track &, G4ForceCondition *)
 
virtual G4VParticleChangeAtRestDoIt (const G4Track &, const G4Step &)
 
virtual G4VParticleChangeAlongStepDoIt (const G4Track &, const G4Step &)
 
- Public Member Functions inherited from G4VProcess
 G4VProcess (const G4String &aName="NoName", G4ProcessType aType=fNotDefined)
 
 G4VProcess (const G4VProcess &right)
 
virtual ~G4VProcess ()
 
G4bool operator== (const G4VProcess &right) const
 
G4bool operator!= (const G4VProcess &right) const
 
G4double GetCurrentInteractionLength () const
 
void SetPILfactor (G4double value)
 
G4double GetPILfactor () const
 
G4double AlongStepGPIL (const G4Track &track, G4double previousStepSize, G4double currentMinimumStep, G4double &proposedSafety, G4GPILSelection *selection)
 
G4double AtRestGPIL (const G4Track &track, G4ForceCondition *condition)
 
G4double PostStepGPIL (const G4Track &track, G4double previousStepSize, G4ForceCondition *condition)
 
virtual void PreparePhysicsTable (const G4ParticleDefinition &)
 
virtual G4bool StorePhysicsTable (const G4ParticleDefinition *, const G4String &, G4bool)
 
virtual G4bool RetrievePhysicsTable (const G4ParticleDefinition *, const G4String &, G4bool)
 
const G4StringGetPhysicsTableFileName (const G4ParticleDefinition *, const G4String &directory, const G4String &tableName, G4bool ascii=false)
 
const G4StringGetProcessName () const
 
G4ProcessType GetProcessType () const
 
void SetProcessType (G4ProcessType)
 
G4int GetProcessSubType () const
 
void SetProcessSubType (G4int)
 
virtual void StartTracking (G4Track *)
 
virtual void EndTracking ()
 
virtual void SetProcessManager (const G4ProcessManager *)
 
virtual const G4ProcessManagerGetProcessManager ()
 
virtual void ResetNumberOfInteractionLengthLeft ()
 
G4double GetNumberOfInteractionLengthLeft () const
 
G4double GetTotalNumberOfInteractionLengthTraversed () const
 
G4bool isAtRestDoItIsEnabled () const
 
G4bool isAlongStepDoItIsEnabled () const
 
G4bool isPostStepDoItIsEnabled () const
 
virtual void DumpInfo () const
 
virtual void ProcessDescription (std::ostream &outfile) const
 
void SetVerboseLevel (G4int value)
 
G4int GetVerboseLevel () const
 
virtual void SetMasterProcess (G4VProcess *masterP)
 
const G4VProcessGetMasterProcess () const
 
virtual void BuildWorkerPhysicsTable (const G4ParticleDefinition &part)
 
virtual void PrepareWorkerPhysicsTable (const G4ParticleDefinition &)
 

Protected Member Functions

virtual G4double GetMeanFreePath (const G4Track &, G4double, G4ForceCondition *)
 

Private Member Functions

G4ParticleDefinitionGetParticleDefinition (const G4Track &aTrack)
 
G4StepPointGetPre (const G4Track &aTrack)
 
G4StepPointGetPost (const G4Track &aTrack)
 
G4ChannelingMaterialDataGetMatData (const G4Track &aTrack)
 
G4ChannelingTrackDataGetTrackData (const G4Track &)
 
G4bool UpdateIntegrationStep (const G4Track &, G4ThreeVector &, G4double &)
 
G4bool UpdateParameters (const G4Track &)
 
void GetEF (const G4Track &, G4ThreeVector &, G4ThreeVector &)
 

Private Attributes

G4int fChannelingID
 
G4double fTimeStepMin
 
G4double fTimeStepMax
 
G4double fTransverseVariationMax
 
const G4ThreeVector k010
 
G4ThreeVector fSpin
 

Additional Inherited Members

- Static Public Member Functions inherited from G4VProcess
static const G4StringGetProcessTypeName (G4ProcessType)
 
- Protected Attributes inherited from G4VProcess
const G4ProcessManageraProcessManager
 
G4VParticleChangepParticleChange
 
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
 

Detailed Description

Definition at line 40 of file G4Channeling.hh.

View newest version in sPHENIX GitHub at line 40 of file G4Channeling.hh

Constructor & Destructor Documentation

G4Channeling::G4Channeling ( )

Definition at line 36 of file G4Channeling.cc.

View newest version in sPHENIX GitHub at line 36 of file G4Channeling.cc

References fChannelingID, fSpin, G4PhysicsModelCatalog::GetIndex(), and G4PhysicsModelCatalog::Register().

+ Here is the call graph for this function:

G4Channeling::~G4Channeling ( )
virtual

Definition at line 52 of file G4Channeling.cc.

View newest version in sPHENIX GitHub at line 52 of file G4Channeling.cc

Member Function Documentation

virtual void G4Channeling::BuildPhysicsTable ( const G4ParticleDefinition )
inlinevirtual

Reimplemented from G4VProcess.

Definition at line 51 of file G4Channeling.hh.

View newest version in sPHENIX GitHub at line 51 of file G4Channeling.hh

G4double G4Channeling::GetCriticalAngle ( const G4Track aTrack)
inline

Definition at line 84 of file G4Channeling.hh.

View newest version in sPHENIX GitHub at line 84 of file G4Channeling.hh

References GetMatData(), and GetPre().

Referenced by GetOscillationPeriod().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4Channeling::GetEF ( const G4Track aTrack,
G4ThreeVector pos,
G4ThreeVector out 
)
private

Definition at line 68 of file G4Channeling.cc.

View newest version in sPHENIX GitHub at line 68 of file G4Channeling.cc

References GetMatData().

Referenced by UpdateParameters().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4ChannelingMaterialData* G4Channeling::GetMatData ( const G4Track aTrack)
inlineprivate

Definition at line 68 of file G4Channeling.hh.

View newest version in sPHENIX GitHub at line 68 of file G4Channeling.hh

References G4VPhysicalVolume::GetLogicalVolume(), G4LogicalVolume::GetMaterial(), G4Track::GetVolume(), G4LogicalVolume::IsExtended(), and G4ExtendedMaterial::RetrieveExtension().

Referenced by GetCriticalAngle(), GetEF(), GetOscillationPeriod(), PostStepDoIt(), UpdateIntegrationStep(), and UpdateParameters().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4Channeling::GetMeanFreePath ( const G4Track aTrack,
G4double  ,
G4ForceCondition condition 
)
protectedvirtual

Implements G4VDiscreteProcess.

Definition at line 300 of file G4Channeling.cc.

View newest version in sPHENIX GitHub at line 300 of file G4Channeling.cc

References DBL_MAX, Forced, fTimeStepMin, G4VPhysicalVolume::GetLogicalVolume(), G4Track::GetNextVolume(), GetOscillationPeriod(), GetTrackData(), G4Track::GetVolume(), G4LogicalCrystalVolume::IsLattice(), and G4ChannelingTrackData::Reset().

+ Here is the call graph for this function:

G4double G4Channeling::GetOscillationPeriod ( const G4Track aTrack)
inline

Definition at line 87 of file G4Channeling.hh.

View newest version in sPHENIX GitHub at line 87 of file G4Channeling.hh

References GetCriticalAngle(), GetMatData(), and CLHEP::pi.

Referenced by GetMeanFreePath().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4ParticleDefinition* G4Channeling::GetParticleDefinition ( const G4Track aTrack)
inlineprivate

Definition at line 59 of file G4Channeling.hh.

View newest version in sPHENIX GitHub at line 59 of file G4Channeling.hh

References G4Track::GetParticleDefinition().

Referenced by UpdateParameters().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4StepPoint* G4Channeling::GetPost ( const G4Track aTrack)
inlineprivate

Definition at line 64 of file G4Channeling.hh.

View newest version in sPHENIX GitHub at line 64 of file G4Channeling.hh

References G4Step::GetPostStepPoint(), and G4Track::GetStep().

+ Here is the call graph for this function:

G4StepPoint* G4Channeling::GetPre ( const G4Track aTrack)
inlineprivate

Definition at line 63 of file G4Channeling.hh.

View newest version in sPHENIX GitHub at line 63 of file G4Channeling.hh

References G4Step::GetPreStepPoint(), and G4Track::GetStep().

Referenced by GetCriticalAngle(), and UpdateIntegrationStep().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4Channeling::GetTimeStepMin ( )
inline

Definition at line 117 of file G4Channeling.hh.

View newest version in sPHENIX GitHub at line 117 of file G4Channeling.hh

References fTimeStepMin.

G4ChannelingTrackData * G4Channeling::GetTrackData ( const G4Track aTrack)
private

Definition at line 56 of file G4Channeling.cc.

View newest version in sPHENIX GitHub at line 56 of file G4Channeling.cc

References fChannelingID, G4Track::GetAuxiliaryTrackInformation(), and G4Track::SetAuxiliaryTrackInformation().

Referenced by GetMeanFreePath(), PostStepDoIt(), and UpdateParameters().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4Channeling::GetTransverseVariationMax ( )
inline

Definition at line 114 of file G4Channeling.hh.

View newest version in sPHENIX GitHub at line 114 of file G4Channeling.hh

References fTransverseVariationMax.

virtual G4bool G4Channeling::IsApplicable ( const G4ParticleDefinition aPD)
inlinevirtual

Reimplemented from G4VProcess.

Definition at line 48 of file G4Channeling.hh.

View newest version in sPHENIX GitHub at line 48 of file G4Channeling.hh

References G4ParticleDefinition::GetPDGCharge().

+ Here is the call graph for this function:

void G4Channeling::PosToLattice ( G4StepPoint step,
G4ThreeVector pos 
)

Definition at line 78 of file G4Channeling.cc.

View newest version in sPHENIX GitHub at line 78 of file G4Channeling.cc

References G4TouchableHistory::GetRotation(), G4StepPoint::GetTouchable(), and G4TouchableHistory::GetTranslation().

Referenced by PostStepDoIt(), and UpdateParameters().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4Channeling::SetTimeStepMin ( G4double  aDouble)
inline

Definition at line 118 of file G4Channeling.hh.

View newest version in sPHENIX GitHub at line 118 of file G4Channeling.hh

References fTimeStepMin.

void G4Channeling::SetTransverseVariationMax ( G4double  aDouble)
inline

Definition at line 115 of file G4Channeling.hh.

View newest version in sPHENIX GitHub at line 115 of file G4Channeling.hh

References fTransverseVariationMax.

G4bool G4Channeling::UpdateIntegrationStep ( const G4Track aTrack,
G4ThreeVector mom,
G4double step 
)
private

Definition at line 268 of file G4Channeling.cc.

View newest version in sPHENIX GitHub at line 268 of file G4Channeling.cc

References fTimeStepMax, fTimeStepMin, fTransverseVariationMax, GetMatData(), G4Analysis::GetMax(), GetPre(), CLHEP::Hep3Vector::x(), and CLHEP::Hep3Vector::y().

Referenced by UpdateParameters().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4bool G4Channeling::UpdateParameters ( const G4Track aTrack)
private

Definition at line 87 of file G4Channeling.cc.

View newest version in sPHENIX GitHub at line 87 of file G4Channeling.cc

References CLHEP::c_light, DBL_MAX, E, G4UniformRand, G4ChannelingMaterialData::GetBR(), G4ChannelingECHARM::GetEC(), GetEF(), G4ChannelingMaterialData::GetEFX(), G4ChannelingMaterialData::GetEFY(), G4ChannelingMaterialData::GetElD(), G4ChannelingECHARM::GetIntSp(), G4VPhysicalVolume::GetLogicalVolume(), GetMatData(), G4StepPoint::GetMomentum(), G4ChannelingMaterialData::GetNuD(), GetParticleDefinition(), G4ParticleDefinition::GetPDGCharge(), G4ChannelingTrackData::GetPosCh(), G4StepPoint::GetPosition(), G4Step::GetPostStepPoint(), G4ChannelingMaterialData::GetPot(), G4Step::GetPreStepPoint(), G4TouchableHistory::GetRotation(), G4Track::GetStep(), G4StepPoint::GetTouchable(), GetTrackData(), G4Track::GetVelocity(), G4Track::GetVolume(), G4ChannelingMaterialData::IsBent(), k010, mom, pos(), PosToLattice(), posX, posY, CLHEP::Hep3Vector::rotate(), G4LogicalCrystalVolume::RotateToLattice(), G4ChannelingTrackData::SetEFX(), G4ChannelingTrackData::SetEFY(), G4ChannelingTrackData::SetElD(), G4ChannelingTrackData::SetMomCh(), G4ChannelingTrackData::SetNuD(), G4ChannelingTrackData::SetPosCh(), CLHEP::Hep3Vector::setX(), Acts::Test::step(), UpdateIntegrationStep(), CLHEP::Hep3Vector::x(), x, Z, and CLHEP::Hep3Vector::z().

Referenced by PostStepDoIt().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

G4int G4Channeling::fChannelingID
private

Definition at line 95 of file G4Channeling.hh.

View newest version in sPHENIX GitHub at line 95 of file G4Channeling.hh

Referenced by G4Channeling(), and GetTrackData().

G4ThreeVector G4Channeling::fSpin
private

Definition at line 127 of file G4Channeling.hh.

View newest version in sPHENIX GitHub at line 127 of file G4Channeling.hh

Referenced by G4Channeling(), and PostStepDoIt().

G4double G4Channeling::fTimeStepMax
private

Definition at line 122 of file G4Channeling.hh.

View newest version in sPHENIX GitHub at line 122 of file G4Channeling.hh

Referenced by UpdateIntegrationStep().

G4double G4Channeling::fTimeStepMin
private

Definition at line 118 of file G4Channeling.hh.

View newest version in sPHENIX GitHub at line 118 of file G4Channeling.hh

Referenced by GetMeanFreePath(), GetTimeStepMin(), SetTimeStepMin(), and UpdateIntegrationStep().

G4double G4Channeling::fTransverseVariationMax
private

Definition at line 124 of file G4Channeling.hh.

View newest version in sPHENIX GitHub at line 124 of file G4Channeling.hh

Referenced by GetTransverseVariationMax(), SetTransverseVariationMax(), and UpdateIntegrationStep().

const G4ThreeVector G4Channeling::k010
private

Definition at line 126 of file G4Channeling.hh.

View newest version in sPHENIX GitHub at line 126 of file G4Channeling.hh

Referenced by PostStepDoIt(), and UpdateParameters().


The documentation for this class was generated from the following files: