Geant4  10.00.p03
G4SPSAngDistribution Class Reference

#include <G4SPSAngDistribution.hh>

+ Collaboration diagram for G4SPSAngDistribution:

Public Member Functions

 G4SPSAngDistribution ()
 
 ~G4SPSAngDistribution ()
 
void SetAngDistType (G4String)
 
void DefineAngRefAxes (G4String, G4ThreeVector)
 
void SetMinTheta (G4double)
 
void SetMinPhi (G4double)
 
void SetMaxTheta (G4double)
 
void SetMaxPhi (G4double)
 
void SetBeamSigmaInAngR (G4double)
 
void SetBeamSigmaInAngX (G4double)
 
void SetBeamSigmaInAngY (G4double)
 
void UserDefAngTheta (G4ThreeVector)
 
void UserDefAngPhi (G4ThreeVector)
 
void SetFocusPoint (G4ThreeVector)
 
void SetParticleMomentumDirection (G4ParticleMomentum aMomentumDirection)
 
void SetUseUserAngAxis (G4bool)
 
void SetUserWRTSurface (G4bool)
 
void SetPosDistribution (G4SPSPosDistribution *a)
 
void SetBiasRndm (G4SPSRandomGenerator *a)
 
void ReSetHist (G4String)
 
void SetVerbosity (G4int a)
 
G4String GetDistType ()
 
G4double GetMinTheta ()
 
G4double GetMaxTheta ()
 
G4double GetMinPhi ()
 
G4double GetMaxPhi ()
 
G4ParticleMomentum GenerateOne ()
 

Private Member Functions

void GenerateFocusedFlux ()
 
void GenerateIsotropicFlux ()
 
void GenerateCosineLawFlux ()
 
void GenerateBeamFlux ()
 
void GeneratePlanarFlux ()
 
void GenerateUserDefFlux ()
 
G4double GenerateUserDefTheta ()
 
G4double GenerateUserDefPhi ()
 

Private Attributes

G4String AngDistType
 
G4ThreeVector AngRef1
 
G4ThreeVector AngRef2
 
G4ThreeVector AngRef3
 
G4double MinTheta
 
G4double MaxTheta
 
G4double MinPhi
 
G4double MaxPhi
 
G4double DR
 
G4double DX
 
G4double DY
 
G4double Theta
 
G4double Phi
 
G4ThreeVector FocusPoint
 
G4bool IPDFThetaExist
 
G4bool IPDFPhiExist
 
G4PhysicsOrderedFreeVector UDefThetaH
 
G4PhysicsOrderedFreeVector IPDFThetaH
 
G4PhysicsOrderedFreeVector UDefPhiH
 
G4PhysicsOrderedFreeVector IPDFPhiH
 
G4String UserDistType
 
G4bool UserWRTSurface
 
G4bool UserAngRef
 
G4ParticleMomentum particle_momentum_direction
 
G4SPSPosDistributionposDist
 
G4SPSRandomGeneratorangRndm
 
G4int verbosityLevel
 
G4PhysicsOrderedFreeVector ZeroPhysVector
 

Detailed Description

Definition at line 155 of file G4SPSAngDistribution.hh.

Constructor & Destructor Documentation

G4SPSAngDistribution::G4SPSAngDistribution ( )

Definition at line 54 of file G4SPSAngDistribution.cc.

References AngDistType, AngRef1, AngRef2, AngRef3, DR, DX, DY, FocusPoint, CLHEP::HepXHat(), CLHEP::HepYHat(), CLHEP::HepZHat(), IPDFPhiExist, IPDFThetaExist, MaxPhi, MaxTheta, MinPhi, MinTheta, particle_momentum_direction, G4INCL::Math::pi, UserAngRef, UserDistType, UserWRTSurface, and verbosityLevel.

+ Here is the call graph for this function:

G4SPSAngDistribution::~G4SPSAngDistribution ( )

Definition at line 81 of file G4SPSAngDistribution.cc.

Member Function Documentation

void G4SPSAngDistribution::DefineAngRefAxes ( G4String  refname,
G4ThreeVector  ref 
)

Definition at line 101 of file G4SPSAngDistribution.cc.

References AngRef1, AngRef2, AngRef3, G4cout, G4endl, UserAngRef, and verbosityLevel.

Referenced by G4GeneralParticleSourceMessenger::SetNewValue().

+ Here is the caller graph for this function:

void G4SPSAngDistribution::GenerateBeamFlux ( )
private

