54 ed <<
"Particle `" << particleName <<
"' not found !" <<
G4endl;
55 G4Exception(
"GB01BOptrMultiParticleChangeCrossSection::AddParticle(...)",
63 fParticlesToBias.push_back( particle );
64 fBOptrForParticle[ particle ] = optr;
70 GB01BOptrMultiParticleChangeCrossSection::
71 ProposeOccurenceBiasingOperation(
const G4Track* track,
78 if ( fnInteractions > 4 )
return 0;
80 if ( track->
GetWeight() < 0.05 )
return 0;
82 if ( fCurrentOperator )
return fCurrentOperator->
93 std::map < const G4ParticleDefinition*, GB01BOptrChangeCrossSection* > :: iterator
94 it = fBOptrForParticle.find( definition );
96 if ( it != fBOptrForParticle.end() ) fCurrentOperator = (*it).second;
105 GB01BOptrMultiParticleChangeCrossSection::
109 G4double weightForOccurenceInteraction,
119 occurenceOperationApplied,
120 weightForOccurenceInteraction,
121 finalStateOperationApplied,
122 particleChangeProduced );
G4int GetParentID() const
void StartTracking(const G4Track *track)
G4ParticleDefinition * FindParticle(G4int PDGEncoding)
std::ostringstream G4ExceptionDescription
void AddParticle(G4String particleName)
G4VBiasingOperation * GetProposedOccurenceBiasingOperation(const G4Track *track, const G4BiasingProcessInterface *callingProcess)
GB01BOptrMultiParticleChangeCrossSection()
const G4ParticleDefinition * GetParticleDefinition() const
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
static G4ParticleTable * GetParticleTable()
G4double GetWeight() const
void ReportOperationApplied(const G4BiasingProcessInterface *callingProcess, G4BiasingAppliedCase biasingCase, G4VBiasingOperation *operationApplied, const G4VParticleChange *particleChangeProduced)
Definition of the GB01BOptrChangeCrossSection class.
Definition of the GB01BOptrMultiParticleChangeCrossSection class.