64 #ifdef debug_getFraction
65 G4cout <<
"G4ProjectileDiffractiveChannel::ratio " << ratio <<
G4endl;
81 G4cout <<
" ProjectileDiffractive: A, Z, proj-pdg" <<
" "<< A <<
" "<<Z
94 if ( result && result->size() > 0 )
97 std::vector<G4QHadron *>::iterator i;
101 for (i=result->begin(); i!=result->end(); i++)
103 G4int pdgCode=(*i)->GetPDGCode();
105 if ( pdgCode < 80000000) {
108 G4int qN = pdgCode % 1000;
109 G4int qZ = (pdgCode/1000) %1000;
110 if ( qZ < 500 && qN < 500){
126 (*i)->GetFormationTime(), pos, mom);
127 ktv->push_back(sPrim);
130 G4cout <<
"G4ProjectileDiffractive sec # " << ++count <<
", "
131 <<
"ChipsPDGCode=" << pdgCode <<
", "
133 <<
", time(ns) " << (*i)->GetFormationTime()/
ns
135 <<
", 4mom " << (*i)->Get4Momentum()
140 G4cout <<
"G4ProjectileDiffractiveChannel: Particle with PDG code "<< pdgCode <<
" does not converted!!!"<<
G4endl;
145 std::for_each(result->begin(), result->end(),
DeleteQHadron());
150 if ( result )
delete result;
std::vector< G4QHadron * > G4QHadronVector
G4DLLIMPORT std::ostream G4cout
G4ParticleDefinition * GetDefinition() const
G4LorentzVector Get4Momentum() const
G4double GetTotalMomentum() const
static G4Lambda * Lambda()
static G4Neutron * Neutron()
G4int GetPDGEncoding() const
const G4String & GetParticleName() const
G4ParticleDefinition * FindParticle(G4int PDGEncoding)
static G4ParticleTable * GetParticleTable()
G4ParticleDefinition * GetIon(G4int atomicNumber, G4int atomicMass, G4double excitationEnergy)
~G4ProjectileDiffractiveChannel()
G4ProjectileDiffractiveChannel()
G4double GetFraction(G4Nucleus &theNucleus, const G4DynamicParticle &thePrimary)
G4KineticTrackVector * Scatter(G4Nucleus &theNucleus, const G4DynamicParticle &thePrimary)
G4QHadronVector * ProjFragment(G4int pPDG, G4LorentzVector p4M, G4int tgZ, G4int tgN)
static G4QDiffractionRatio * GetPointer()
G4double GetRatio(G4double pIU, G4int prPDG, G4int tgZ, G4int tgN)