Definition at line 203 of file G4SPSAngDistribution.cc.

References AngDistType, AngRef1, AngRef2, AngRef3, DR, DX, DY, G4cout, G4endl, G4UniformRand, particle_momentum_direction, G4INCL::DeJongSpin::shoot(), UserAngRef, and verbosityLevel.

Referenced by GenerateOne().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4SPSAngDistribution::GenerateCosineLawFlux ( )
private

Definition at line 325 of file G4SPSAngDistribution.cc.

References AngRef1, AngRef2, AngRef3, angRndm, G4cout, G4endl, G4SPSRandomGenerator::GenRandPhi(), G4SPSRandomGenerator::GenRandTheta(), MaxPhi, MaxTheta, MinPhi, MinTheta, particle_momentum_direction, Phi, posDist, G4SPSPosDistribution::SideRefVec1, G4SPSPosDistribution::SideRefVec2, G4SPSPosDistribution::SideRefVec3, G4SPSPosDistribution::SourcePosType, UserAngRef, and verbosityLevel.

Referenced by GenerateOne().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4SPSAngDistribution::GenerateFocusedFlux ( )
private

Definition at line 251 of file G4SPSAngDistribution.cc.

References FocusPoint, G4cout, G4endl, particle_momentum_direction, G4SPSPosDistribution::particle_position, posDist, and verbosityLevel.

Referenced by GenerateOne().

+ Here is the caller graph for this function:

void G4SPSAngDistribution::GenerateIsotropicFlux ( )
private

Definition at line 260 of file G4SPSAngDistribution.cc.

References AngRef1, AngRef2, AngRef3, angRndm, G4cout, G4endl, G4SPSRandomGenerator::GenRandPhi(), G4SPSRandomGenerator::GenRandTheta(), MaxPhi, MaxTheta, MinPhi, MinTheta, particle_momentum_direction, Phi, posDist, G4SPSPosDistribution::SideRefVec1, G4SPSPosDistribution::SideRefVec2, G4SPSPosDistribution::SideRefVec3, G4SPSPosDistribution::SourcePosType, UserAngRef, and verbosityLevel.

Referenced by GenerateOne().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4ParticleMomentum G4SPSAngDistribution::GenerateOne ( )

Definition at line 602 of file G4SPSAngDistribution.cc.

References AngDistType, G4cout, G4endl, GenerateBeamFlux(), GenerateCosineLawFlux(), GenerateFocusedFlux(), GenerateIsotropicFlux(), GeneratePlanarFlux(), GenerateUserDefFlux(), and particle_momentum_direction.

Referenced by G4SingleParticleSource::GeneratePrimaryVertex().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4SPSAngDistribution::GeneratePlanarFlux ( )
private

Definition at line 389 of file G4SPSAngDistribution.cc.

References G4cout, G4endl, particle_momentum_direction, and verbosityLevel.

Referenced by GenerateOne().

+ Here is the caller graph for this function:

void G4SPSAngDistribution::GenerateUserDefFlux ( )
private

Definition at line 400 of file G4SPSAngDistribution.cc.

References AngRef1, AngRef2, AngRef3, angRndm, G4cout, G4endl, GenerateUserDefPhi(), GenerateUserDefTheta(), G4SPSRandomGenerator::GenRandPhi(), G4SPSRandomGenerator::GenRandTheta(), MaxPhi, MaxTheta, MinPhi, MinTheta, particle_momentum_direction, Phi, posDist, G4SPSPosDistribution::SideRefVec1, G4SPSPosDistribution::SideRefVec2, G4SPSPosDistribution::SideRefVec3, Theta, UserAngRef, UserDistType, UserWRTSurface, and verbosityLevel.

Referenced by GenerateOne().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4SPSAngDistribution::GenerateUserDefPhi ( )
private

Definition at line 542 of file G4SPSAngDistribution.cc.

References G4cout, G4endl, G4UniformRand, G4PhysicsOrderedFreeVector::GetEnergy(), G4PhysicsVector::GetLowEdgeEnergy(), G4PhysicsVector::GetVectorLength(), G4PhysicsOrderedFreeVector::InsertValues(), IPDFPhiExist, IPDFPhiH, UDefPhiH, and UserDistType.

Referenced by GenerateUserDefFlux().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4SPSAngDistribution::GenerateUserDefTheta ( )
private

Definition at line 498 of file G4SPSAngDistribution.cc.

