- Timestamp:
- Nov 5, 2010, 3:45:55 PM (14 years ago)
- Location:
- trunk/source/processes/hadronic/models/parton_string/hadronization/include
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/processes/hadronic/models/parton_string/hadronization/include/G4ExcitedStringDecay.hh
r1337 r1340 25 25 // 26 26 // 27 // $Id: G4ExcitedStringDecay.hh,v 1.1 2 2010/06/21 17:50:48vuzhinsk Exp $28 // GEANT4 tag $Name: geant4-09-0 4-beta-01$27 // $Id: G4ExcitedStringDecay.hh,v 1.13 2010/08/05 08:44:37 vuzhinsk Exp $ 28 // GEANT4 tag $Name: geant4-09-03-ref-09 $ 29 29 // 30 30 #ifndef G4ExcitedStringDecay_h … … 42 42 G4ExcitedStringDecay(); 43 43 G4ExcitedStringDecay(G4VLongitudinalStringDecay * aStringDecay); 44 ~G4ExcitedStringDecay();44 virtual ~G4ExcitedStringDecay(); 45 45 46 46 private: … … 62 62 }; 63 63 64 inline65 G4KineticTrackVector *G4ExcitedStringDecay::66 FragmentString(const G4ExcitedString &theString)67 {68 if ( theStringDecay == NULL )69 theStringDecay=new G4LundStringFragmentation();70 71 return theStringDecay->FragmentString(theString);72 }73 74 75 inline76 G4KineticTrackVector *G4ExcitedStringDecay::77 FragmentStrings(const G4ExcitedStringVector * theStrings)78 {79 G4KineticTrackVector * theResult = new G4KineticTrackVector;80 81 G4LorentzVector KTsum(0.,0.,0.,0.);82 G4LorentzVector KTsecondaries(0.,0.,0.,0.);83 G4bool NeedEnergyCorrector=false;84 85 for ( unsigned int astring=0; astring < theStrings->size(); astring++)86 {87 KTsum+= theStrings->operator[](astring)->Get4Momentum();88 89 if( !(KTsum.e()<1) && !(KTsum.e()>-1) )90 {91 throw G4HadronicException(__FILE__, __LINE__,92 "G4ExcitedStringDecay::FragmentStrings received nan string...");93 }94 G4KineticTrackVector * generatedKineticTracks = NULL;95 96 if ( theStrings->operator[](astring)->IsExcited() )97 {98 generatedKineticTracks=FragmentString(*theStrings->operator[](astring));99 } else {100 generatedKineticTracks = new G4KineticTrackVector;101 generatedKineticTracks->push_back(theStrings->operator[](astring)->GetKineticTrack());102 }103 104 if (generatedKineticTracks == NULL)105 {106 G4cerr << "G4VPartonStringModel:No KineticTracks produced" << G4endl;107 continue;108 }109 110 G4LorentzVector KTsum1(0.,0.,0.,0.);111 for ( unsigned int aTrack=0; aTrack<generatedKineticTracks->size();aTrack++)112 {113 theResult->push_back(generatedKineticTracks->operator[](aTrack));114 KTsum1+= (*generatedKineticTracks)[aTrack]->Get4Momentum();115 }116 KTsecondaries+=KTsum1;117 118 if ( KTsum1.e() > 0 && std::abs((KTsum1.e()-theStrings->operator[](astring)->Get4Momentum().e()) / KTsum1.e()) > perMillion )119 {120 //--debug-- G4cout << "String secondaries(" <<generatedKineticTracks->size()<< ") momentum: "121 //--debug-- << theStrings->operator[](astring)->Get4Momentum() << " " << KTsum1 << G4endl;122 NeedEnergyCorrector=true;123 }124 125 // clean up126 delete generatedKineticTracks;127 }128 //--DEBUG G4cout << "Strings/secs total 4 momentum " << KTsum << " " <<KTsecondaries << G4endl;129 130 G4bool success=true;131 if ( NeedEnergyCorrector ) success=EnergyAndMomentumCorrector(theResult, KTsum);132 133 134 #ifdef debug_ExcitedStringDecay135 G4LorentzVector KTsum1=0;136 for ( unsigned int aTrack=0; aTrack<theResult->size();aTrack++)137 {138 G4cout << " corrected tracks .. " << (*theResult)[aTrack]->GetDefinition()->GetParticleName()139 <<" " << (*theResult)[aTrack]->Get4Momentum() << G4endl;140 KTsum1+= (*theResult)[aTrack]->Get4Momentum();141 }142 G4cout << "Needcorrector/success " << NeedEnergyCorrector << "/" << success << ", Corrected total 4 momentum " << KTsum1 << G4endl;143 if ( ! success ) G4cout << "failed to correct E/p" << G4endl;144 #endif145 146 return theResult;147 }148 149 64 #endif 150 65 -
trunk/source/processes/hadronic/models/parton_string/hadronization/include/G4FragmentingString.hh
r1337 r1340 25 25 // 26 26 // 27 // $Id: G4FragmentingString.hh,v 1. 4 2007/12/20 15:38:06vuzhinsk Exp $28 // GEANT4 tag $Name: geant4-09-0 4-beta-01$27 // $Id: G4FragmentingString.hh,v 1.5 2010/09/20 12:46:23 vuzhinsk Exp $ 28 // GEANT4 tag $Name: geant4-09-03-ref-09 $ 29 29 // 30 30 -
trunk/source/processes/hadronic/models/parton_string/hadronization/include/G4HadronBuilder.hh
r1337 r1340 25 25 // 26 26 // 27 // $Id: G4HadronBuilder.hh,v 1. 5 2009/05/18 09:43:40 gunterExp $28 // GEANT4 tag $Name: geant4-09-0 4-beta-01$27 // $Id: G4HadronBuilder.hh,v 1.6 2010/09/20 12:46:23 vuzhinsk Exp $ 28 // GEANT4 tag $Name: geant4-09-03-ref-09 $ 29 29 // 30 30 // ----------------------------------------------------------------------------- -
trunk/source/processes/hadronic/models/parton_string/hadronization/include/G4LundStringFragmentation.hh
r1337 r1340 25 25 // 26 26 // 27 // $Id: G4LundStringFragmentation.hh,v 1. 6 2008/04/25 14:20:14vuzhinsk Exp $28 // GEANT4 tag $Name: geant4-09-0 4-beta-01$ Maxim Komogorov27 // $Id: G4LundStringFragmentation.hh,v 1.7 2010/09/20 12:46:23 vuzhinsk Exp $ 28 // GEANT4 tag $Name: geant4-09-03-ref-09 $ Maxim Komogorov 29 29 // 30 30 // ----------------------------------------------------------------------------- … … 78 78 G4ParticleDefinition* pHadron, 79 79 G4double Px, G4double Py); 80 80 81 G4double lambda(G4double s, G4double m1_Sqr, G4double m2_Sqr); 82 81 83 private: 82 84 // ------ For estimation of a minimal string mass --------------- … … 89 91 // ------ Minimal invariant mass used at a string fragmentation - 90 92 G4double WminLUND; 93 94 G4int Meson[3][3][6]; 95 G4double MesonWeight[3][3][6]; 96 97 G4int Baryon[3][3][3][4]; 98 G4double BaryonWeight[3][3][3][4]; 99 100 G4double Prob_QQbar[3]; 91 101 }; 92 102 -
trunk/source/processes/hadronic/models/parton_string/hadronization/include/G4QGSMFragmentation.hh
r1337 r1340 25 25 // 26 26 // 27 // $Id: G4QGSMFragmentation.hh,v 1. 5 2007/12/20 15:38:07vuzhinsk Exp $28 // GEANT4 tag $Name: geant4-09-0 4-beta-01$27 // $Id: G4QGSMFragmentation.hh,v 1.6 2010/09/20 12:46:23 vuzhinsk Exp $ 28 // GEANT4 tag $Name: geant4-09-03-ref-09 $ 29 29 // 30 30 // ----------------------------------------------------------------------------- -
trunk/source/processes/hadronic/models/parton_string/hadronization/include/G4VKinkyStringDecay.hh
r1337 r1340 25 25 // 26 26 // 27 // $Id: G4VKinkyStringDecay.hh,v 1. 3 2006/06/29 20:54:53 gunterExp $28 // GEANT4 tag $Name: geant4-09-0 4-beta-01$27 // $Id: G4VKinkyStringDecay.hh,v 1.4 2010/09/20 12:46:23 vuzhinsk Exp $ 28 // GEANT4 tag $Name: geant4-09-03-ref-09 $ 29 29 // Maxim Komogorov 30 30 // -
trunk/source/processes/hadronic/models/parton_string/hadronization/include/G4VLongitudinalStringDecay.hh
r1337 r1340 25 25 // 26 26 // 27 // $Id: G4VLongitudinalStringDecay.hh,v 1. 7 2009/05/22 16:35:47 gunterExp $28 // GEANT4 tag $Name: geant4-09-0 4-beta-01$27 // $Id: G4VLongitudinalStringDecay.hh,v 1.8 2010/09/20 12:46:23 vuzhinsk Exp $ 28 // GEANT4 tag $Name: geant4-09-03-ref-09 $ 29 29 // Maxim Komogorov 30 30 //
Note: See TracChangeset
for help on using the changeset viewer.