- Timestamp:
- Nov 5, 2010, 3:45:55 PM (14 years ago)
- Location:
- trunk/source/processes/hadronic/models/theo_high_energy/src
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/processes/hadronic/models/theo_high_energy/src/G4ProjectileDiffractiveChannel.cc
r1337 r1340 26 26 // 27 27 // $Id: G4ProjectileDiffractiveChannel.cc,v 1.2 2007/11/15 16:07:42 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-0 4-beta-01$28 // GEANT4 tag $Name: geant4-09-03-ref-09 $ 29 29 // 30 30 -
trunk/source/processes/hadronic/models/theo_high_energy/src/G4QuasiElasticChannel.cc
r1337 r1340 25 25 // 26 26 // 27 // $Id: G4QuasiElasticChannel.cc,v 1. 7 2009/04/09 08:28:42 mkossovExp $28 // GEANT4 tag $Name: geant4-09-0 4-beta-01$27 // $Id: G4QuasiElasticChannel.cc,v 1.9 2010/09/17 11:34:29 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-03-ref-09 $ 29 29 // 30 30 … … 58 58 const G4DynamicParticle & thePrimary) 59 59 { 60 #ifdef debug_scatter 61 G4cout << "G4QuasiElasticChannel:: P=" << thePrimary.GetTotalMomentum() 62 << ", pPDG=" << thePrimary.GetDefinition()->GetPDGEncoding() 63 << ", Z = " << theNucleus.GetZ_asInt()) 64 << ", N = " << theNucleus.GetN_asInt()) 65 << ", A = " << theNucleus.GetA_asInt() << G4endl; 66 #endif 67 60 68 std::pair<G4double,G4double> ratios; 61 #ifdef debug_scatter62 G4cout << "G4QuasiElasticChannel:: P=" << thePrimary.GetTotalMomentum()63 << ", pPDG=" << thePrimary.GetDefinition()->GetPDGEncoding()64 << ", Z = " << G4lrint(theNucleus.GetZ())65 << ", N = " << G4lrint(theNucleus.GetN()-theNucleus.GetZ()) << G4endl;66 #endif67 69 ratios=theQuasiElastic->GetRatios(thePrimary.GetTotalMomentum(), 68 70 thePrimary.GetDefinition()->GetPDGEncoding(), 69 G4lrint(theNucleus.GetZ()),70 G4lrint(theNucleus.GetN()-theNucleus.GetZ()));71 #ifdef debug_scatter72 G4cout << "G4QuasiElasticChannel::ratios " << ratios.first << " x " <<ratios.second73 << " = " << ratios.first*ratios.second << G4endl;74 #endif71 theNucleus.GetZ_asInt(), 72 theNucleus.GetN_asInt()); 73 #ifdef debug_scatter 74 G4cout << "G4QuasiElasticChannel::ratios " << ratios.first << " x " <<ratios.second 75 << " = " << ratios.first*ratios.second << G4endl; 76 #endif 75 77 76 78 return ratios.first*ratios.second; 77 //return 0.; // Switch off quasielastic (temporary) M.K.78 //return 1.; // Only quasielastic (temporary) M.K. (DANGEROSE! Crashes at A=1!)79 79 } 80 80 … … 82 82 const G4DynamicParticle & thePrimary) 83 83 { 84 G4int A= G4lrint(theNucleus.GetN());85 G4int Z= G4lrint(theNucleus.GetZ()); // M.K. ResNuc84 G4int A=theNucleus.GetA_asInt(); 85 G4int Z=theNucleus.GetZ_asInt(); 86 86 // build Nucleus and choose random nucleon to scatter with 87 the3DNucleus.Init(theNucleus.GetN(),theNucleus.GetZ()); 88 #ifdef debug_scatter 89 G4cout<<"G4QElC::Scat: Before GetNucleons " << G4endl; 90 #endif 87 the3DNucleus.Init(theNucleus.GetA_asInt(),theNucleus.GetZ_asInt()); 91 88 const std::vector<G4Nucleon *> nucleons=the3DNucleus.GetNucleons(); 92 89 G4double targetNucleusMass=the3DNucleus.GetMass(); // M.K. ResNuc 93 #ifdef debug_scatter94 G4cout<<"G4QElC::Scat: targetMass = " << targetNucleusMass << G4endl;95 #endif96 90 G4LorentzVector targetNucleus4Mom(0.,0.,0.,targetNucleusMass); // M.K. ResNuc 97 91 G4int index; … … 100 94 index=G4lrint((A-1)*G4UniformRand()); 101 95 } while (index < 0 || index >= static_cast<G4int>(nucleons.size())); 102 #ifdef debug_scatter103 G4cout<<"G4QElC::Scat: index = " << index << G4endl;104 #endif105 96 G4ParticleDefinition * pDef= nucleons[index]->GetDefinition(); 97 106 98 G4int resA=A-1; // M.K. ResNuc 107 99 G4int resZ=Z-static_cast<int>(pDef->GetPDGCharge()); // M.K. ResNuc … … 113 105 residualNucleusMass=resDef->GetPDGMass(); // M.K. ResNuc 114 106 } 115 else residualNucleusMass*=resA; // resA=resN M.K. ResNuc 116 #ifdef debug_scatter 117 G4cout<<"G4QElChan::Scatter: neutron - proton? A ="<<A<<", Z="<<Z<<", projName=" 118 <<pDef->GetParticleName()<<G4endl; 119 #endif 120 // G4LorentzVector pNucleon(G4ThreeVector(0,0,0),pDef->GetPDGMass()); 107 else { 108 residualNucleusMass*=resA; 109 } 110 #ifdef debug_scatter 111 G4cout<<"G4QElChan::Scatter: neutron - proton? A ="<<A<<", Z="<<Z<<", projName=" 112 <<pDef->GetParticleName()<<G4endl; 113 #endif 114 121 115 G4LorentzVector pNucleon=nucleons[index]->Get4Momentum(); 122 116 G4double residualNucleusEnergy=std::sqrt(residualNucleusMass*residualNucleusMass+ -
trunk/source/processes/hadronic/models/theo_high_energy/src/G4TheoFSGenerator.cc
r1337 r1340 26 26 // 27 27 // $Id: G4TheoFSGenerator.cc,v 1.11 2009/04/09 08:28:42 mkossov Exp $ 28 // GEANT4 tag $Name: geant4-09-0 4-beta-01$28 // GEANT4 tag $Name: geant4-09-03-ref-09 $ 29 29 // 30 30 // G4TheoFSGenerator
Note: See TracChangeset
for help on using the changeset viewer.