54 ed <<
"Particle `" << particleName <<
"' not found !" <<
G4endl;
55 G4Exception(
"G4ChannelingOptrMultiParticleChangeCrossSection::AddParticle(...)",
63 fParticlesToBias.push_back( particle );
64 fBOptrForParticle[ particle ] = optr;
73 aParticleIterator->
reset();
75 while( (*aParticleIterator)() ){
86G4ChannelingOptrMultiParticleChangeCrossSection::
87ProposeOccurenceBiasingOperation(
const G4Track* track,
90 if ( fCurrentOperator )
return fCurrentOperator->
99 std::map < const G4ParticleDefinition*, G4ChannelingOptrChangeCrossSection* > :: iterator
100 it = fBOptrForParticle.find( definition );
101 fCurrentOperator = 0;
102 if ( it != fBOptrForParticle.end() ) fCurrentOperator = (*it).second;
109G4ChannelingOptrMultiParticleChangeCrossSection::
113 G4double weightForOccurenceInteraction,
119 occurenceOperationApplied,
120 weightForOccurenceInteraction,
121 finalStateOperationApplied,
122 particleChangeProduced );
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
std::ostringstream G4ExceptionDescription
void AddChargedParticles()
G4ChannelingOptrMultiParticleChangeCrossSection()
void AddParticle(G4String particleName)
void StartTracking(const G4Track *track)
G4double GetPDGCharge() const
const G4String & GetParticleName() const
void reset(G4bool ifSkipIon=true)
G4ParticleDefinition * FindParticle(G4int PDGEncoding)
static G4ParticleTable * GetParticleTable()
const G4ParticleDefinition * GetParticleDefinition() const
G4VBiasingOperation * GetProposedOccurenceBiasingOperation(const G4Track *track, const G4BiasingProcessInterface *callingProcess)
void ReportOperationApplied(const G4BiasingProcessInterface *callingProcess, G4BiasingAppliedCase biasingCase, G4VBiasingOperation *operationApplied, const G4VParticleChange *particleChangeProduced)