References G4cout, G4endl, G4UniformRand, G4PhysicsOrderedFreeVector::GetEnergy(), G4PhysicsVector::GetLowEdgeEnergy(), G4PhysicsVector::GetVectorLength(), G4PhysicsOrderedFreeVector::InsertValues(), IPDFThetaExist, IPDFThetaH, UDefThetaH, and UserDistType.

Referenced by GenerateUserDefFlux().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4String G4SPSAngDistribution::GetDistType ( )
inline

Definition at line 188 of file G4SPSAngDistribution.hh.

References AngDistType.

G4double G4SPSAngDistribution::GetMaxPhi ( )
inline

Definition at line 192 of file G4SPSAngDistribution.hh.

References MaxPhi.

G4double G4SPSAngDistribution::GetMaxTheta ( )
inline

Definition at line 190 of file G4SPSAngDistribution.hh.

References MaxTheta.

G4double G4SPSAngDistribution::GetMinPhi ( )
inline

Definition at line 191 of file G4SPSAngDistribution.hh.

References MinPhi.

G4double G4SPSAngDistribution::GetMinTheta ( )
inline

Definition at line 189 of file G4SPSAngDistribution.hh.

References MinTheta.

void G4SPSAngDistribution::ReSetHist ( G4String  atype)

Definition at line 588 of file G4SPSAngDistribution.cc.

References G4cout, G4endl, IPDFPhiExist, IPDFPhiH, IPDFThetaExist, IPDFThetaH, UDefPhiH, UDefThetaH, and ZeroPhysVector.

Referenced by G4GeneralParticleSourceMessenger::SetNewValue().

+ Here is the caller graph for this function:

void G4SPSAngDistribution::SetAngDistType ( G4String  atype)
void G4SPSAngDistribution::SetBeamSigmaInAngR ( G4double  r)

Definition at line 142 of file G4SPSAngDistribution.cc.

References DR.

Referenced by G4GeneralParticleSourceMessenger::SetNewValue().

+ Here is the caller graph for this function:

void G4SPSAngDistribution::SetBeamSigmaInAngX ( G4double  r)

Definition at line 147 of file G4SPSAngDistribution.cc.

References DX.

Referenced by G4GeneralParticleSourceMessenger::SetNewValue().

+ Here is the caller graph for this function:

void G4SPSAngDistribution::SetBeamSigmaInAngY ( G4double  r)

Definition at line 152 of file G4SPSAngDistribution.cc.

References DY.

Referenced by G4GeneralParticleSourceMessenger::SetNewValue().

+ Here is the caller graph for this function:

void G4SPSAngDistribution::SetBiasRndm ( G4SPSRandomGenerator a)
inline

Definition at line 181 of file G4SPSAngDistribution.hh.

References a, and angRndm.

Referenced by G4SingleParticleSource::G4SingleParticleSource().

+ Here is the caller graph for this function:

void G4SPSAngDistribution::SetFocusPoint ( G4ThreeVector  input)

Definition at line 181 of file G4SPSAngDistribution.cc.

References FocusPoint.

Referenced by G4GeneralParticleSourceMessenger::SetNewValue().

+ Here is the caller graph for this function:

void G4SPSAngDistribution::SetMaxPhi ( G4double  maxp)

Definition at line 137 of file G4SPSAngDistribution.cc.

References MaxPhi.

Referenced by G4GeneralParticleSourceMessenger::SetNewValue().

+ Here is the caller graph for this function:

void G4SPSAngDistribution::SetMaxTheta ( G4double  maxt)

Definition at line 132 of file G4SPSAngDistribution.cc.

References MaxTheta.

Referenced by G4GeneralParticleSourceMessenger::SetNewValue(), and G4AdjointPrimaryGenerator::SetSphericalAdjointPrimarySource().

+ Here is the caller graph for this function:

void G4SPSAngDistribution::SetMinPhi ( G4double  minp)

Definition at line 127 of file G4SPSAngDistribution.cc.

References MinPhi.

Referenced by G4GeneralParticleSourceMessenger::SetNewValue().

+ Here is the caller graph for this function:

void G4SPSAngDistribution::SetMinTheta ( G4double  mint)

Definition at line 122 of file G4SPSAngDistribution.cc.

References MinTheta.

Referenced by G4GeneralParticleSourceMessenger::SetNewValue(), and G4AdjointPrimaryGenerator::SetSphericalAdjointPrimarySource().

+ Here is the caller graph for this function:

