BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
BDSLaserCompton Class Reference

Laser compton scattering process to achieve a laserwire. More...

#include <BDSLaserCompton.hh>

Inheritance diagram for BDSLaserCompton:
Inheritance graph
Collaboration diagram for BDSLaserCompton:
Collaboration graph

Public Member Functions

 BDSLaserCompton (const G4String &processName="eLaser")
 
virtual G4bool IsApplicable (const G4ParticleDefinition &)
 Overridden from G4VProcess - whether applicable to a particular particle.
 
virtual G4double GetMeanFreePath (const G4Track &track, G4double previousStepSize, G4ForceCondition *condition)
 Overridden from G4VDiscreteProcess.
 
virtual G4VParticleChange * PostStepDoIt (const G4Track &track, const G4Step &step)
 
void SetLaserDirection (G4ThreeVector aDirection)
 
G4ThreeVector GetLaserDirection () const
 
void SetLaserWavelength (G4double aWavelength)
 
G4double GetLaserWavelength () const
 

Protected Member Functions

G4double ComputeMeanFreePath (const G4ParticleDefinition *ParticleType, G4double KineticEnergy, const G4Material *aMaterial)
 

Private Member Functions

BDSLaserComptonoperator= (const BDSLaserCompton &right)
 
 BDSLaserCompton (const BDSLaserCompton &)
 

Private Attributes

BDSGlobalConstantsglobals
 
G4double laserWavelength
 
G4ThreeVector laserDirection
 
G4double laserEnergy
 
BDSComptonEnginecomptonEngine
 

Detailed Description

Laser compton scattering process to achieve a laserwire.

This tests whether the current track is in a 'laservacuum' material as defined by BDSMaterials and if so simulates compton scattering of a photon from the incident particle.

This is long standing code and hasn't been used for sometime and should be validated.

Author
Grahame Blair

Definition at line 53 of file BDSLaserCompton.hh.

Constructor & Destructor Documentation

◆ BDSLaserCompton()

BDSLaserCompton::BDSLaserCompton ( const G4String &  processName = "eLaser")
explicit

Definition at line 28 of file BDSLaserCompton.cc.

◆ ~BDSLaserCompton()

BDSLaserCompton::~BDSLaserCompton ( )
virtual

Definition at line 38 of file BDSLaserCompton.cc.

Member Function Documentation

◆ GetLaserDirection()

G4ThreeVector BDSLaserCompton::GetLaserDirection ( ) const
inline

Definition at line 114 of file BDSLaserCompton.hh.

◆ GetLaserWavelength()

G4double BDSLaserCompton::GetLaserWavelength ( ) const
inline

Definition at line 120 of file BDSLaserCompton.hh.

◆ GetMeanFreePath()

G4double BDSLaserCompton::GetMeanFreePath ( const G4Track &  track,
G4double  previousStepSize,
G4ForceCondition *  condition 
)
inlinevirtual

Overridden from G4VDiscreteProcess.

Definition at line 101 of file BDSLaserCompton.hh.

References BDSMaterials::GetMaterial(), and BDSMaterials::Instance().

Here is the call graph for this function:

◆ IsApplicable()

G4bool BDSLaserCompton::IsApplicable ( const G4ParticleDefinition &  particle)
inlinevirtual

Overridden from G4VProcess - whether applicable to a particular particle.

Definition at line 96 of file BDSLaserCompton.hh.

◆ PostStepDoIt()

G4VParticleChange * BDSLaserCompton::PostStepDoIt ( const G4Track &  track,
const G4Step &  step 
)
virtual

Definition at line 43 of file BDSLaserCompton.cc.

◆ SetLaserDirection()

void BDSLaserCompton::SetLaserDirection ( G4ThreeVector  aDirection)
inline

Definition at line 111 of file BDSLaserCompton.hh.

◆ SetLaserWavelength()

void BDSLaserCompton::SetLaserWavelength ( G4double  aWavelength)
inline

Definition at line 117 of file BDSLaserCompton.hh.

Field Documentation

◆ comptonEngine

BDSComptonEngine* BDSLaserCompton::comptonEngine
private

Definition at line 93 of file BDSLaserCompton.hh.

◆ globals

BDSGlobalConstants* BDSLaserCompton::globals
private

Definition at line 88 of file BDSLaserCompton.hh.

◆ laserDirection

G4ThreeVector BDSLaserCompton::laserDirection
private

Definition at line 91 of file BDSLaserCompton.hh.

◆ laserEnergy

G4double BDSLaserCompton::laserEnergy
private

Definition at line 92 of file BDSLaserCompton.hh.

◆ laserWavelength

G4double BDSLaserCompton::laserWavelength
private

Definition at line 90 of file BDSLaserCompton.hh.


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