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

Operator that changes cross section of a process for a particle. More...

#include <BDSBOptrChangeCrossSection.hh>

Inheritance diagram for BDSBOptrChangeCrossSection:
Inheritance graph
Collaboration diagram for BDSBOptrChangeCrossSection:
Collaboration graph

Public Member Functions

 BDSBOptrChangeCrossSection (const G4String &particleToBias, const G4String &name="ChangeXS")
 
virtual void StartRun ()
 
void SetBias (const G4String &processName, G4double dBias, G4int iPrimary)
 

Private Member Functions

virtual G4VBiasingOperation * ProposeOccurenceBiasingOperation (const G4Track *track, const G4BiasingProcessInterface *callingProcess)
 
virtual G4VBiasingOperation * ProposeFinalStateBiasingOperation (const G4Track *, const G4BiasingProcessInterface *)
 
virtual G4VBiasingOperation * ProposeNonPhysicsBiasingOperation (const G4Track *, const G4BiasingProcessInterface *)
 
virtual void OperationApplied (const G4BiasingProcessInterface *callingProcess, G4BiasingAppliedCase biasingCase, G4VBiasingOperation *occurenceOperationApplied, G4double weightForOccurenceInteraction, G4VBiasingOperation *finalStateOperationApplied, const G4VParticleChange *particleChangeProduced)
 

Private Attributes

std::map< const G4BiasingProcessInterface *, G4BOptnChangeCrossSection * > fChangeCrossSectionOperations
 
std::map< const G4BiasingProcessInterface *, G4double > fXSScale
 
std::map< const G4BiasingProcessInterface *, G4int > fPrimaryScale
 
G4bool fSetup
 
G4String particleName
 
const G4ParticleDefinition * fParticleToBias
 
G4bool particleIsIon
 

Detailed Description

Operator that changes cross section of a process for a particle.

Based on the GB01 example from Geant4.

Author
Stewart Boogert

Definition at line 38 of file BDSBOptrChangeCrossSection.hh.

Constructor & Destructor Documentation

◆ BDSBOptrChangeCrossSection()

BDSBOptrChangeCrossSection::BDSBOptrChangeCrossSection ( const G4String &  particleToBias,
const G4String &  name = "ChangeXS" 
)

Definition at line 43 of file BDSBOptrChangeCrossSection.cc.

◆ ~BDSBOptrChangeCrossSection()

BDSBOptrChangeCrossSection::~BDSBOptrChangeCrossSection ( )
virtual

Definition at line 58 of file BDSBOptrChangeCrossSection.cc.

Member Function Documentation

◆ OperationApplied()

void BDSBOptrChangeCrossSection::OperationApplied ( const G4BiasingProcessInterface *  callingProcess,
G4BiasingAppliedCase  biasingCase,
G4VBiasingOperation *  occurenceOperationApplied,
G4double  weightForOccurenceInteraction,
G4VBiasingOperation *  finalStateOperationApplied,
const G4VParticleChange *  particleChangeProduced 
)
privatevirtual

Definition at line 230 of file BDSBOptrChangeCrossSection.cc.

◆ ProposeFinalStateBiasingOperation()

virtual G4VBiasingOperation * BDSBOptrChangeCrossSection::ProposeFinalStateBiasingOperation ( const G4Track *  ,
const G4BiasingProcessInterface *   
)
inlineprivatevirtual

Definition at line 54 of file BDSBOptrChangeCrossSection.hh.

◆ ProposeNonPhysicsBiasingOperation()

virtual G4VBiasingOperation * BDSBOptrChangeCrossSection::ProposeNonPhysicsBiasingOperation ( const G4Track *  ,
const G4BiasingProcessInterface *   
)
inlineprivatevirtual

Definition at line 57 of file BDSBOptrChangeCrossSection.hh.

◆ ProposeOccurenceBiasingOperation()

G4VBiasingOperation * BDSBOptrChangeCrossSection::ProposeOccurenceBiasingOperation ( const G4Track *  track,
const G4BiasingProcessInterface *  callingProcess 
)
privatevirtual

Definition at line 133 of file BDSBOptrChangeCrossSection.cc.

◆ SetBias()

void BDSBOptrChangeCrossSection::SetBias ( const G4String &  processName,
G4double  dBias,
G4int  iPrimary 
)

Definition at line 90 of file BDSBOptrChangeCrossSection.cc.

◆ StartRun()

void BDSBOptrChangeCrossSection::StartRun ( )
virtual

Definition at line 64 of file BDSBOptrChangeCrossSection.cc.

Field Documentation

◆ fChangeCrossSectionOperations

std::map<const G4BiasingProcessInterface*, G4BOptnChangeCrossSection*> BDSBOptrChangeCrossSection::fChangeCrossSectionOperations
private

Definition at line 68 of file BDSBOptrChangeCrossSection.hh.

◆ fParticleToBias

const G4ParticleDefinition* BDSBOptrChangeCrossSection::fParticleToBias
private

Definition at line 73 of file BDSBOptrChangeCrossSection.hh.

◆ fPrimaryScale

std::map<const G4BiasingProcessInterface*, G4int> BDSBOptrChangeCrossSection::fPrimaryScale
private

Definition at line 70 of file BDSBOptrChangeCrossSection.hh.

◆ fSetup

G4bool BDSBOptrChangeCrossSection::fSetup
private

Definition at line 71 of file BDSBOptrChangeCrossSection.hh.

◆ fXSScale

std::map<const G4BiasingProcessInterface*, G4double> BDSBOptrChangeCrossSection::fXSScale
private

Definition at line 69 of file BDSBOptrChangeCrossSection.hh.

◆ particleIsIon

G4bool BDSBOptrChangeCrossSection::particleIsIon
private

Definition at line 74 of file BDSBOptrChangeCrossSection.hh.

◆ particleName

G4String BDSBOptrChangeCrossSection::particleName
private

Definition at line 72 of file BDSBOptrChangeCrossSection.hh.


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