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