Geant4  v4-10.4-release
 모두 클래스 네임스페이스들 파일들 함수 변수 타입정의 열거형 타입 열거형 멤버 Friends 매크로 그룹들 페이지들
Public 멤버 함수 | Private 멤버 함수 | Private 속성 | 모든 멤버 목록
G4EmBiasingManager 클래스 참조

#include <G4EmBiasingManager.hh>

Public 멤버 함수

 G4EmBiasingManager ()
 
 ~G4EmBiasingManager ()
 
void Initialise (const G4ParticleDefinition &part, const G4String &procName, G4int verbose)
 
void ActivateForcedInteraction (G4double length=0.0, const G4String &r="")
 
void ActivateSecondaryBiasing (const G4String &region, G4double factor, G4double energyLimit)
 
G4double GetStepLimit (G4int coupleIdx, G4double previousStep)
 
G4double ApplySecondaryBiasing (std::vector< G4DynamicParticle * > &, const G4Track &track, G4VEmModel *currentModel, G4ParticleChangeForGamma *pParticleChange, G4double &eloss, G4int coupleIdx, G4double tcut, G4double safety=0.0)
 
G4double ApplySecondaryBiasing (std::vector< G4DynamicParticle * > &, const G4Track &track, G4VEmModel *currentModel, G4ParticleChangeForLoss *pParticleChange, G4double &eloss, G4int coupleIdx, G4double tcut, G4double safety=0.0)
 
G4double ApplySecondaryBiasing (std::vector< G4Track * > &, G4int coupleIdx)
 
G4bool SecondaryBiasingRegion (G4int coupleIdx)
 
G4bool ForcedInteractionRegion (G4int coupleIdx)
 
void ResetForcedInteraction ()
 

Private 멤버 함수

void ApplyRangeCut (std::vector< G4DynamicParticle * > &vd, const G4Track &track, G4double &eloss, G4double safety)
 
G4double ApplySplitting (std::vector< G4DynamicParticle * > &vd, const G4Track &track, G4VEmModel *currentModel, G4int index, G4double tcut)
 
G4double ApplyRussianRoulette (std::vector< G4DynamicParticle * > &vd, G4int index)
 
 G4EmBiasingManager (G4EmBiasingManager &)=delete
 
G4EmBiasingManageroperator= (const G4EmBiasingManager &right)=delete
 

Private 속성

G4int nForcedRegions
 
G4int nSecBiasedRegions
 
std::vector< const G4Region * > forcedRegions
 
std::vector< G4doublelengthForRegion
 
std::vector< const G4Region * > secBiasedRegions
 
std::vector< G4doublesecBiasedWeight
 
std::vector< G4doublesecBiasedEnegryLimit
 
std::vector< G4intnBremSplitting
 
std::vector< G4intidxForcedCouple
 
std::vector< G4intidxSecBiasedCouple
 
std::vector< G4DynamicParticle * > tmpSecondaries
 
G4VEnergyLossProcesseIonisation
 
const G4ParticleDefinitiontheElectron
 
G4double fSafetyMin
 
G4double currentStepLimit
 
G4bool startTracking
 

상세한 설명

G4EmBiasingManager.hh 파일의 67 번째 라인에서 정의되었습니다.

생성자 & 소멸자 문서화

G4EmBiasingManager::G4EmBiasingManager ( )

G4EmBiasingManager.cc 파일의 65 번째 라인에서 정의되었습니다.

다음을 참조함 : G4Electron::Electron(), fSafetyMin, mm, theElectron.

G4EmBiasingManager::~G4EmBiasingManager ( )

G4EmBiasingManager.cc 파일의 75 번째 라인에서 정의되었습니다.

G4EmBiasingManager::G4EmBiasingManager ( G4EmBiasingManager )
privatedelete

멤버 함수 문서화

void G4EmBiasingManager::ActivateForcedInteraction ( G4double  length = 0.0,
const G4String r = "" 
)
void G4EmBiasingManager::ActivateSecondaryBiasing ( const G4String region,
G4double  factor,
G4double  energyLimit 
)
void G4EmBiasingManager::ApplyRangeCut ( std::vector< G4DynamicParticle * > &  vd,
const G4Track track,
G4double eloss,
G4double  safety 
)
private
G4double G4EmBiasingManager::ApplyRussianRoulette ( std::vector< G4DynamicParticle * > &  vd,
G4int  index 
)
inlineprivate

G4EmBiasingManager.hh 파일의 194 번째 라인에서 정의되었습니다.

다음을 참조함 : G4UniformRand, n, secBiasedWeight, weight.

다음에 의해서 참조됨 : ApplySecondaryBiasing().

