45 ed <<
"Particle `" << particleName <<
"' not found !" <<
G4endl;
46 G4Exception(
"GB01BOptrMultiParticleChangeCrossSection::AddParticle(...)",
54 fParticlesToBias.push_back( particle );
55 fBOptrForParticle[ particle ] = optr;
59 GB01BOptrMultiParticleChangeCrossSection::
60 ProposeOccurenceBiasingOperation(
const G4Track* track,
67 if ( fnInteractions > 4 )
return 0;
69 if ( track->
GetWeight() < 0.05 )
return 0;
71 if ( fCurrentOperator )
return fCurrentOperator->
81 std::map < const G4ParticleDefinition*, GB01BOptrChangeCrossSection* > :: iterator
82 it = fBOptrForParticle.find( definition );
84 if ( it != fBOptrForParticle.end() ) fCurrentOperator = (*it).second;
91 GB01BOptrMultiParticleChangeCrossSection::
95 G4double weightForOccurenceInteraction,
105 occurenceOperationApplied,
106 weightForOccurenceInteraction,
107 finalStateOperationApplied,
108 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)