void G4SPSAngDistribution::SetParticleMomentumDirection ( G4ParticleMomentum  aMomentumDirection)
inline

Definition at line 175 of file G4SPSAngDistribution.hh.

References particle_momentum_direction.

Referenced by G4AdjointPrimaryGenerator::GenerateAdjointPrimaryVertex(), G4AdjointPrimaryGenerator::GenerateFwdPrimaryVertex(), G4GeneralParticleSourceMessenger::SetNewValue(), and UltraPrimaryGeneratorAction::UltraPrimaryGeneratorAction().

+ Here is the caller graph for this function:

void G4SPSAngDistribution::SetPosDistribution ( G4SPSPosDistribution a)
inline

Definition at line 180 of file G4SPSAngDistribution.hh.

References a, and posDist.

Referenced by G4SingleParticleSource::G4SingleParticleSource().

+ Here is the caller graph for this function:

void G4SPSAngDistribution::SetUserWRTSurface ( G4bool  wrtSurf)

Definition at line 186 of file G4SPSAngDistribution.cc.

References UserWRTSurface.

Referenced by G4GeneralParticleSourceMessenger::SetNewValue().

+ Here is the caller graph for this function:

void G4SPSAngDistribution::SetUseUserAngAxis ( G4bool  userang)

Definition at line 196 of file G4SPSAngDistribution.cc.

References UserAngRef.

Referenced by G4GeneralParticleSourceMessenger::SetNewValue().

+ Here is the caller graph for this function:

void G4SPSAngDistribution::SetVerbosity ( G4int  a)
inline

Definition at line 186 of file G4SPSAngDistribution.hh.

References a, and verbosityLevel.

Referenced by G4SingleParticleSource::SetVerbosity().

+ Here is the caller graph for this function:

void G4SPSAngDistribution::UserDefAngPhi ( G4ThreeVector  input)

Definition at line 169 of file G4SPSAngDistribution.cc.

References G4cout, G4endl, G4PhysicsOrderedFreeVector::InsertValues(), UDefPhiH, UserDistType, and verbosityLevel.

Referenced by G4GeneralParticleSourceMessenger::SetNewValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4SPSAngDistribution::UserDefAngTheta ( G4ThreeVector  input)

Definition at line 157 of file G4SPSAngDistribution.cc.

References G4cout, G4endl, G4PhysicsOrderedFreeVector::InsertValues(), UDefThetaH, UserDistType, and verbosityLevel.

Referenced by G4GeneralParticleSourceMessenger::SetNewValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

G4String G4SPSAngDistribution::AngDistType
private
G4SPSRandomGenerator* G4SPSAngDistribution::angRndm
private
G4double G4SPSAngDistribution::DR
private
G4double G4SPSAngDistribution::DX
private
G4double G4SPSAngDistribution::DY
private
G4ThreeVector G4SPSAngDistribution::FocusPoint
private
G4bool G4SPSAngDistribution::IPDFPhiExist
private
G4PhysicsOrderedFreeVector G4SPSAngDistribution::IPDFPhiH
private

Definition at line 220 of file G4SPSAngDistribution.hh.

Referenced by GenerateUserDefPhi(), ReSetHist(), and SetAngDistType().

G4bool G4SPSAngDistribution::IPDFThetaExist
private
G4PhysicsOrderedFreeVector G4SPSAngDistribution::IPDFThetaH
private

Definition at line 218 of file G4SPSAngDistribution.hh.

Referenced by GenerateUserDefTheta(), ReSetHist(), and SetAngDistType().

G4double G4SPSAngDistribution::MaxPhi
private
G4double G4SPSAngDistribution::MinPhi
private
G4double G4SPSAngDistribution::MinTheta
private
G4double G4SPSAngDistribution::Phi
private
G4double G4SPSAngDistribution::Theta
private

Definition at line 214 of file G4SPSAngDistribution.hh.

Referenced by GenerateUserDefFlux().

G4PhysicsOrderedFreeVector G4SPSAngDistribution::UDefPhiH
private
G4PhysicsOrderedFreeVector G4SPSAngDistribution::UDefThetaH
private
G4String G4SPSAngDistribution::UserDistType
private
G4bool G4SPSAngDistribution::UserWRTSurface
private
G4PhysicsOrderedFreeVector G4SPSAngDistribution::ZeroPhysVector
private

Definition at line 234 of file G4SPSAngDistribution.hh.

Referenced by ReSetHist(), and SetAngDistType().


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