G4double G4EmBiasingManager::ApplySecondaryBiasing ( std::vector< G4DynamicParticle * > &  vd,
const G4Track track,
G4VEmModel currentModel,
G4ParticleChangeForGamma pParticleChange,
G4double eloss,
G4int  coupleIdx,
G4double  tcut,
G4double  safety = 0.0 
)
G4double G4EmBiasingManager::ApplySecondaryBiasing ( std::vector< G4DynamicParticle * > &  vd,
const G4Track track,
G4VEmModel currentModel,
G4ParticleChangeForLoss pParticleChange,
G4double eloss,
G4int  coupleIdx,
G4double  tcut,
G4double  safety = 0.0 
)
G4double G4EmBiasingManager::ApplySecondaryBiasing ( std::vector< G4Track * > &  track,
G4int  coupleIdx 
)

G4EmBiasingManager.cc 파일의 368 번째 라인에서 정의되었습니다.

다음을 참조함 : G4UniformRand, idxSecBiasedCouple, n, nBremSplitting, secBiasedEnegryLimit, secBiasedWeight, weight.

G4double G4EmBiasingManager::ApplySplitting ( std::vector< G4DynamicParticle * > &  vd,
const G4Track track,
G4VEmModel currentModel,
G4int  index,
G4double  tcut 
)
private
G4bool G4EmBiasingManager::ForcedInteractionRegion ( G4int  coupleIdx)
inline
G4double G4EmBiasingManager::GetStepLimit ( G4int  coupleIdx,
G4double  previousStep 
)
void G4EmBiasingManager::Initialise ( const G4ParticleDefinition part,
const G4String procName,
G4int  verbose 
)
G4EmBiasingManager& G4EmBiasingManager::operator= ( const G4EmBiasingManager right)
privatedelete
void G4EmBiasingManager::ResetForcedInteraction ( )
inline

G4EmBiasingManager.hh 파일의 186 번째 라인에서 정의되었습니다.

다음을 참조함 : startTracking.

다음에 의해서 참조됨 : G4VEmProcess::StartTracking(), G4VEnergyLossProcess::StartTracking().

G4bool G4EmBiasingManager::SecondaryBiasingRegion ( G4int  coupleIdx)
inline

멤버 데이타 문서화

G4double G4EmBiasingManager::currentStepLimit
private

G4EmBiasingManager.hh 파일의 163 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : GetStepLimit().

G4VEnergyLossProcess* G4EmBiasingManager::eIonisation
private

G4EmBiasingManager.hh 파일의 158 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ApplyRangeCut().

std::vector<const G4Region*> G4EmBiasingManager::forcedRegions
private

G4EmBiasingManager.hh 파일의 146 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ActivateForcedInteraction(), Initialise().

G4double G4EmBiasingManager::fSafetyMin
private

G4EmBiasingManager.hh 파일의 162 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ApplySecondaryBiasing(), G4EmBiasingManager().

std::vector<G4int> G4EmBiasingManager::idxForcedCouple
private

G4EmBiasingManager.hh 파일의 153 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ForcedInteractionRegion(), GetStepLimit(), Initialise().

std::vector<G4int> G4EmBiasingManager::idxSecBiasedCouple
private

G4EmBiasingManager.hh 파일의 154 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ApplySecondaryBiasing(), Initialise(), SecondaryBiasingRegion().

std::vector<G4double> G4EmBiasingManager::lengthForRegion
private

G4EmBiasingManager.hh 파일의 147 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ActivateForcedInteraction(), GetStepLimit().

std::vector<G4int> G4EmBiasingManager::nBremSplitting
private

G4EmBiasingManager.hh 파일의 151 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ActivateSecondaryBiasing(), ApplySecondaryBiasing(), ApplySplitting().

G4int G4EmBiasingManager::nForcedRegions
private

G4EmBiasingManager.hh 파일의 144 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ActivateForcedInteraction(), ForcedInteractionRegion(), Initialise().

G4int G4EmBiasingManager::nSecBiasedRegions
private

G4EmBiasingManager.hh 파일의 145 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ActivateSecondaryBiasing(), Initialise(), SecondaryBiasingRegion().

std::vector<G4double> G4EmBiasingManager::secBiasedEnegryLimit
private

G4EmBiasingManager.hh 파일의 150 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ActivateSecondaryBiasing(), ApplySecondaryBiasing().

std::vector<const G4Region*> G4EmBiasingManager::secBiasedRegions
private

G4EmBiasingManager.hh 파일의 148 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ActivateSecondaryBiasing(), Initialise().

std::vector<G4double> G4EmBiasingManager::secBiasedWeight
private

G4EmBiasingManager.hh 파일의 149 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ActivateSecondaryBiasing(), ApplyRussianRoulette(), ApplySecondaryBiasing(), ApplySplitting(), Initialise().

G4bool G4EmBiasingManager::startTracking
private

G4EmBiasingManager.hh 파일의 164 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : GetStepLimit(), ResetForcedInteraction().

const G4ParticleDefinition* G4EmBiasingManager::theElectron
private

G4EmBiasingManager.hh 파일의 160 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ApplyRangeCut(), G4EmBiasingManager().

std::vector<G4DynamicParticle*> G4EmBiasingManager::tmpSecondaries
private

G4EmBiasingManager.hh 파일의 156 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ApplySplitting().


이 클래스에 대한 문서화 페이지는 다음의 파일들로부터 생성되었습니다.: