Changeset 1196 for trunk/source/processes/hadronic/models/cascade
- Timestamp:
- Nov 25, 2009, 5:13:58 PM (16 years ago)
- Location:
- trunk/source/processes/hadronic/models/cascade
- Files:
-
- 16 edited
-
History (modified) (1 diff)
-
cascade/include/G4CascadParticle.hh (modified) (4 diffs)
-
cascade/include/G4CascadSpecialFunctions.hh (modified) (1 diff)
-
cascade/include/G4CascadeInterface.hh (modified) (3 diffs)
-
cascade/include/G4CascadeMomentum.hh (modified) (1 diff)
-
cascade/include/G4CollisionOutput.hh (modified) (1 diff)
-
cascade/include/G4ElementaryParticleCollider.hh (modified) (4 diffs)
-
cascade/include/G4InuclElementaryParticle.hh (modified) (3 diffs)
-
cascade/include/G4NucleiModel.hh (modified) (8 diffs)
-
cascade/src/G4BertiniNucleiModel.cc (modified) (3 diffs)
-
cascade/src/G4CascadSpecialFunctions.cc (modified) (3 diffs)
-
cascade/src/G4CascadeInterface.cc (modified) (4 diffs)
-
cascade/src/G4CascadeSigmaPlusNChannel.cc (modified) (7 diffs)
-
cascade/src/G4CollisionOutput.cc (modified) (1 diff)
-
cascade/src/G4ElementaryParticleCollider.cc (modified) (17 diffs)
-
cascade/src/G4NucleiModel.cc (modified) (34 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/processes/hadronic/models/cascade/History
r1055 r1196 15 15 --------------------------------------------------------------- 16 16 17 11 Nov 2009 Dennis Wright (hadr-casc-V09-02-10) 18 ----------------------------------------------- 19 - G4CascadParticle, G4InuclElementaryParticle: add integer argument to ctor 20 to indicate which generation cascade particle belongs to. 21 Also change G4NucleiModel and G4BertiniNucleiModel to use this. 22 23 8 Oct 2009 Dennis Wright (hadr-casc-V09-02-09) 24 ----------------------------------------------- 25 - G4PionSampler: use charge exchange cross section for pi0-p, go back 26 original Bertini pi0-p elastic partial cs. Update pi0 total cross 27 section accordingly. Improve fits to pi-p partial cs and update 28 pi- total cross sections. 29 - G4NucleiModel: update pi- and pi0 total cross sections 30 31 24 Sep 2009 Dennis Wright (hadr-casc-V09-02-08) 32 ----------------------------------------------- 33 - add class G4NucleonSampler which replaces old pp, pn, and nn partial and 34 total cross sections also modify other classes which use them 35 - move large arrays which are instantiated at every call of frequently 36 used methods. They are now initialized once in constructors. 37 - G4CascadSpecialFunctions: put copy of total cross section method 38 in G4NucleiModel, also remove unneeded energy scale arrays 39 (now replaced with a new one) 40 - G4CascadeInterface: move instantiation of various collider classes 41 outside of loop, and put on stack instead of heap 42 - G4ElementaryParticleCollider: re-design to use G4NucleonSampler and 43 remove instantiation of large arrays from within loops in code 44 - G4NucleiModel: remove instatiation of large arrays from with loops, 45 add new total cross section sampling, remove use of all but one 46 energy scale 47 48 17 Sep 2009 Dennis Wright (hadr-casc-V09-02-07) 49 ----------------------------------------------- 50 - G4PionSampler: remove large static arrays 51 - G4FinalStateSampler: remove static array pointer to G4 particle types 52 - G4ElementaryParticleCollider: clean up 53 54 4 Sep 2009 Dennis Wright (hadr-casc-V09-02-06) 55 ---------------------------------------------- 56 - add assignment operator to class G4CollisionOutput 57 58 31 Aug 2009 Dennis Wright (hadr-casc-V09-02-05) 59 ----------------------------------------------- 60 - add class G4FinalStateSampler which was accidentally omitted from 61 the previous tag 62 63 25 Aug 2009 Dennis Wright (hadr-casc-V09-02-04) 64 ----------------------------------------------- 65 - correct bug in particle ordering in G4PionSampler 66 - clean up dead code in G4NucleiModel and G4ElementaryParticleCollider 67 68 20 Aug 2009 Dennis Wright (hadr-casc-V09-02-03) 69 ----------------------------------------------- 70 - create class G4PionSampler: samples partial cross sections, multiplicities 71 and final state particle types required for pi+, pi- and pi0 scattering 72 within a nucleus. This class uses re-evaluated pion partial cross sections 73 and includes production of strange particle pairs. 74 - G4CascadeSigmaPlusNChannel: correct sigma plus cross sections 75 - G4CascadSpecialFunctions: move pion, kaon, hyperon total cross sections 76 to this class 77 - G4ElementaryParticleCollider: re-write to use G4PionSampler class for 78 cross sections and multiplicities, remove method reChargering (now redundant) 79 17 80 15 Apr 2009 Dennis Wright (hadr-casc-V09-02-02) 18 81 ----------------------------------------------- -
trunk/source/processes/hadronic/models/cascade/cascade/include/G4CascadParticle.hh
r962 r1196 38 38 const std::vector<G4double>& pos, 39 39 G4int izone, 40 G4double cpath) 40 G4double cpath, 41 G4int gen) 41 42 42 43 : theParticle(particle), … … 46 47 current_path = cpath; 47 48 movingIn = true; 48 reflectionCounter = 0; 49 reflectionCounter = 0; 50 generation = gen; 49 51 }; 50 52 … … 126 128 << " z " << position[2] << G4endl; 127 129 }; 130 131 G4int getGeneration() { 132 return generation; 133 } 128 134 129 135 private: … … 137 143 G4int reflectionCounter; 138 144 G4bool reflected; 139 145 G4int generation; 140 146 }; 141 147 -
trunk/source/processes/hadronic/models/cascade/cascade/include/G4CascadSpecialFunctions.hh
r1007 r1196 35 35 namespace G4CascadSpecialFunctions { 36 36 37 std::pair<G4int, G4double> getPositionInEnergyScale 2(G4double e);37 std::pair<G4int, G4double> getPositionInEnergyScale3(G4double e); 38 38 39 std::pair<G4int, G4double> getPositionInEnergyScale1(G4double e); 40 41 G4double absorptionCrosSection(G4double e, 42 G4int type); 39 G4double absorptionCrosSection(G4double e, G4int type); 43 40 44 G4double crossSection(G4double e, 45 G4int is); 46 47 std::pair<G4int, G4double> getPositionInEnergyScaleEMS(G4double e); 41 G4double crossSection(G4double e, G4int is); 48 42 49 43 } -
trunk/source/processes/hadronic/models/cascade/cascade/include/G4CascadeInterface.hh
r962 r1196 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4CascadeInterface.hh,v 1.1 3 2008/10/18 16:04:40 vnivanchExp $26 // $Id: G4CascadeInterface.hh,v 1.14 2009/09/24 20:48:02 dennis Exp $ 27 27 // Defines an interface to Bertini (BERT) cascade 28 28 // based on INUCL intra-nuclear transport.models … … 40 40 #include "G4ReactionProductVector.hh" 41 41 #include "G4ReactionProduct.hh" 42 43 #include "G4ElementaryParticleCollider.hh" 44 #include "G4NonEquilibriumEvaporator.hh" 45 #include "G4EquilibriumEvaporator.hh" 46 #include "G4Fissioner.hh" 47 #include "G4BigBanger.hh" 48 #include "G4IntraNucleiCascader.hh" 49 42 50 43 51 class G4CascadeInterface : public G4VIntraNuclearTransportModel { … … 64 72 65 73 private: 74 75 G4ElementaryParticleCollider colep; 76 G4NonEquilibriumEvaporator noneq; 77 G4EquilibriumEvaporator eqil; 78 G4Fissioner fiss; 79 G4BigBanger bigb; 80 G4IntraNucleiCascader inc; 81 66 82 G4HadFinalState theResult; 67 83 68 84 }; 69 85 -
trunk/source/processes/hadronic/models/cascade/cascade/include/G4CascadeMomentum.hh
r1007 r1196 25 25 // 26 26 // $Id: G4CascadeMomentum.hh,v 1.1 2008/09/22 10:06:32 gcosmo Exp $ 27 // GEANT4 tag $Name: geant4-09-0 2$27 // GEANT4 tag $Name: geant4-09-03-cand-01 $ 28 28 // 29 29 // -
trunk/source/processes/hadronic/models/cascade/cascade/include/G4CollisionOutput.hh
r962 r1196 40 40 41 41 G4CollisionOutput(); 42 43 G4CollisionOutput& operator=(const G4CollisionOutput& right); 42 44 43 45 void reset() { -
trunk/source/processes/hadronic/models/cascade/cascade/include/G4ElementaryParticleCollider.hh
r1007 r1196 32 32 #include "G4CascadSpecialFunctions.hh" 33 33 #include "G4LorentzConvertor.hh" 34 #include "G4NucleonSampler.hh" 35 #include "G4PionSampler.hh" 34 36 35 37 36 38 using namespace G4InuclSpecialFunctions; 37 39 using namespace G4CascadSpecialFunctions; 40 38 41 39 42 class G4ElementaryParticleCollider { … … 48 51 private: 49 52 50 // G4CascadeKplusPChannel kpp; 51 // G4CascadeKplusNChannel kpn; 52 // G4CascadeKzeroPChannel k0p; 53 // G4CascadeKzeroNChannel k0n; 54 // G4CascadeKminusPChannel kmp; 55 // G4CascadeKminusNChannel kmn; 56 // G4CascadeKzeroBarPChannel k0bp; 57 // G4CascadeKzeroBarNChannel k0bn; 58 // G4CascadeLambdaPChannel lp; 59 // G4CascadeLambdaNChannel ln; 60 // G4CascadeSigmaPlusPChannel spp; 61 // G4CascadeSigmaPlusNChannel spn; 62 // G4CascadeSigmaZeroPChannel s0p; 63 // G4CascadeSigmaZeroNChannel s0n; 64 // G4CascadeSigmaMinusPChannel smp; 65 // G4CascadeSigmaMinusNChannel smn; 66 // G4CascadeXiZeroPChannel x0p; 67 // G4CascadeXiZeroNChannel x0n; 68 // G4CascadeXiMinusPChannel xmp; 69 // G4CascadeXiMinusNChannel xmn; 53 G4int verboseLevel; 70 54 71 G4int verboseLevel;72 G4int generateMultiplicity(G4int is, 73 G4double ekin) const;55 void initializeArrays(); 56 57 G4int generateMultiplicity(G4int is, G4double ekin) const; 74 58 75 59 void collide(G4InuclElementaryParticle* bullet, … … 78 62 79 63 80 std::vector<G4InuclElementaryParticle> generateSCMfinalState(G4double ekin, 81 G4double etot_scm, G4double pscm, 82 G4InuclElementaryParticle* particle1, 83 G4InuclElementaryParticle* particle2, 84 G4LorentzConvertor* toSCM) const; 85 86 std::vector<G4double> generateMomModules(const std::vector<G4int>& kinds, 87 G4int mult, 88 G4int is, 89 G4double ekin, 90 G4double etot_cm) const; 91 92 G4bool reChargering(G4double ekin, 93 G4int is) const; 64 std::vector<G4InuclElementaryParticle> 65 generateSCMfinalState(G4double ekin, G4double etot_scm, G4double pscm, 66 G4InuclElementaryParticle* particle1, 67 G4InuclElementaryParticle* particle2, 68 G4LorentzConvertor* toSCM) const; 94 69 95 70 96 G4CascadeMomentum particleSCMmomentumFor2to2(G4int is, 97 G4int kw, 98 G4double ekin, 99 G4double pscm) const; 100 101 G4int getElasticCase(G4int is, 102 G4int kw, 103 G4double ekin) const; 104 105 std::vector<G4int> generateOutgoingKindsFor2toMany(G4int is, 106 G4int mult, 107 G4double ekin) const; 71 std::vector<G4double> 72 generateMomModules(const std::vector<G4int>& kinds, G4int mult, 73 G4int is, G4double ekin, G4double etot_cm) const; 108 74 109 75 110 std::vector<G4int> generateStrangeChannelPartTypes(G4int is,111 G4int mult, 112 G4double ekin) const;76 G4CascadeMomentum 77 particleSCMmomentumFor2to2(G4int is, G4int kw, G4double ekin, 78 G4double pscm) const; 113 79 114 80 115 G4double getMomModuleFor2toMany(G4int is, 116 G4int mult, 117 G4int knd, 118 G4double ekin) const; 81 G4int getElasticCase(G4int is, G4int kw, G4double ekin) const; 82 83 84 std::vector<G4int> 85 generateStrangeChannelPartTypes(G4int is, G4int mult, 86 G4double ekin) const; 87 88 89 G4double 90 getMomModuleFor2toMany(G4int is, G4int mult, G4int knd, 91 G4double ekin) const; 92 119 93 120 94 G4bool satisfyTriangle(const std::vector<G4double>& modules) const; 121 95 122 G4CascadeMomentum particleSCMmomentumFor2to3(G4int is, 123 G4int knd, 124 G4double ekin, 125 G4double pmod) const; 126 127 G4int getIL(G4int is, 128 G4int mult) const; 96 G4CascadeMomentum 97 particleSCMmomentumFor2to3(G4int is, G4int knd, G4double ekin, 98 G4double pmod) const; 129 99 130 std::pair<G4double, G4double> adjustIntervalForElastic(G4double ekin, 131 G4double ak, 132 G4double ae, 133 G4int k, 134 G4int l, 135 const std::vector<G4double>& ssv, 136 G4double st) const; 100 101 std::pair<G4double, G4double> 102 adjustIntervalForElastic(G4double ekin, G4double ak, G4double ae, 103 G4int k, G4int l, const std::vector<G4double>& ssv, 104 G4double st) const; 137 105 138 106 std::vector<G4InuclElementaryParticle> … … 140 108 G4InuclElementaryParticle* particle1, 141 109 G4InuclElementaryParticle* particle2) const; 142 143 }; 110 111 G4NucleonSampler nucSampler; 112 G4PionSampler piSampler; 113 114 // Parameter arrays 115 116 G4double rmn[14][10][2]; 117 G4double ang[4][4][13]; 118 G4double abn[4][4][4]; 119 120 }; 144 121 145 122 #endif // G4ELEMENTARY_PARTICLE_COLLIDER_HH -
trunk/source/processes/hadronic/models/cascade/cascade/include/G4InuclElementaryParticle.hh
r962 r1196 54 54 particleMass = 0.; // " " 55 55 valid_particle = false; 56 generation = 0; 56 57 }; 57 58 … … 458 459 }; 459 460 461 void setGeneration(G4int gen) { 462 generation = gen; 463 } 464 465 G4int getGeneration() { 466 return generation; 467 } 468 460 469 private: 461 470 … … 465 474 466 475 G4bool valid_particle; 476 477 G4int generation; 478 467 479 }; 468 480 -
trunk/source/processes/hadronic/models/cascade/cascade/include/G4NucleiModel.hh
r1007 r1196 27 27 #define G4NUCLEI_MODEL_HH 28 28 29 //#include "G4InuclNuclei.hh"30 29 31 30 #ifndef G4INUCL_ELEMENTARY_PARTICLE_HH … … 34 33 #include "G4CascadParticle.hh" 35 34 #include "G4InuclSpecialFunctions.hh" 36 #include "G4CascadSpecialFunctions.hh"37 35 #include "G4ElementaryParticleCollider.hh" 38 36 … … 43 41 44 42 using namespace G4InuclSpecialFunctions; 45 using namespace G4CascadSpecialFunctions;46 43 47 44 typedef std::pair<G4InuclElementaryParticle, G4double> partner; … … 55 52 56 53 G4NucleiModel(G4InuclNuclei* nuclei) { 57 58 54 generateModel(nuclei->getA(), nuclei->getZ()); 59 } ;60 61 void generateModel(G4double a, 62 G4double z); 55 } 56 57 void generateModel(G4double a, G4double z); 58 63 59 64 60 void reset() { 65 66 61 neutronNumberCurrent = neutronNumber; 67 62 protonNumberCurrent = protonNumber; 68 }; 63 } 64 69 65 70 66 void printModel() const; 71 67 72 G4double getDensity(G4int ip, 73 G4int izone) const { 74 68 69 G4double getDensity(G4int ip, G4int izone) const { 75 70 return nucleon_densities[ip - 1][izone]; 76 }; 77 78 G4double getFermiMomentum(G4int ip, 79 G4int izone) const { 80 71 } 72 73 74 G4double getFermiMomentum(G4int ip, G4int izone) const { 81 75 return fermi_momenta[ip - 1][izone]; 82 }; 83 84 G4double getFermiKinetic(G4int ip, 85 G4int izone) const { 86 76 } 77 78 79 G4double getFermiKinetic(G4int ip, G4int izone) const { 87 80 G4double ekin = 0.0; 88 81 … … 92 85 93 86 ekin = std::sqrt(pf * pf + mass * mass) - mass; 94 }; 95 87 } 96 88 return ekin; 97 }; 98 99 G4double getPotential(G4int ip, 100 G4int izone) const { 101 89 } 90 91 92 G4double getPotential(G4int ip, G4int izone) const { 102 93 G4int ip0 = ip < 3 ? ip - 1 : 2; 103 94 if (ip > 10 && ip < 18) ip0 = 3; 104 95 if (ip > 20) ip0 = 4; 105 106 96 return izone < number_of_zones ? zone_potentials[ip0][izone] : 0.0; 107 }; 97 } 98 108 99 109 100 std::vector<G4CascadParticle> … … 111 102 G4ElementaryParticleCollider* theElementaryParticleCollider); 112 103 104 113 105 G4double getNumberOfNeutrons() const { 114 115 106 return neutronNumberCurrent; 116 }; 107 } 108 117 109 118 110 G4double getNumberOfProtons() const { 119 120 111 return protonNumberCurrent; 121 }; 112 } 113 122 114 123 115 G4bool empty() const { 124 125 116 return neutronNumberCurrent < 1.0 && protonNumberCurrent < 1.0; 126 }; 117 } 118 127 119 128 120 G4bool stillInside(const G4CascadParticle& cparticle) { 129 130 121 return cparticle.getCurrentZone() < number_of_zones; 131 }; 122 } 123 132 124 133 125 G4CascadParticle initializeCascad(G4InuclElementaryParticle* particle); 134 126 135 std::pair<std::vector<G4CascadParticle>, std::vector<G4InuclElementaryParticle> > initializeCascad(G4InuclNuclei* bullet, G4InuclNuclei* target); 127 128 std::pair<std::vector<G4CascadParticle>, std::vector<G4InuclElementaryParticle> > 129 initializeCascad(G4InuclNuclei* bullet, G4InuclNuclei* target); 130 136 131 137 132 std::pair<G4int, G4int> getTypesOfNucleonsInvolved() const { 138 133 return std::pair<G4int, G4int>(current_nucl1, current_nucl2); 139 }; 134 } 135 136 140 137 G4bool worthToPropagate(const G4CascadParticle& cparticle) const; 141 138 142 G4InuclElementaryParticle generateNucleon(G4int type, 143 G4int zone) const; 144 145 private: 146 G4int verboseLevel; 139 G4InuclElementaryParticle generateNucleon(G4int type, G4int zone) const; 140 141 private: 142 143 G4int verboseLevel; 144 145 void initTotalCrossSections(); 146 G4double totalCrossSection(G4double e, G4int rtype) const; 147 147 148 G4bool passFermi(const std::vector<G4InuclElementaryParticle>& particles, 148 149 G4int zone); … … 156 157 partners generateInteractionPartners(G4CascadParticle& cparticle) const; 157 158 158 G4double volNumInt(G4double r1, 159 G4double r2, 160 G4double cu, 159 G4double volNumInt(G4double r1, G4double r2, G4double cu, 161 160 G4double d1) const; 162 161 163 G4double volNumInt1(G4double r1, 164 G4double r2, 165 G4double cu2) const; 162 G4double volNumInt1(G4double r1, G4double r2, G4double cu2) const; 166 163 167 164 G4double getRatio(G4int ip) const; … … 182 179 183 180 G4double A; 184 185 181 G4double Z; 186 182 187 183 G4double neutronNumber; 188 189 184 G4double protonNumber; 190 185 191 186 G4double neutronNumberCurrent; 192 193 187 G4double protonNumberCurrent; 194 188 195 189 G4int current_nucl1; 196 197 190 G4int current_nucl2; 198 191 192 // Total cross sections 193 194 G4double PPtot[30]; 195 G4double NPtot[30]; 196 G4double pipPtot[30]; 197 G4double pimPtot[30]; 198 G4double pizPtot[30]; 199 G4double kpPtot[30]; 200 G4double kpNtot[30]; 201 G4double kmPtot[30]; 202 G4double kmNtot[30]; 203 G4double lPtot[30]; 204 G4double spPtot[30]; 205 G4double smPtot[30]; 206 G4double xi0Ptot[30]; 207 G4double ximPtot[30]; 208 199 209 }; 200 210 -
trunk/source/processes/hadronic/models/cascade/cascade/src/G4BertiniNucleiModel.cc
r962 r1196 715 715 for (G4int ip = 0; ip < G4int(outgoing_particles.size()); ip++) 716 716 outgouing_cparticles.push_back(G4CascadParticle(outgoing_particles[ip], 717 new_position, zone, 0.0 ));717 new_position, zone, 0.0, 0)); 718 718 719 719 no_interaction = false; … … 928 928 pos[2] = -nuclei_radius * std::sqrt(1.0 - s1 * s1); 929 929 930 G4CascadParticle cpart(*particle, pos, number_of_zones, large );930 G4CascadParticle cpart(*particle, pos, number_of_zones, large, 0); 931 931 932 932 if (verboseLevel > 2){ … … 1374 1374 coordinates[ip][2] += mom[3] * tr / pmod; 1375 1375 casparticles.push_back(G4CascadParticle(raw_particles[ip], coordinates[ip], 1376 number_of_zones, large ));1376 number_of_zones, large, 0)); 1377 1377 } else { 1378 1378 particles.push_back(raw_particles[ip]); -
trunk/source/processes/hadronic/models/cascade/cascade/src/G4CascadSpecialFunctions.cc
r1055 r1196 27 27 28 28 std::pair<G4int, G4double> 29 G4CascadSpecialFunctions::getPositionInEnergyScale 2(G4double e)29 G4CascadSpecialFunctions::getPositionInEnergyScale3(G4double e) 30 30 { 31 G4int verboseLevel = 2; 32 33 if (verboseLevel > 3) { 34 G4cout << " >>> G4CascadSpecialFunctions::getPositionInEnergyScale2" << G4endl; 35 } 36 37 const G4double EMT2[31] = { 38 0.0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 39 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 4.0, 4.5, 5.0, 40 5.5, 6.0, 6.5, 7.0, 7.5, 8.0, 8.5, 9.0, 9.5, 10.0, 15.0 41 }; 42 43 G4int ik = 30; 31 32 const G4double EMT3[30] = { 33 0.0, 0.01, 0.013, 0.018, 0.024, 0.032, 0.042, 0.056, 0.075, 0.1, 34 0.13, 0.18, 0.24, 0.32, 0.42, 0.56, 0.75, 1.0, 1.3, 1.8, 35 2.4, 3.2, 4.2, 5.6, 7.5, 10.0, 13.0, 18.0, 24.0, 32.0}; 36 37 G4int ik = 29; 44 38 G4double sk = 1.0; 45 39 46 for (G4int i = 1; i < 3 1; i++) {47 48 if (e <= EMT 2[i]) {40 for (G4int i = 1; i < 30; i++) { 41 42 if (e <= EMT3[i]) { 49 43 ik = i; 50 sk = (e - EMT 2[ik - 1]) / (EMT2[ik] - EMT2[ik - 1]);44 sk = (e - EMT3[ik - 1]) / (EMT3[ik] - EMT3[ik - 1]); 51 45 break; 52 46 } 53 }54 55 return std::pair<G4int, G4double>(ik, sk);56 }57 58 59 std::pair<G4int, G4double>60 G4CascadSpecialFunctions::getPositionInEnergyScale1(G4double e)61 {62 G4int verboseLevel = 2;63 64 if (verboseLevel > 3) {65 G4cout << " >>> G4CascadSpecialFunctions::getPositionInEnergyScale1" << G4endl;66 }67 68 const G4double EMT1[20] = {69 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 4.0, 4.5, 5.0,70 5.5, 6.0, 6.5, 7.0, 7.5, 8.0, 8.5, 9.0, 9.5, 10.071 };72 73 G4int ik=0;74 G4double sk=0.;75 76 if (e < EMT1[0]) {77 ik = 1;78 sk = 0.0;79 80 } else if (e <= EMT1[19]) {81 82 for (G4int i = 1; i < 20; i++) {83 84 if (e <= EMT1[i]) {85 ik = i;86 sk = (e - EMT1[ik - 1]) / (EMT1[ik] - EMT1[ik - 1]);87 88 break;89 };90 };91 92 } else {93 94 ik = 19;95 sk = 1.0;96 };97 98 if (verboseLevel > 2) {99 G4cout << " e " << e << " ik " << ik << " sk " << sk << G4endl;100 47 } 101 48 … … 134 81 135 82 136 std::pair<G4int, G4double>137 G4CascadSpecialFunctions::getPositionInEnergyScaleEMS(G4double e)138 {139 G4int verboseLevel = 2;140 141 if (verboseLevel > 3) {142 G4cout << " >>> G4CascadSpecialFunctions::getPositionInEnergyScaleEMS" << G4endl;143 }144 145 const G4double EMS[46] = {146 0.05, 0.06, 0.07, 0.08, 0.09, 0.10, 0.11, 0.12, 0.13, 0.14,147 0.15, 0.16, 0.17, 0.18, 0.19, 0.20, 0.21, 0.22, 0.23, 0.24,148 0.25, 0.26, 0.27, 0.28, 0.29, 0.30, 0.31, 0.32, 0.33, 0.34,149 0.35, 0.36, 0.37, 0.38, 0.39, 0.40, 0.41, 0.42, 0.43, 0.44,150 0.45, 0.46, 0.47, 0.48, 0.49, 0.50151 };152 153 G4int ik=0;154 G4double sk=0.;155 156 if (e < EMS[0]) {157 ik = 1;158 sk = 0.0;159 160 } else if (e <= EMS[45]) {161 162 for (G4int i = 1; i < 46; i++) {163 164 if (e <= EMS[i]) {165 ik = i;166 sk = (e - EMS[ik - 1]) / (EMS[ik] - EMS[ik - 1]);167 168 break;169 };170 };171 172 } else {173 174 ik = 45;175 sk = 1.0;176 };177 178 return std::pair<G4int, G4double>(ik, sk);179 }180 181 182 83 G4double 183 84 G4CascadSpecialFunctions::crossSection(G4double e, G4int is) 184 85 { 185 G4int verboseLevel = 2; 186 187 if (verboseLevel > 3) { 188 G4cout << " >>> G4CascadSpecialFunctions::crossSection" << G4endl; 189 } 190 191 const G4double dsig[46][2] = { 192 {13.7, 15.0}, {15.8, 17.6}, {19.0, 15.0}, {46.0, 15.8}, {52.0, 21.0}, 193 {55.0, 21.9}, {77.0, 31.0}, {101.0, 38.4}, {124.0, 42.7}, {148.0, 55.4}, 194 {165.0, 55.3}, {172.0, 67.9}, {205.0, 66.2}, {189.0, 67.2}, {190.0, 67.8}, 195 {178.0, 63.8}, {148.0, 64.0}, {141.0, 52.1}, {135.0, 58.0}, {127.0, 48.3}, 196 {107.0, 40.0}, {111.0, 37.8}, {81.3, 37.5}, {78.0, 31.7}, {75.0, 30.0}, 197 {64.3, 30.0}, {60.3, 27.7}, {58.9, 26.0}, {55.0, 27.0}, {48.0, 26.0}, 198 {45.2, 26.7}, {40.8, 26.0}, {39.3, 27.0}, {40.7, 27.1}, {31.2, 26.5}, 199 {34.6, 26.9}, {31.4, 27.6}, {27.1, 28.4}, {26.2, 27.5}, {24.4, 27.2}, 200 {25.7, 28.8}, {23.8, 29.3}, {21.5, 27.0}, {22.2, 29.5}, {21.5, 31.2}, 201 {19.0, 30.7} 202 }; 203 204 const G4double asig[4][6][31] = { 205 {{1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 24.3, 24.1, 24.0, 26.3, 206 28.6, 24.8, 19.9, 19.2, 17.4, 15.3, 13.5, 12.3, 11.9, 10.4, 207 11.8, 11.4, 11.0, 10.8, 10.9, 11.7, 11.4, 10.2, 11.0, 11.0, 9.0}, 208 209 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 1.45, 2.90, 4.10, 210 5.30, 22.0, 21.2, 19.9, 14.9, 12.6, 12.3, 11.3, 10.8, 9.50, 211 8.27, 7.20, 6.70, 6.25, 6.04, 5.89, 5.70, 5.60, 5.05, 4.17, 4.00}, 212 213 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 214 0. , 2.27, 4.28, 7.81, 8.03, 8.11, 7.90, 7.82, 7.61, 7.47, 215 7.07, 7.66, 7.05, 6.71, 6.38, 6.36, 6.37, 6.57, 6.01, 5.48, 6.80}, 216 217 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 218 0. , 0. , 1.20, 2.85, 3.70, 4.81, 5.33, 7.74, 6.91, 6.94, 219 7.57, 7.21, 7.11, 7.10, 6.93, 6.79, 6.71, 6.55, 6.55, 6.15, 8.50}, 220 221 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 222 0. , 0. , 0. , .005, 0.54, 0.74, 0.86, 0.91, 1.10, 1.16, 223 1.36, 1.40, 1.43, 1.47, 1.47, 1.43, 1.38, 1.38, 1.63, 1.36, 2.80}, 224 225 // Used as pp, nn total cross section 226 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 227 34.0, 46.2, 46.9, 45.2, 47.1, 42.3, 41.8, 41.2, 41.6, 41.6, 228 41.0, 43.0, 42.4, 40.0, 39.9, 39.8, 42.0, 40.0, 39.8, 39.6, 38.7}}, 229 230 {{1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 33.0, 31.3, 29.5, 27.8, 231 14.6, 16.0, 17.5, 18.3, 19.4, 18.7, 15.6, 14.8, 13.6, 12.5, 232 12.2, 11.9, 11.4, 11.2, 10.1, 9.62, 8.41, 7.14, 7.09, 5.04, 10.2}, 233 234 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 2.00, 4.00, 6.50, 235 19.5, 20.8, 19.8, 18.6, 17.7, 14.4, 13.5, 10.4, 10.1, 12.0, 236 8.87, 8.51, 8.49, 9.20, 8.29, 7.43, 8.20, 4.69, 4.57, 4.06, 4.10}, 237 238 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 239 0.68, 2.76, 3.85, 8.35, 12.7, 12.3, 10.8, 12.0, 10.9, 10.2, 240 10.6, 12.2, 11.8, 11.0, 10.4, 10.5, 11.0, 10.6, 11.8, 12.5, 13.2}, 241 242 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 243 0.22, 0.52, 0.64, 1.19, 1.52, 1.75, 1.51, 2.04, 1.85, 1.70, 244 1.92, 1.66, 1.74, 1.50, 1.39, 1.35, 1.41, 1.48, 1.43, 1.35, 3.20}, 245 246 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 247 0. , 0. , 0.14, 0.24, 0.30, 0.46, 0.85, 1.40, 1.54, 1.52, 248 1.47, 1.48, 1.49, 1.42, 1.39, 1.37, 1.22, 1.19, 0.93, 0. , 2.10}, 249 250 // Used as np total cross section 251 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 252 35.0, 40.0, 42.4, 42.3, 41.0, 40.9, 40.4, 39.8, 35.0, 33.6, 253 41.2, 41.0, 41.1, 41.2, 41.2, 39.6, 36.0, 36.0, 36.2, 36.2 ,40.2}}, 86 // 87 // Total cross sections (mbarns) 88 // 89 const G4double PPtot[30] = { 90 17613.0, 302.9, 257.1, 180.6, 128.4, 90.5, 66.1, 49.4, 36.9, 29.6, 91 26.0, 23.1, 22.6, 23.0, 27.0, 32.0, 44.0, 47.04, 44.86, 46.03, 92 44.09, 41.81, 41.17, 40.65, 40.15, 40.18, 39.26, 38.36, 38.39, 38.41}; 93 94 const G4double NPtot[30] = { 95 20357.0, 912.6, 788.6, 582.1, 415.0, 272.0, 198.8, 145.0, 100.4, 71.1, 96 58.8, 45.7, 38.9, 34.4, 34.0, 35.0, 37.5, 39.02, 40.29, 40.72, 97 42.36, 41.19, 42.04, 41.67, 40.96, 39.48, 39.79, 39.39, 39.36, 39.34}; 254 98 255 {{1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 60.0, 38.0, 30.6, 24.0, 256 18.5, 12.8, 13.6, 9.15, 8.20, 7.80, 7.10, 6.40, 5.81, 5.85, 257 5.50, 5.33, 5.40, 5.50, 4.90, 5.02, 5.00, 4.98, 4.96, 4.96, 4.50}, 258 259 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0.38, 0.75, 1.28, 260 2.26, 11.8, 11.1, 7.56, 6.04, 5.68, 4.15, 3.21, 2.12, 1.66, 261 1.54, 1.53, 1.47, 1.33, 1.39, 1.35, 1.29, 1.23, 1.13, 1.06, 0.70}, 262 263 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 264 0.05, 2.19, 6.02, 7.36, 6.97, 5.83, 6.53, 5.09, 4.24, 3.24, 265 3.31, 3.11, 2.91, 2.78, 2.72, 2.68, 2.48, 2.27, 2.02, 1.77, 4.40}, 266 267 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 268 0.06, 0.35, 0.55, 0.77, 0.89, 0.80, 0.86, 0.97, 0.90, 0.86, 269 0.84, 0.84, 0.83, 0.81, 0.79, 0.82, 0.76, 0.88, 0.89, 0.89, 3.00}, 270 271 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 272 0. , 0.02, 0.07, 0.33, 0.92, 1.39, 2.11, 1.81, 2.39, 2.60, 273 2.19, 1.70, 1.60, 0.68, 1.43, 1.46, 1.46, 1.37, 1.16, 1.09, 2.60}, 274 275 // Used as pi+ p, pi- n total cross section 276 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 277 18.9, 27.2, 34.9, 29.1, 30.8, 29.6, 28.2, 27.5, 26.9, 26.3, 278 25.9, 25.6, 25.2, 26.1, 25.5, 25.4, 25.3, 25.1, 24.9, 24.8, 24.1}}, 279 280 // pi- p -> 2 body (pi+ n -> two body) 281 {{5.90, 9.40, 24.5, 62.6, 65.3, 41.3, 29.3, 24.3, 22.7, 22.9, 282 23.2, 28.4, 11.7, 10.1, 8.30, 7.16, 6.49, 6.36, 6.60, 5.84, 283 5.3, 5.2, 5.2, 5.1, 4.74, 4.7, 4.6, 4.5, 4.4, 4.3, 4.3}, 284 // pi- p -> 3 body 285 {0. , 0. , 0. , 0. , 0.10, 0.40, 2.70, 3.50, 5.30, 6.60, 286 9.10, 17.6, 12.2, 9.78, 7.51, 6.91, 6.86, 6.46, 6.19, 5.13, 287 3.90, 2.82, 3.10, 3.12, 2.52, 2.22, 2.02, 2.01, 1.98, 2.14, 1.20}, 288 289 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 290 0.76, 2.63, 3.72, 6.53, 7.47, 7.94, 7.12, 6.85, 6.09, 5.35, 291 4.12, 3.85, 3.68, 4.09, 3.58, 3.29, 3.08, 2.93, 2.80, 2.65, 3.30}, 292 293 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 294 0.59, 0.74, 1.47, 4.10, 4.78, 4.90, 5.07, 5.50, 5.48, 5.03, 295 4.65, 4.39, 4.06, 3.53, 3.08, 3.05, 2.91, 3.42, 3.93, 3.93, 4.10}, 296 // pi- p -> 6 body 297 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 298 0.01, .007, 0.03, .099, .251, .376, .419, .582, .755, .777, 299 1.13, 1.08, 1.13, 1.08, .962, .866, .738, .674, .645, .613, 1.30}, 300 301 // Used as pi- p and pi+ n total cross section 302 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 303 31.3, 46.0, 30.0, 35.7, 33.4, 31.6, 30.4, 29.6, 28.9, 28.5, 304 28.1, 27.5, 31.0, 27.7, 27.8, 27.1, 26.2, 26.0, 26.0, 25.9, 25.7}} 305 }; 306 307 const G4double EMT2_10 = 0.5; 99 const G4double pipPtot[30] = { 100 0.0, 1.2, 2.5, 3.8, 5.0, 7.0, 9.0, 15.0, 30.0, 64.0, 101 130.0, 190.0, 130.0, 56.0, 28.0, 17.14, 19.28, 27.4, 40.05, 32.52, 102 30.46, 29.0, 27.26, 25.84, 25.5, 24.5, 24.0, 23.5, 23.0, 23.0}; 103 104 const G4double pimPtot[30] = { 105 0.0, 3.5, 4.0, 4.7, 6.0, 7.5, 8.3, 12.0, 14.4, 24.0, 106 44.0, 67.0, 45.06, 28.82, 28.98, 41.66, 37.32, 51.37, 35.67, 33.25, 107 31.84, 31.0, 29.32, 27.5, 26.5, 25.9, 25.5, 25.2, 25.0, 24.8}; 108 109 const G4double pizPtot[30] = { 110 0.0, 3.55, 4.65, 5.9, 7.75, 10.1, 11.8, 18.0, 27.7, 52.5, 111 102.0, 150.0, 102.64, 51.03, 34.94, 34.52, 32.45, 44.05, 40.2, 34.93, 112 32.0, 30.0, 28.29, 26.91, 26.25, 25.25, 24.75, 24.35, 24.0, 23.9}; 113 114 const G4double kpPtot[30] = { 115 10.0, 10.34, 10.44, 10.61, 10.82, 11.09, 11.43, 11.71, 11.75, 11.8, 116 11.98, 12.28, 12.56, 12.48, 12.67, 14.48, 15.92, 17.83, 17.93, 17.88, 117 17.46, 17.3, 17.3, 17.4, 17.4, 17.4, 17.4, 17.5, 17.7, 17.8}; 118 119 const G4double kpNtot[30] = { 120 6.64, 6.99, 7.09, 7.27, 7.48, 7.75, 8.1, 8.49, 8.84, 9.31, 121 9.8, 10.62, 11.64, 13.08, 14.88, 16.60, 17.5, 18.68, 18.68, 18.29, 122 17.81, 17.6, 17.6, 17.6, 17.6, 17.6, 17.7, 17.8, 17.9, 18.0}; 123 124 const G4double kmPtot[30] = { 125 1997.0, 1681.41, 1586.74, 1428.95, 1239.59, 987.12, 671.54, 377.85, 247.30, 75.54, 126 71.08, 54.74, 44.08, 44.38, 45.45, 45.07, 41.04, 35.75, 33.22, 30.08, 127 27.61, 26.5, 25.2, 24.0, 23.4, 22.8, 22.0, 21.3, 21.0, 20.9}; 128 129 const G4double kmNtot[30] = { 130 6.15, 6.93, 7.16, 7.55, 8.02, 8.65, 9.43, 10.36, 11.34, 12.64, 131 14.01, 16.45, 19.32, 23.0, 27.6, 30.92, 29.78, 28.28, 25.62, 23.1, 132 22.31, 21.9, 21.73, 21.94, 21.23, 20.5, 20.4, 20.2, 20.1, 20.0}; 133 134 const G4double lPtot[30] = { 135 300.0, 249.07, 233.8, 208.33, 177.78, 137.04, 86.11, 41.41, 28.86, 12.35, 136 13.82, 16.76, 20.68, 25.9, 30.37, 31.56, 32.83, 34.5, 34.91, 35.11, 137 35.03, 36.06, 35.13, 35.01, 35.0, 35.0, 35.0, 35.0, 35.0, 35.0}; 138 139 const G4double spPtot[30] = { 140 150.0, 146.0, 144.8, 142.8, 140.4, 137.2, 133.2, 127.6, 120.0, 110.0, 141 98.06, 84.16, 72.28, 56.58, 43.22, 40.44, 36.14, 30.48, 31.53, 31.92, 142 29.25, 28.37, 29.81, 33.15, 33.95, 34.0, 34.0, 34.0, 34.0, 34.0}; 143 144 const G4double smPtot[30] = { 145 937.0, 788.14, 743.48, 669.05, 579.74, 460.65, 311.79, 183.33, 153.65, 114.6, 146 105.18, 89.54, 70.58, 45.5, 32.17, 32.54, 32.95, 33.49, 33.55, 33.87, 147 34.02, 34.29, 33.93, 33.88, 34.0, 34.0, 34.0, 34.0, 34.0, 34.0}; 148 149 const G4double xi0Ptot[30] = { 150 16.0, 14.72, 14.34, 13.7, 12.93, 11.9, 10.62, 9.29, 8.3, 7.0, 151 7.96, 9.56, 11.48, 14.04, 19.22, 25.29, 29.4, 34.8, 34.32, 33.33, 152 31.89, 29.55, 27.89, 21.43, 17.0, 16.0, 16.0, 16.0, 16.0, 16.0}; 153 154 const G4double ximPtot[30] = { 155 33.0, 32.5, 32.35, 32.1, 31.8, 31.4, 30.9, 30.2, 29.25, 28.0, 156 26.5, 24.6, 22.8, 20.78, 18.22, 19.95, 21.7, 24.0, 24.74, 25.95, 157 27.59, 27.54, 23.16, 17.43, 12.94, 12.0, 12.0, 12.0, 12.0, 12.0}; 158 159 308 160 G4double csec = 0.0; 309 161 G4int l = is; … … 321 173 }; 322 174 323 if (e < EMT2_10) { 324 325 if (l == 1) { // pp or nn 326 327 if (e >= 0.4) { 328 csec = 34.5; 329 330 } else if (e >= 0.04) { 331 csec = 0.23938 / (e * e) + 1.802 / e + 27.147; 332 333 } else if (e >= 0.001) { 334 csec = -0.0050574 / (e * e) + 9.0692 / e + 6.9466; 335 336 } else { 337 csec = 4.0 / e; 338 } 339 340 } else if (l == 2) { // np 341 342 if (e >= 0.4) { 343 csec = 0.88737 / e + 53.37 * e + 3.5475; 344 345 } else if (e >= 0.04) { 346 csec = 0.093074 / (e * e) - 0.011148 / e + 22.429; 347 348 } else if (e >= 0.001) { 349 csec = -0.0011748 / (e * e) + 3.0885 / e + 5.3107; 350 351 } else { 352 csec = 1.92 / e; 353 }; 354 355 } else { // pi + n, p 356 357 if (e <= 0.05) { 358 359 if (l == 3) { 360 csec = 3.7 + 204.35 * e; 361 362 } else if (l == 4) { 363 csec = 6.5 + 170.71 * e; 364 365 } else if (l == 5) { 366 csec = 5.1 + 187.53 * e; 367 }; 368 369 } else { 370 std::pair<G4int, G4double> iksk = getPositionInEnergyScaleEMS(e); 371 G4int ik = iksk.first; 372 G4double sk = iksk.second; 373 374 if (l < 5) { 375 int j = l - 3; 376 csec = dsig[ik - 1][j] + sk * (dsig[ik][j] - dsig[ik - 1][j]); 377 378 } else { 379 csec = 0.5 * (dsig[ik - 1][0] + dsig[ik - 1][1] + 380 sk * (dsig[ik][0] - dsig[ik - 1][0] + dsig[ik][1] - dsig[ik - 1][1])); 381 }; 382 }; 383 }; 175 std::pair<G4int, G4double> iksk = getPositionInEnergyScale3(e); 176 G4int ik = iksk.first; 177 G4double sk = iksk.second; 178 179 // pp, nn 180 if (l == 1) { 181 csec = PPtot[ik - 1] + sk * (PPtot[ik] - PPtot[ik - 1]); 182 183 // np 184 } else if (l == 2) { 185 csec = NPtot[ik - 1] + sk * (NPtot[ik] - NPtot[ik - 1]); 186 187 // pi+p, pi-n 188 } else if (l == 3) { 189 csec = pipPtot[ik - 1] + sk * (pipPtot[ik] - pipPtot[ik - 1]); 190 191 // pi-p, pi+n 192 } else if (l == 4) { 193 csec = pimPtot[ik - 1] + sk * (pimPtot[ik] - pimPtot[ik - 1]); 194 195 // pi0p, pi0n 196 } else if (l == 5) { 197 csec = pizPtot[ik - 1] + sk * (pizPtot[ik] - pizPtot[ik - 1]); 198 199 // k+ p, k0 n 200 } else if (l == 11 || l == 30) { 201 csec = kpPtot[ik - 1] + sk * (kpPtot[ik] - kpPtot[ik - 1]); 202 203 // k- p, k0b n 204 } else if (l == 13 || l == 34) { 205 csec = kmPtot[ik - 1] + sk * (kmPtot[ik] - kmPtot[ik - 1]); 206 207 // k+ n, k0 p 208 } else if (l == 22 || l == 15) { 209 csec = kpNtot[ik - 1] + sk * (kpNtot[ik] - kpNtot[ik - 1]); 210 211 // k- n, k0b p 212 } else if (l == 26 || l == 17) { 213 csec = kmNtot[ik - 1] + sk * (kmNtot[ik] - kmNtot[ik - 1]); 214 215 // L p, L n, S0 p, S0 n 216 } else if (l == 21 || l == 25 || l == 42 || l == 50) { 217 csec = lPtot[ik - 1] + sk * (lPtot[ik] - lPtot[ik - 1]); 218 219 // Sp p, Sm n 220 } else if (l == 23 || l == 54) { 221 csec = spPtot[ik - 1] + sk * (spPtot[ik] - spPtot[ik - 1]); 222 223 // Sm p, Sp n 224 } else if (l == 27 || l == 46) { 225 csec = smPtot[ik - 1] + sk * (smPtot[ik] - smPtot[ik - 1]); 226 227 // Xi0 p, Xi- n 228 } else if (l == 29 || l == 62) { 229 csec = xi0Ptot[ik - 1] + sk * (xi0Ptot[ik] - xi0Ptot[ik - 1]); 230 231 // Xi- p, Xi0 n 232 } else if (l == 31 || l == 58) { 233 csec = ximPtot[ik - 1] + sk * (ximPtot[ik] - ximPtot[ik - 1]); 384 234 385 235 } else { 386 std::pair<G4int, G4double> iksk = getPositionInEnergyScale2(e); 387 G4int ik = iksk.first; 388 G4double sk = iksk.second; 389 390 if (l < 5) { 391 csec = asig[l - 1][5][ik - 1] + sk * (asig[l - 1][5][ik] - asig[l - 1][5][ik - 1]); 392 393 } else { 394 csec = 0.5 * (asig[2][5][ik - 1] + asig[3][5][ik - 1] + 395 sk * (asig[2][5][ik] - asig[2][5][ik - 1] + 396 asig[3][5][ik] - asig[3][5][ik - 1])); 397 }; 398 }; 236 G4cout << " unknown collison type = " << l << G4endl; 237 csec = 0.0; 238 } 399 239 400 240 return csec; -
trunk/source/processes/hadronic/models/cascade/cascade/src/G4CascadeInterface.cc
r962 r1196 30 30 #include "G4IonTable.hh" 31 31 #include "G4InuclCollider.hh" 32 #include "G4IntraNucleiCascader.hh" 33 #include "G4ElementaryParticleCollider.hh" 34 #include "G4NonEquilibriumEvaporator.hh" 35 #include "G4EquilibriumEvaporator.hh" 36 #include "G4Fissioner.hh" 37 #include "G4BigBanger.hh" 32 // #include "G4IntraNucleiCascader.hh" 38 33 #include "G4InuclElementaryParticle.hh" 39 34 #include "G4InuclNuclei.hh" … … 58 53 G4cout << " >>> G4CascadeInterface::G4CascadeInterface" << G4endl; 59 54 } 55 60 56 } 57 61 58 62 59 G4CascadeInterface::~G4CascadeInterface() … … 190 187 191 188 // Colliders initialisation 192 G4ElementaryParticleCollider* colep = new G4ElementaryParticleCollider; 193 G4IntraNucleiCascader* inc = new G4IntraNucleiCascader; // the actual cascade 194 inc->setInteractionCase(1); // Interaction type is particle with nuclei. 195 196 G4NonEquilibriumEvaporator* noneq = new G4NonEquilibriumEvaporator; 197 G4EquilibriumEvaporator* eqil = new G4EquilibriumEvaporator; 198 G4Fissioner* fiss = new G4Fissioner; 199 G4BigBanger* bigb = new G4BigBanger; 200 G4InuclCollider* collider = new G4InuclCollider(colep, inc, noneq, eqil, fiss, bigb); 189 // G4ElementaryParticleCollider* colep = new G4ElementaryParticleCollider; 190 // G4IntraNucleiCascader* inc = new G4IntraNucleiCascader; // the actual cascade 191 // inc->setInteractionCase(1); // Interaction type is particle with nuclei. 192 inc.setInteractionCase(1); // Interaction type is particle with nuclei. 193 194 // G4NonEquilibriumEvaporator* noneq = new G4NonEquilibriumEvaporator; 195 // G4EquilibriumEvaporator* eqil = new G4EquilibriumEvaporator; 196 // G4Fissioner* fiss = new G4Fissioner; 197 // G4BigBanger* bigb = new G4BigBanger; 198 G4InuclCollider* collider = new G4InuclCollider(&colep, &inc, &noneq, &eqil, &fiss, &bigb); 201 199 202 200 G4int maxTries = 100; // maximum tries for inelastic collision to avoid infinite loop … … 516 514 517 515 delete bullet; 518 delete colep; 519 delete inc; 520 delete noneq; 521 delete fiss; 522 delete eqil; 523 delete bigb; 516 // delete inc; 524 517 delete collider; 525 518 -
trunk/source/processes/hadronic/models/cascade/cascade/src/G4CascadeSigmaPlusNChannel.cc
r962 r1196 93 93 {2,3,3,5,7,7,25}, {2,3,3,3,5,5,25}}; 94 94 95 // Cross sections for L p-> 2-7 body final states96 // 95 // Cross sections for S+ n -> 2-7 body final states 96 // 97 97 // first index: 0-2: channels for mult = 2 98 // 3-14: channels for mult = 3 98 // 3-14: channels for mult = 3 99 99 // 15-47: channels for mult = 4 100 100 // 48-106: channels for mult = 5 … … 109 109 // 110 110 // S+ n 111 { 300.0,45.37,12.35,12.93,14.02,15.11,16.20,17.28,18.05,18.18,112 18.32,17.82,15.53,13.38,11.69,10.12, 9.14, 8.50, 8.10, 7.70,113 7.40, 7.10, 6.90, 6.70, 6.40, 6.10, 6.00, 5.90, 5.77, 5.65, 4.70},111 {267., 84.5, 51.6, 43.7, 35.8, 27.9, 19.96,12.06, 9.90, 9.76, 112 9.62, 8.66, 8.08, 7.50, 7.10, 6.60, 6.20, 5.80, 5.48, 5.32, 113 5.16, 5.08, 4.92, 4.76, 4.58, 4.42, 4.26, 4.18, 4.16, 4.14, 3.94}, 114 114 115 115 // L p 116 { 0.0, 0.0, 0.0, 0.69, 1.48, 2.28, 3.08, 3.87, 4.38, 4.33,117 4.27, 4.00, 3.27, 2.07, 1.02, 0.35, 0.11, 0.05, 0.01, 0.0,118 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0},116 {170., 49.2, 31.0, 26.8, 22.6, 18.4, 14.27,10.09, 8.90, 8.76, 117 8.62, 7.32, 6.03, 4.70, 3.20, 1.60, 0.80, 0.60, 0.56, 0.54, 118 0.52, 0.51, 0.49, 0.47, 0.46, 0.44, 0.42, 0.41, 0.41, 0.41, 0.38}, 119 119 120 120 // S0 p 121 { 0.0, 0.0, 0.0, 0.69, 1.48, 2.28, 3.08, 3.87, 4.38, 4.33,122 4.27, 4.00, 3.27, 2.07, 1.02, 0.35, 0.11, 0.05, 0.01, 0.0,123 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0},121 {500., 59.0, 32.0, 27.6, 23.3, 18.9, 14.51,10.14, 8.90, 8.76, 122 8.62, 7.32, 6.03, 4.70, 3.20, 1.60, 0.80, 0.60, 0.56, 0.54, 123 0.52, 0.51, 0.49, 0.47, 0.46, 0.44, 0.42, 0.41, 0.41, 0.41, 0.38}, 124 124 125 125 // … … 128 128 // p p K- 129 129 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 130 0.0, 0.0 6, 0.69, 1.22, 1.04, 0.77, 0.57, 0.45, 0.35, 0.24,131 0. 21, 0.19, 0.18, 0.17, 0.16, 0.14, 0.12, 0.10, 0.09, 0.08, 0.01},130 0.0, 0.07, 0.27, 1.00, 1.20, 1.00, 0.85, 0.69, 0.64, 0.56, 131 0.51, 0.46, 0.41, 0.36, 0.31, 0.26, 0.21, 0.16, 0.14, 0.13, 0.05}, 132 132 133 133 // n p K0bar 134 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,135 0.0, 0.0 6, 0.69, 1.22, 1.04, 0.77, 0.57, 0.45, 0.35, 0.24,136 0. 21, 0.19, 0.18, 0.17, 0.16, 0.14, 0.12, 0.10, 0.09, 0.08, 0.01},137 134 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 135 0.0, 0.07, 0.27, 1.00, 1.20, 1.00, 0.85, 0.69, 0.64, 0.56, 136 0.51, 0.46, 0.41, 0.36, 0.31, 0.26, 0.21, 0.16, 0.14, 0.13, 0.05}, 137 138 138 // S+ n pi0 139 { 0.0, 0.0, 0.0, 0. 23, 0.51, 0.78, 1.05, 1.32, 1.57, 1.77,140 1.97, 4.06, 4.21, 3.03, 1.82, 0.96, 0.57, 0.42, 0.27, 0.19,141 0. 17, 0.16, 0.15, 0.14, 0.13, 0.11, 0.09, 0.07, 0.06, 0.05, 0.0},139 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.03, 0.06, 140 0.10, 0.35, 0.65, 1.00, 0.90, 0.70, 0.60, 0.49, 0.44, 0.40, 141 0.36, 0.33, 0.29, 0.25, 0.21, 0.17, 0.14, 0.11, 0.10, 0.09, 0.04}, 142 142 143 143 // S0 n pi+ 144 { 0.0, 0.0, 0.0, 0. 26, 0.57, 0.88, 1.19, 1.50, 1.78, 2.01,145 2.24, 3.64, 3.36, 2.42, 1.45, 0.80, 0.46, 0.33, 0.22, 0.15,146 0. 13, 0.12, 0.11, 0.10, 0.09, 0.07, 0.06, 0.04, 0.04, 0.03, 0.0},144 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.03, 0.06, 145 0.10, 0.35, 0.65, 1.00, 0.90, 0.70, 0.60, 0.49, 0.44, 0.40, 146 0.36, 0.33, 0.29, 0.25, 0.21, 0.17, 0.14, 0.11, 0.10, 0.09, 0.04}, 147 147 148 148 // S+ p pi- 149 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 , 0.0,150 0. 0, 0.0, 0.07, 0.18, 0.15, 0.09, 0.06, 0.04, 0.03, 0.02,151 0. 01, 0.01, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0},149 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.03, 0.06, 150 0.10, 0.35, 0.65, 1.00, 0.90, 0.70, 0.60, 0.49, 0.44, 0.40, 151 0.36, 0.33, 0.29, 0.25, 0.21, 0.17, 0.14, 0.11, 0.10, 0.09, 0.04}, 152 152 153 153 // S0 p pi0 154 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 , 0.0,155 0. 0, 0.0, 0.07, 0.18, 0.15, 0.09, 0.06, 0.04, 0.03, 0.02,156 0. 01, 0.01, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0},154 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.03, 0.06, 155 0.10, 0.35, 0.65, 1.00, 0.90, 0.70, 0.60, 0.49, 0.44, 0.40, 156 0.36, 0.33, 0.29, 0.25, 0.21, 0.17, 0.14, 0.11, 0.10, 0.09, 0.04}, 157 157 158 158 // L p pi0 159 { 0.0, 0.0, 0.0, 0. 0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,160 0.0, 0.0, 0.95, 0.98, 0.60, 0.33, 0.18, 0.14, 0.09, 0.06,161 0.05, 0.05, 0.04, 0.04, 0.04, 0.03, 0.03, 0.02, 0.02, 0.02, 0.01},159 { 0.0, 0.0, 0.0, 0.4, 0.8, 1.1, 1.52, 1.90, 2.10, 2.24, 160 2.38, 3.54, 3.46, 3.00, 2.60, 2.20, 1.80, 1.46, 1.33, 1.21, 161 1.06, 0.95, 0.85, 0.75, 0.65, 0.54, 0.44, 0.33, 0.30, 0.28, 0.11}, 162 162 163 163 // L n pi+ 164 { 0.0, 0.0, 0.0, 0. 0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.04,165 0.06, 0.32, 0.84, 0.77, 0.48, 0.27, 0.15, 0.11, 0.07, 0.05,166 0.04, 0.04, 0.03, 0.03, 0.03, 0.03, 0.03, 0.02, 0.02, 0.02, 0.01},164 { 0.0, 0.0, 0.0, 0.4, 0.8, 1.1, 1.52, 1.90, 2.10, 2.24, 165 2.38, 3.54, 3.46, 3.00, 2.60, 2.20, 1.80, 1.46, 1.33, 1.21, 166 1.06, 0.95, 0.85, 0.75, 0.65, 0.54, 0.44, 0.33, 0.30, 0.28, 0.11}, 167 167 168 168 // S- p pi+ 169 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,170 0. 0, 0.0, 0.07, 0.18, 0.15, 0.09, 0.06, 0.04, 0.03, 0.02,171 0. 01, 0.01, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0},172 169 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.03, 0.06, 170 0.10, 0.35, 0.65, 1.00, 0.90, 0.70, 0.60, 0.49, 0.44, 0.40, 171 0.36, 0.33, 0.29, 0.25, 0.21, 0.17, 0.14, 0.11, 0.10, 0.09, 0.04}, 172 173 173 // X0 p K0 174 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,175 0.0, 0.0, 0.0, 0.0 , 0.0, 0.01, 0.02, 0.02, 0.02, 0.02,176 0.0 1, 0.01, 0.01, 0.0, 0.0,0.0, 0.0, 0.0, 0.0, 0.0, 0.0},177 174 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 175 0.0, 0.0, 0.0, 0.02, 0.03, 0.03, 0.03, 0.02, 0.02, 0.02, 176 0.02, 0.01, 0.01, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}, 177 178 178 // X0 n K+ 179 179 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 180 0.0, 0.0, 0.0, 0.0 , 0.0, 0.01, 0.02, 0.02, 0.02, 0.02,181 0.0 1, 0.01, 0.01, 0.0, 0.0,0.0, 0.0, 0.0, 0.0, 0.0, 0.0},180 0.0, 0.0, 0.0, 0.02, 0.03, 0.03, 0.03, 0.02, 0.02, 0.02, 181 0.02, 0.01, 0.01, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}, 182 182 183 183 // X- p K+ 184 184 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 185 0.0, 0.0, 0.0, 0.0 , 0.0, 0.01, 0.02, 0.02, 0.02, 0.02,186 0.0 1, 0.01, 0.01, 0.0, 0.0,0.0, 0.0, 0.0, 0.0, 0.0, 0.0},185 0.0, 0.0, 0.0, 0.02, 0.03, 0.03, 0.03, 0.02, 0.02, 0.02, 186 0.02, 0.01, 0.01, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}, 187 187 188 188 // … … 191 191 // p p K- pi0 192 192 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 193 0.0, 0.0, 0.0 5, 0.18, 0.34, 0.47, 0.59, 0.77, 1.00, 1.15,194 1.10, 1.00, 0.90, 0.81, 0.73, 0.66, 0.59, 0.53, 0.51, 0.49, 0.31},193 0.0, 0.0, 0.08, 0.11, 0.19, 0.32, 0.47, 0.49, 0.46, 0.44, 194 0.43, 0.41, 0.40, 0.38, 0.37, 0.36, 0.35, 0.34, 0.34, 0.33, 0.29}, 195 195 196 196 // p p K0bar pi- 197 197 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 198 0.0, 0.0, 0.0 5, 0.18, 0.34, 0.47, 0.59, 0.77, 1.00, 1.15,199 1.10, 1.00, 0.90, 0.81, 0.73, 0.66, 0.59, 0.53, 0.51, 0.49, 0.31},198 0.0, 0.0, 0.08, 0.11, 0.19, 0.32, 0.47, 0.49, 0.46, 0.44, 199 0.43, 0.41, 0.40, 0.38, 0.37, 0.36, 0.35, 0.34, 0.34, 0.33, 0.29}, 200 200 201 201 // n p K0bar pi0 202 202 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 203 0.0, 0.0, 0.0 5, 0.18, 0.34, 0.47, 0.59, 0.77, 1.00, 1.15,204 1.10, 1.00, 0.90, 0.81, 0.73, 0.66, 0.59, 0.53, 0.51, 0.49, 0.31},203 0.0, 0.0, 0.08, 0.11, 0.19, 0.32, 0.47, 0.49, 0.46, 0.44, 204 0.43, 0.41, 0.40, 0.38, 0.37, 0.36, 0.35, 0.34, 0.34, 0.33, 0.29}, 205 205 206 206 // n p K- pi+ 207 207 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 208 0.0, 0.0, 0.0 5, 0.18, 0.34, 0.47, 0.59, 0.77, 1.00, 1.15,209 1.10, 1.00, 0.90, 0.81, 0.73, 0.66, 0.59, 0.53, 0.51, 0.49, 0.31},208 0.0, 0.0, 0.08, 0.11, 0.19, 0.32, 0.47, 0.49, 0.46, 0.44, 209 0.43, 0.41, 0.40, 0.38, 0.37, 0.36, 0.35, 0.34, 0.34, 0.33, 0.29}, 210 210 211 211 // n n K0bar pi+ 212 212 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 213 0.0, 0.0, 0.0 5, 0.18, 0.34, 0.47, 0.59, 0.77, 1.00, 1.15,214 1.10, 1.00, 0.90, 0.81, 0.73, 0.66, 0.59, 0.53, 0.51, 0.49, 0.31},215 213 0.0, 0.0, 0.08, 0.11, 0.19, 0.32, 0.47, 0.49, 0.46, 0.44, 214 0.43, 0.41, 0.40, 0.38, 0.37, 0.36, 0.35, 0.34, 0.34, 0.33, 0.29}, 215 216 216 // S+ n 2pi0 217 217 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 218 0.0 1, 0.12, 0.36, 1.13, 1.97, 2.74, 2.59, 2.07, 1.56, 1.54,219 1.51, 1.49, 1.46, 1.68, 1.89, 1.95, 1.98, 2.02, 2.02, 2.02, 2.04},218 0.0, 0.0, 0.0, 0.02, 0.08, 0.20, 0.24, 0.25, 0.23, 0.22, 219 0.21, 0.20, 0.20, 0.19, 0.18, 0.17, 0.16, 0.16, 0.16, 0.16, 0.14}, 220 220 221 221 // S+ n pi+ pi- 222 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 1,223 0.0 2, 0.20, 0.59, 1.59, 3.24, 4.96, 4.33, 3.45, 2.60, 2.56,224 2.52, 2.48, 2.44, 2.40, 2.36, 2.32, 2.28, 2.24, 2.22, 2.20, 2.04},222 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 223 0.0, 0.0, 0.0, 0.02, 0.08, 0.20, 0.24, 0.25, 0.23, 0.22, 224 0.21, 0.20, 0.20, 0.19, 0.18, 0.17, 0.16, 0.16, 0.16, 0.16, 0.14}, 225 225 226 226 // S0 n pi+ pi0 227 227 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 228 0.0, 0. 20, 0.59, 1.67, 2.86, 3.64, 4.08, 4.17, 4.00, 3.50,229 3.32, 3.20, 3.00, 2.80, 2.60, 2.40, 2.20, 2.00, 1.89, 1.79, 1.00},228 0.0, 0.03, 0.09, 0.13, 0.38, 0.53, 0.68, 0.71, 0.67, 0.63, 229 0.61, 0.58, 0.57, 0.54, 0.52, 0.50, 0.48, 0.47, 0.47, 0.46, 0.41}, 230 230 231 231 // S+ n K0bar K0 232 232 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 233 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 2, 0.02, 0.03, 0.03,234 0.0 4, 0.04, 0.04, 0.03, 0.03, 0.03, 0.03, 0.02, 0.02, 0.02, 0.01},233 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 234 0.02, 0.02, 0.02, 0.01, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0}, 235 235 236 236 // S+ n K+ K- 237 237 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 238 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 2, 0.02, 0.03, 0.03,239 0.0 4, 0.04, 0.04, 0.03, 0.03, 0.03, 0.03, 0.02, 0.02, 0.02, 0.01},238 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 239 0.02, 0.02, 0.02, 0.01, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0}, 240 240 241 241 // S0 n K+ K0bar 242 242 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 243 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 2, 0.02, 0.03, 0.03,244 0.0 4, 0.04, 0.04, 0.03, 0.03, 0.03, 0.03, 0.02, 0.02, 0.02, 0.01},243 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 244 0.02, 0.02, 0.02, 0.01, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0}, 245 245 246 246 // S+ p pi- pi0 247 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,248 0.0, 0.0, 0.0 1, 0.04, 0.16, 0.29, 0.35, 0.43, 0.38, 0.33,249 0.2 7, 0.22, 0.19, 0.16, 0.14, 0.12, 0.10, 0.08, 0.07, 0.07, 0.01},250 247 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 248 0.0, 0.0, 0.0, 0.02, 0.08, 0.20, 0.24, 0.25, 0.23, 0.22, 249 0.21, 0.20, 0.20, 0.19, 0.18, 0.17, 0.16, 0.16, 0.16, 0.16, 0.14}, 250 251 251 // S0 p 2pi0 252 252 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 253 0.0, 0.0 , 0.01, 0.03, 0.10, 0.17, 0.24, 0.26, 0.23, 0.20,254 0. 16, 0.13, 0.11, 0.11, 0.11, 0.10, 0.09, 0.07, 0.07, 0.06, 0.0},253 0.0, 0.02, 0.06, 0.13, 0.38, 0.88, 1.13, 1.17, 1.00, 0.94, 254 0.91, 0.86, 0.84, 0.80, 0.78, 0.76, 0.73, 0.71, 0.70, 0.69, 0.62}, 255 255 256 256 // S0 p pi+ pi- 257 257 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 258 0.0, 0.0 , 0.01, 0.04, 0.16, 0.29, 0.35, 0.43, 0.38, 0.33,259 0. 27, 0.22, 0.19, 0.16, 0.14, 0.12, 0.10, 0.08, 0.07, 0.07, 0.01},258 0.0, 0.03, 0.09, 0.13, 0.38, 0.69, 0.97, 1.02, 0.96, 0.90, 259 0.87, 0.83, 0.81, 0.77, 0.75, 0.73, 0.70, 0.68, 0.68, 0.67, 0.60}, 260 260 261 261 // S+ p K- K0 262 262 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 263 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 1, 0.01, 0.02, 0.03,264 0.0 4, 0.04, 0.03, 0.03, 0.02, 0.02, 0.01, 0.01, 0.01,0.0, 0.0},263 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 264 0.02, 0.02, 0.02, 0.01, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0}, 265 265 266 266 // S0 p K0 K0bar 267 267 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 268 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 1, 0.01, 0.02, 0.03,269 0.0 4, 0.04, 0.03, 0.03, 0.02, 0.02, 0.01, 0.01, 0.01,0.0, 0.0},268 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 269 0.02, 0.02, 0.02, 0.01, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0}, 270 270 271 271 // S0 p K+ K- 272 272 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 273 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 1, 0.01, 0.02, 0.03,274 0.0 4, 0.04, 0.03, 0.03, 0.02, 0.02, 0.01, 0.01, 0.01,0.0, 0.0},273 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 274 0.02, 0.02, 0.02, 0.01, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0}, 275 275 276 276 // L p 2pi0 277 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,278 0.0 , 0.0, 0.04, 0.21, 0.40, 0.77, 0.86, 0.80, 0.75, 0.68,279 0.67, 0.54, 0.51, 0.56, 0.60, 0.59, 0.52, 0.45, 0.40, 0.36, 0.10},280 277 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.02, 0.04, 278 0.07, 0.26, 0.45, 0.73, 1.76, 3.37, 3.40, 3.57, 3.36, 3.12, 279 3.00, 2.85, 2.80, 2.66, 2.58, 2.50, 2.40, 2.33, 2.30, 2.28, 2.03}, 280 281 281 // L p pi+ pi- 282 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 , 0.0,283 0. 0, 0.01, 0.08, 0.34, 0.66, 1.28, 1.43, 1.33, 1.25, 1.15,284 1.12, 0.90, 0.85, 0.80, 0.75, 0.70, 0.60, 0.50, 0.44, 0.39, 0.10},282 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.03, 0.07, 283 0.11, 0.44, 0.75, 1.07, 1.57, 2.44, 3.24, 3.40, 3.20, 3.00, 284 2.90, 2.76, 2.70, 2.57, 2.49, 2.42, 2.32, 2.25, 2.22, 2.20, 1.97}, 285 285 286 286 // L n pi+ pi0 287 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 , 0.0,288 0. 0, 0.01, 0.08, 0.34, 0.66, 1.01, 1.22, 1.39, 1.30, 1.20,289 1. 10, 1.05, 1.00, 0.95, 0.85, 0.75, 0.65, 0.55, 0.51, 0.47, 0.15},287 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.03, 0.07, 288 0.11, 0.44, 0.75, 1.07, 1.15, 1.85, 2.04, 2.14, 2.01, 1.87, 289 1.80, 1.71, 1.68, 1.60, 1.55, 1.50, 1.44, 1.40, 1.38, 1.37, 1.22}, 290 290 291 291 // L p K0 K0bar 292 292 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 293 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 , 0.01, 0.01, 0.02,294 0.0 3, 0.03, 0.02, 0.02, 0.01, 0.01, 0.01,0.0, 0.0, 0.0, 0.0},293 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 0.02, 294 0.02, 0.02, 0.01, 0.01, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0}, 295 295 296 296 // L p K+ K- 297 297 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 298 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 , 0.01, 0.01, 0.02,299 0.0 3, 0.03, 0.02, 0.02, 0.01, 0.01, 0.01,0.0, 0.0, 0.0, 0.0},298 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 0.02, 299 0.02, 0.02, 0.01, 0.01, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0}, 300 300 301 301 // L n K+ K0bar 302 302 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 303 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 , 0.01, 0.01, 0.02,304 0.0 3, 0.03, 0.02, 0.02, 0.01, 0.01, 0.01,0.0, 0.0, 0.0, 0.0},303 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 0.02, 304 0.02, 0.02, 0.01, 0.01, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0}, 305 305 306 306 // S- p pi+ pi0 307 307 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 308 0.0, 0.0, 0.01, 0.0 3, 0.13, 0.29, 0.30, 0.32, 0.32, 0.28,309 0. 26, 0.24, 0.22, 0.19, 0.17, 0.15, 0.13, 0.11, 0.11, 0.10, 0.07},308 0.0, 0.0, 0.01, 0.04, 0.06, 0.12, 0.19, 0.20, 0.19, 0.18, 309 0.17, 0.16, 0.16, 0.15, 0.15, 0.15, 0.14, 0.14, 0.14, 0.14, 0.12}, 310 310 311 311 // S- n 2pi+ 312 312 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 313 0.0, 0.0, 0.0 1, 0.03, 0.13, 0.29, 0.30, 0.32, 0.32, 0.28,314 0.2 6, 0.24, 0.22, 0.19, 0.17, 0.15, 0.13, 0.11, 0.11, 0.10, 0.07},313 0.0, 0.0, 0.02, 0.07, 0.10, 0.20, 0.28, 0.29, 0.27, 0.25, 314 0.24, 0.23, 0.23, 0.22, 0.21, 0.20, 0.19, 0.18, 0.18, 0.18, 0.16}, 315 315 316 316 // S- p K+ K0bar 317 317 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 318 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 1, 0.02, 0.03,319 0.0 4, 0.04, 0.03, 0.03, 0.02, 0.02, 0.01, 0.01,0.0, 0.0, 0.0},318 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 319 0.02, 0.02, 0.02, 0.02, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0}, 320 320 321 321 // X0 p K0 pi0 322 322 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 323 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.0 2, 0.02, 0.03, 0.03,324 0.0 4, 0.04, 0.03, 0.03, 0.02, 0.02, 0.01, 0.01,0.0, 0.0, 0.0},323 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.01, 0.02, 0.02, 324 0.02, 0.01, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}, 325 325 326 326 // X0 n K0 pi+ 327 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,328 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.0 2, 0.02, 0.03, 0.03,329 0.0 4, 0.04, 0.03, 0.03, 0.02, 0.02, 0.01, 0.01,0.0, 0.0, 0.0},330 327 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 328 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.01, 0.02, 0.02, 329 0.02, 0.01, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}, 330 331 331 // X0 n K+ pi0 332 332 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 333 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.0 2, 0.02, 0.03, 0.03,334 0.0 4, 0.04, 0.03, 0.03, 0.02, 0.02, 0.01, 0.01,0.0, 0.0, 0.0},333 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.01, 0.02, 0.02, 334 0.02, 0.01, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}, 335 335 336 336 // X0 p K+ pi- 337 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,338 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.0 2, 0.02, 0.03, 0.03,339 0.0 4, 0.04, 0.03, 0.03, 0.02, 0.02, 0.01, 0.01,0.0, 0.0, 0.0},340 337 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 338 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.01, 0.02, 0.02, 339 0.02, 0.01, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}, 340 341 341 // X- p K+ pi0 342 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,343 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.0 2, 0.02, 0.03, 0.03,344 0.0 4, 0.04, 0.03, 0.03, 0.02, 0.02, 0.01, 0.01,0.0, 0.0, 0.0},345 342 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 343 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.01, 0.02, 0.02, 344 0.02, 0.01, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}, 345 346 346 // X- p K0 pi+ 347 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,348 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.0 2, 0.02, 0.03, 0.03,349 0.0 4, 0.04, 0.03, 0.03, 0.02, 0.02, 0.01, 0.01,0.0, 0.0, 0.0},350 347 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 348 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.01, 0.02, 0.02, 349 0.02, 0.01, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}, 350 351 351 // X- n K+ pi+ 352 352 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 353 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.0 2, 0.02, 0.03, 0.03,354 0.0 4, 0.04, 0.03, 0.03, 0.02, 0.02, 0.01, 0.01,0.0, 0.0, 0.0},353 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.01, 0.02, 0.02, 354 0.02, 0.01, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}, 355 355 356 356 // … … 360 360 // p p K- 2pi0 361 361 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 362 0.0, 0.0, 0.0, 0.0 1, 0.03, 0.05, 0.07, 0.09, 0.12, 0.13,363 0.1 4, 0.16, 0.18, 0.22, 0.26, 0.28, 0.29, 0.31, 0.31, 0.31, 0.30},362 0.0, 0.0, 0.0, 0.0, 0.02, 0.03, 0.06, 0.06, 0.09, 0.11, 363 0.12, 0.13, 0.14, 0.15, 0.14, 0.14, 0.14, 0.13, 0.13, 0.13, 0.11}, 364 364 365 365 // p p K- pi+ pi- 366 366 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 367 0.0, 0.0, 0.0, 0.0 2, 0.05, 0.08, 0.12, 0.15, 0.20, 0.22,368 0.2 4, 0.26, 0.30, 0.32, 0.32, 0.33, 0.33, 0.34, 0.34, 0.34, 0.30},367 0.0, 0.0, 0.0, 0.0, 0.03, 0.05, 0.09, 0.11, 0.17, 0.22, 368 0.23, 0.26, 0.28, 0.30, 0.28, 0.29, 0.28, 0.27, 0.27, 0.27, 0.24}, 369 369 370 370 // p p K0bar pi- pi0 371 371 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 372 0.0, 0.0, 0.0, 0.0 2, 0.05, 0.08, 0.12, 0.15, 0.20, 0.22,373 0.2 4, 0.26, 0.30, 0.32, 0.32, 0.33, 0.33, 0.34, 0.34, 0.34, 0.30},372 0.0, 0.0, 0.0, 0.0, 0.03, 0.05, 0.09, 0.11, 0.17, 0.22, 373 0.23, 0.26, 0.28, 0.30, 0.28, 0.29, 0.28, 0.27, 0.27, 0.27, 0.24}, 374 374 375 375 // n p K0bar 2pi0 376 376 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 377 0.0, 0.0, 0.0, 0.0 1, 0.03, 0.05, 0.07, 0.09, 0.12, 0.13,378 0.1 4, 0.16, 0.18, 0.22, 0.26, 0.28, 0.29, 0.31, 0.31, 0.31, 0.30},379 377 0.0, 0.0, 0.0, 0.0, 0.02, 0.03, 0.06, 0.06, 0.09, 0.11, 378 0.12, 0.13, 0.14, 0.15, 0.14, 0.14, 0.14, 0.13, 0.13, 0.13, 0.11}, 379 380 380 // n p K0bar pi+ pi- 381 381 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 382 0.0, 0.0, 0.0, 0.0 2, 0.05, 0.08, 0.12, 0.15, 0.20, 0.22,383 0.2 4, 0.26, 0.30, 0.32, 0.32, 0.33, 0.33, 0.34, 0.34, 0.34, 0.30},382 0.0, 0.0, 0.0, 0.0, 0.03, 0.05, 0.09, 0.11, 0.17, 0.22, 383 0.23, 0.26, 0.28, 0.30, 0.28, 0.29, 0.28, 0.27, 0.27, 0.27, 0.24}, 384 384 385 385 // n p K- pi+ pi0 386 386 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 387 0.0, 0.0, 0.0, 0.0 2, 0.05, 0.08, 0.12, 0.15, 0.20, 0.22,388 0.2 4, 0.26, 0.30, 0.32, 0.32, 0.33, 0.33, 0.34, 0.34, 0.34, 0.30},387 0.0, 0.0, 0.0, 0.0, 0.03, 0.05, 0.09, 0.11, 0.17, 0.22, 388 0.23, 0.26, 0.28, 0.30, 0.28, 0.29, 0.28, 0.27, 0.27, 0.27, 0.24}, 389 389 390 390 // n n K0bar pi+ pi0 391 391 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 392 0.0, 0.0, 0.0, 0.0 2, 0.05, 0.08, 0.12, 0.15, 0.20, 0.22,393 0. 24, 0.26, 0.30, 0.32, 0.32, 0.33, 0.33, 0.34, 0.34, 0.34, 0.30},392 0.0, 0.0, 0.0, 0.0, 0.02, 0.03, 0.06, 0.06, 0.09, 0.11, 393 0.12, 0.13, 0.14, 0.15, 0.14, 0.14, 0.14, 0.13, 0.13, 0.13, 0.11}, 394 394 395 395 // n n K- 2pi+ 396 396 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 397 0.0, 0.0, 0.0, 0.0 2, 0.05, 0.08, 0.12, 0.15, 0.20, 0.22,398 0.2 4, 0.26, 0.30, 0.32, 0.32, 0.33, 0.33, 0.34, 0.34, 0.34, 0.30},397 0.0, 0.0, 0.0, 0.0, 0.03, 0.05, 0.09, 0.11, 0.17, 0.22, 398 0.23, 0.26, 0.28, 0.30, 0.28, 0.29, 0.28, 0.27, 0.27, 0.27, 0.24}, 399 399 400 400 // S+ n 3pi0 401 401 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 402 0.0, 0.0, 0.0 2, 0.08, 0.14, 0.20, 0.22, 0.26, 0.32, 0.34,403 0. 36, 0.37, 0.37, 0.42, 0.46, 0.49, 0.50, 0.50, 0.50, 0.51, 0.50},402 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.01, 0.01, 0.02, 0.02, 403 0.02, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03}, 404 404 405 405 // S+ n pi+ pi- pi0 406 406 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 407 0.0, 0.0, 0.0 4, 0.13, 0.24, 0.31, 0.37, 0.43, 0.53, 0.57,408 0. 60, 0.62, 0.62, 0.60, 0.58, 0.58, 0.57, 0.56, 0.56, 0.56, 0.50},407 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.01, 0.02, 0.03, 0.03, 408 0.03, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04}, 409 409 410 410 // S0 n pi+ 2pi0 411 411 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 412 0.0, 0.0, 0.0 2, 0.08, 0.14, 0.20, 0.22, 0.26, 0.32, 0.34,413 0. 36, 0.37, 0.37, 0.42, 0.46, 0.49, 0.50, 0.50, 0.50, 0.51, 0.50},412 0.0, 0.0, 0.0, 0.0, 0.03, 0.05, 0.05, 0.06, 0.09, 0.11, 413 0.12, 0.13, 0.14, 0.15, 0.14, 0.14, 0.14, 0.13, 0.13, 0.13, 0.11}, 414 414 415 415 // S0 n 2pi+ pi- 416 416 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 417 0.0, 0.0, 0.0 4, 0.13, 0.24, 0.31, 0.37, 0.43, 0.53, 0.57,418 0. 60, 0.62, 0.62, 0.60, 0.58, 0.58, 0.57, 0.56, 0.56, 0.56, 0.50},417 0.0, 0.0, 0.0, 0.0, 0.04, 0.07, 0.08, 0.10, 0.15, 0.22, 418 0.23, 0.26, 0.28, 0.30, 0.28, 0.29, 0.28, 0.27, 0.27, 0.27, 0.24}, 419 419 420 420 // S+ n K0 K0bar pi0 421 421 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 422 422 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 423 0.02, 0.0 3, 0.03, 0.03, 0.03, 0.02, 0.02, 0.01, 0.01, 0.01, 0.01},423 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02}, 424 424 425 425 // S+ n K0 K- pi+ 426 426 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 427 427 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 428 0.02, 0.0 3, 0.03, 0.03, 0.03, 0.02, 0.02, 0.01, 0.01, 0.01, 0.01},428 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02}, 429 429 430 430 // S+ n K+ K- pi0 431 431 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 432 432 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 433 0.02, 0.0 3, 0.03, 0.03, 0.03, 0.02, 0.02, 0.01, 0.01, 0.01, 0.01},433 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02}, 434 434 435 435 // S+ n K+ K0bar pi- 436 436 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 437 437 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 438 0.02, 0.0 3, 0.03, 0.03, 0.03, 0.02, 0.02, 0.01, 0.01, 0.01, 0.01},438 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02}, 439 439 440 440 // S0 n K+ K0bar pi0 441 441 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 442 442 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 443 0.02, 0.0 3, 0.03, 0.03, 0.03, 0.02, 0.02, 0.01, 0.01, 0.01, 0.01},443 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02}, 444 444 445 445 // S0 n K+ K- pi+ 446 446 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 447 447 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 448 0.02, 0.0 3, 0.03, 0.03, 0.03, 0.02, 0.02, 0.01, 0.01, 0.01, 0.01},448 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02}, 449 449 450 450 // S0 n K0 K0bar pi+ 451 451 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 452 452 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 453 0.02, 0.0 3, 0.03, 0.03, 0.03, 0.02, 0.02, 0.01, 0.01, 0.01, 0.01},453 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02}, 454 454 455 455 // S+ p pi- 2pi0 456 456 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 457 0.0, 0.0, 0.0, 0.0 1, 0.01, 0.02, 0.02, 0.02, 0.03, 0.04,458 0.0 4, 0.05, 0.05, 0.06, 0.06, 0.07, 0.06, 0.06, 0.06, 0.07, 0.06},457 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.01, 0.01, 0.02, 0.02, 458 0.02, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03}, 459 459 460 460 // S+ p pi+ 2pi- 461 461 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 462 0.0, 0.0, 0.0, 0.0 1, 0.02, 0.03, 0.03, 0.04, 0.05, 0.06,463 0.0 7, 0.08, 0.09, 0.09, 0.08, 0.08, 0.07, 0.07, 0.07, 0.07, 0.06},462 0.0, 0.0, 0.0, 0.0, 0.01, 0.02, 0.02, 0.02, 0.03, 0.03, 463 0.03, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04}, 464 464 465 465 // S0 p 3pi0 466 466 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 467 0.0, 0.0, 0.0, 0.0 1, 0.01, 0.02, 0.02, 0.02, 0.03, 0.04,468 0. 04, 0.05, 0.05, 0.06, 0.06, 0.07, 0.06, 0.06, 0.06, 0.07, 0.06},467 0.0, 0.0, 0.0, 0.0, 0.03, 0.05, 0.05, 0.06, 0.09, 0.11, 468 0.12, 0.13, 0.14, 0.15, 0.14, 0.14, 0.14, 0.13, 0.13, 0.13, 0.11}, 469 469 470 470 // S0 p pi+ pi- pi0 471 471 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 472 0.0, 0.0, 0.0, 0.0 1, 0.02, 0.03, 0.03, 0.04, 0.05, 0.06,473 0. 07, 0.08, 0.09, 0.09, 0.08, 0.08, 0.07, 0.07, 0.07, 0.07, 0.06},472 0.0, 0.0, 0.0, 0.0, 0.04, 0.07, 0.08, 0.10, 0.15, 0.22, 473 0.23, 0.26, 0.28, 0.30, 0.28, 0.29, 0.28, 0.27, 0.27, 0.27, 0.24}, 474 474 475 475 // S+ p K0 K0bar pi- 476 476 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 477 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.0 1,478 0.02, 0.02, 0.02, 0.02, 0.0 1, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0},477 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 478 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02}, 479 479 480 480 // S+ p K0 K- pi0 481 481 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 482 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.0 1,483 0.02, 0.02, 0.02, 0.02, 0.0 1, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0},482 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 483 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02}, 484 484 485 485 // S+ p K+ K- pi- 486 486 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 487 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.0 1,488 0.02, 0.02, 0.02, 0.02, 0.0 1, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0},487 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 488 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02}, 489 489 490 490 // S0 p K0 K0bar pi0 491 491 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 492 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.0 1,493 0.02, 0.02, 0.02, 0.02, 0.0 1, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0},492 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 493 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02}, 494 494 495 495 // S0 p K0 K- pi+ 496 496 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 497 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.0 1,498 0.02, 0.02, 0.02, 0.02, 0.0 1, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0},497 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 498 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02}, 499 499 500 500 // S0 p K+ K0bar pi- 501 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,502 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.0 1,503 0.02, 0.02, 0.02, 0.02, 0.0 1, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0},504 501 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 502 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 503 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02}, 504 505 505 // S0 p K+ K- pi0 506 506 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 507 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.0 1,508 0.02, 0.02, 0.02, 0.02, 0.0 1, 0.01, 0.01, 0.0, 0.0, 0.0, 0.0},507 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 508 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02}, 509 509 510 510 // L p 3pi0 511 511 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 512 0.0, 0.0, 0.0 , 0.02, 0.05, 0.07, 0.07, 0.09, 0.10, 0.12,513 0. 13, 0.14, 0.16, 0.20, 0.21, 0.20, 0.19, 0.18, 0.17, 0.17, 0.14},512 0.0, 0.0, 0.03, 0.03, 0.08, 0.13, 0.17, 0.18, 0.28, 0.40, 513 0.42, 0.47, 0.50, 0.53, 0.52, 0.51, 0.50, 0.48, 0.48, 0.47, 0.42}, 514 514 515 515 // L p pi+ pi- pi0 516 516 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 517 0.0, 0.0, 0.0 , 0.04, 0.08, 0.11, 0.12, 0.14, 0.18, 0.20,518 0. 22, 0.24, 0.26, 0.28, 0.26, 0.24, 0.22, 0.20, 0.19, 0.18, 0.14},517 0.0, 0.0, 0.03, 0.03, 0.14, 0.21, 0.29, 0.31, 0.48, 0.70, 518 0.74, 0.82, 0.87, 0.92, 0.90, 0.89, 0.87, 0.84, 0.83, 0.82, 0.74}, 519 519 520 520 // L n pi+ 2pi0 521 521 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 522 0.0, 0.0, 0.0 , 0.02, 0.05, 0.07, 0.07, 0.09, 0.10, 0.12,523 0. 13, 0.14, 0.16, 0.20, 0.21, 0.20, 0.19, 0.18, 0.17, 0.17, 0.14},522 0.0, 0.0, 0.03, 0.03, 0.08, 0.13, 0.17, 0.18, 0.28, 0.40, 523 0.42, 0.47, 0.50, 0.53, 0.52, 0.51, 0.50, 0.48, 0.48, 0.47, 0.42}, 524 524 525 525 // L n 2pi+ pi- 526 526 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 527 0.0, 0.0, 0.0 , 0.04, 0.08, 0.11, 0.12, 0.14, 0.18, 0.20,528 0. 22, 0.24, 0.26, 0.28, 0.26, 0.24, 0.22, 0.20, 0.19, 0.18, 0.14},527 0.0, 0.0, 0.03, 0.03, 0.14, 0.21, 0.29, 0.31, 0.48, 0.70, 528 0.74, 0.82, 0.87, 0.92, 0.90, 0.89, 0.87, 0.84, 0.83, 0.82, 0.74}, 529 529 530 530 // L p K0 K0bar pi0 531 531 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 532 532 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 533 0.02, 0.0 3, 0.03, 0.03, 0.02, 0.02, 0.02, 0.01, 0.01, 0.01, 0.01},533 0.02, 0.02, 0.02, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03}, 534 534 535 535 // L p K0 K- pi+ 536 536 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 537 537 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 538 0.02, 0.0 3, 0.03, 0.03, 0.02, 0.02, 0.02, 0.01, 0.01, 0.01, 0.01},538 0.02, 0.02, 0.02, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03}, 539 539 540 540 // L p K+ K- pi0 541 541 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 542 542 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 543 0.02, 0.0 3, 0.03, 0.03, 0.02, 0.02, 0.02, 0.01, 0.01, 0.01, 0.01},543 0.02, 0.02, 0.02, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03}, 544 544 545 545 // L p K+ K0bar pi- 546 546 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 547 547 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 548 0.02, 0.0 3, 0.03, 0.03, 0.02, 0.02, 0.02, 0.01, 0.01, 0.01, 0.01},548 0.02, 0.02, 0.02, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03}, 549 549 550 550 // L n K+ K0bar pi0 551 551 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 552 552 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 553 0.02, 0.0 3, 0.03, 0.03, 0.02, 0.02, 0.02, 0.01, 0.01, 0.01, 0.01},553 0.02, 0.02, 0.02, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03}, 554 554 555 555 // L n K+ K- pi+ 556 556 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 557 557 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 558 0.02, 0.0 3, 0.03, 0.03, 0.02, 0.02, 0.02, 0.01, 0.01, 0.01, 0.01},558 0.02, 0.02, 0.02, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03}, 559 559 560 560 // L n K0 K0bar pi+ 561 561 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 562 562 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 563 0.02, 0.0 3, 0.03, 0.03, 0.02, 0.02, 0.02, 0.01, 0.01, 0.01, 0.01},563 0.02, 0.02, 0.02, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03}, 564 564 565 565 // S- p pi+ 2pi0 566 566 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 567 0.0, 0.0, 0.0, 0.0 1, 0.01, 0.02, 0.02, 0.02, 0.03, 0.04,568 0.0 4, 0.05, 0.05, 0.06, 0.06, 0.07, 0.06, 0.06, 0.06, 0.07, 0.06},567 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.01, 0.02, 0.02, 0.02, 568 0.02, 0.02, 0.02, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03}, 569 569 570 570 // S- p 2pi+ pi- 571 571 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 572 0.0, 0.0, 0.0, 0.0 1, 0.02, 0.03, 0.03, 0.04, 0.05, 0.06,573 0.0 7, 0.08, 0.09, 0.09, 0.08, 0.08, 0.07, 0.07, 0.07, 0.07, 0.06},572 0.0, 0.0, 0.0, 0.0, 0.01, 0.02, 0.02, 0.02, 0.02, 0.02, 573 0.02, 0.02, 0.02, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03}, 574 574 575 575 // S- n 2pi+ pi0 576 576 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 577 0.0, 0.0, 0.0, 0.0 1, 0.02, 0.03, 0.03, 0.04, 0.05, 0.06,578 0.0 7, 0.08, 0.09, 0.09, 0.08, 0.08, 0.07, 0.07, 0.07, 0.07, 0.06},577 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.01, 0.02, 0.02, 0.02, 578 0.02, 0.02, 0.02, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03}, 579 579 580 580 // S- p K+ K0bar pi0 581 581 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 582 582 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 583 0.02, 0.0 3, 0.03, 0.03, 0.02, 0.02, 0.02, 0.01, 0.01, 0.01, 0.01},583 0.02, 0.02, 0.02, 0.02, 0.02, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03}, 584 584 585 585 // S- p K+ K- pi+ 586 586 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 587 587 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 588 0.02, 0.0 3, 0.03, 0.03, 0.02, 0.02, 0.02, 0.01, 0.01, 0.01, 0.01},588 0.02, 0.02, 0.02, 0.02, 0.02, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03}, 589 589 590 590 // S- p K0 K0bar pi+ 591 591 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 592 592 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 593 0.02, 0.0 3, 0.03, 0.03, 0.02, 0.02, 0.02, 0.01, 0.01, 0.01, 0.01},593 0.02, 0.02, 0.02, 0.02, 0.02, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03}, 594 594 595 595 // S- n K+ K0bar pi+ 596 596 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 597 597 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 598 0.02, 0.0 3, 0.03, 0.03, 0.02, 0.02, 0.02, 0.01, 0.01, 0.01, 0.01},598 0.02, 0.02, 0.02, 0.02, 0.02, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03}, 599 599 600 600 // X0 p K0 2pi0 601 601 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 602 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 1, 0.01, 0.01, 0.01,603 0.01, 0.01, 0.0 1, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0},602 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 603 0.01, 0.01, 0.02, 0.02, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01}, 604 604 605 605 // X0 p K0 pi+ pi- 606 606 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 607 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 1, 0.01, 0.02, 0.03,608 0.02, 0.02, 0.0 1, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0},607 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 608 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02}, 609 609 610 610 // X0 n K0 pi+ pi0 611 611 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 612 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 1, 0.01, 0.02, 0.03,613 0.02, 0.02, 0.0 1, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0},612 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 613 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02}, 614 614 615 615 // X0 n K+ 2pi0 616 616 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 617 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 1, 0.01, 0.01, 0.01,618 0.01, 0.01, 0.0 1, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0},617 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 618 0.01, 0.01, 0.02, 0.02, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01}, 619 619 620 620 // X0 n K+ pi+ pi- 621 621 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 622 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 1, 0.01, 0.02, 0.03,623 0.02, 0.02, 0.0 1, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0},622 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 623 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02}, 624 624 625 625 // X0 p K+ pi- pi0 626 626 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 627 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 1, 0.01, 0.02, 0.03,628 0.02, 0.02, 0.0 1, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0},627 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 628 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02}, 629 629 630 630 // X- p K+ 2pi0 631 631 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 632 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 1, 0.01, 0.01, 0.01,633 0.01, 0.01, 0.0 1, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0},632 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 633 0.01, 0.01, 0.02, 0.02, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01}, 634 634 635 635 // X- p K+ pi+ pi- 636 636 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 637 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 1, 0.01, 0.02, 0.03,638 0.02, 0.02, 0.0 1, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0},637 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 638 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02}, 639 639 640 640 // X- p K0 pi+ pi0 641 641 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 642 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 1, 0.01, 0.02, 0.03,643 0.02, 0.02, 0.0 1, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0},642 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 643 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02}, 644 644 645 645 // X- n K+ pi+ pi0 646 646 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 647 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 1, 0.01, 0.02, 0.03,648 0.02, 0.02, 0.0 1, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0},647 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 648 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02}, 649 649 650 650 // X- n K0 2pi+ 651 651 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 652 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 1, 0.01, 0.02, 0.03,653 0.02, 0.02, 0.0 1, 0.01, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0},652 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 653 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02}, 654 654 655 655 // … … 658 658 // p p K- 3pi0 659 659 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 660 0.0, 0.0, 0.0, 0.0, 0.01, 0.0 2, 0.02, 0.04, 0.05, 0.06,661 0.08, 0. 10, 0.12, 0.15, 0.19, 0.22, 0.24, 0.26, 0.26, 0.26, 0.25},660 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 0.05, 0.06, 0.07, 661 0.08, 0.09, 0.10, 0.12, 0.14, 0.14, 0.15, 0.16, 0.16, 0.16, 0.14}, 662 662 663 663 // p p K- pi+ pi- pi0 664 664 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 665 0.0, 0.0, 0.0, 0.0, 0.0 2, 0.03, 0.04, 0.06, 0.08, 0.10,666 0.1 3, 0.16, 0.19, 0.22, 0.24, 0.26, 0.28, 0.29, 0.29, 0.28, 0.25},665 0.0, 0.0, 0.0, 0.0, 0.01, 0.02, 0.03, 0.06, 0.07, 0.09, 666 0.10, 0.12, 0.14, 0.16, 0.19, 0.20, 0.21, 0.22, 0.22, 0.22, 0.20}, 667 667 668 668 // p p K0bar pi- 2pi0 669 669 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 670 0.0, 0.0, 0.0, 0.0, 0.01, 0.0 2, 0.02, 0.04, 0.05, 0.06,671 0.0 8, 0.10, 0.12, 0.15, 0.19, 0.22, 0.24, 0.26, 0.26, 0.26, 0.25},670 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 0.04, 0.05, 0.06, 671 0.07, 0.08, 0.09, 0.11, 0.13, 0.13, 0.14, 0.15, 0.15, 0.15, 0.13}, 672 672 673 673 // p p K0bar pi+ 2pi- 674 674 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 675 0.0, 0.0, 0.0, 0.0, 0.0 2, 0.03, 0.04, 0.06, 0.08, 0.10,676 0.1 3, 0.16, 0.19, 0.22, 0.24, 0.26, 0.28, 0.29, 0.29, 0.28, 0.25},675 0.0, 0.0, 0.0, 0.0, 0.01, 0.02, 0.03, 0.06, 0.07, 0.09, 676 0.10, 0.12, 0.14, 0.16, 0.19, 0.20, 0.21, 0.22, 0.22, 0.22, 0.20}, 677 677 678 678 // n p K0bar 3pi0 679 679 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 680 0.0, 0.0, 0.0, 0.0, 0.01, 0.0 2, 0.02, 0.04, 0.05, 0.06,681 0.0 8, 0.10, 0.12, 0.15, 0.19, 0.22, 0.24, 0.26, 0.26, 0.26, 0.25},680 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 0.04, 0.05, 0.06, 681 0.07, 0.08, 0.09, 0.11, 0.13, 0.13, 0.14, 0.15, 0.15, 0.15, 0.13}, 682 682 683 683 // n p K0bar pi+ pi- pi0 684 684 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 685 0.0, 0.0, 0.0, 0.0, 0.0 2, 0.03, 0.04, 0.06, 0.08, 0.10,686 0.1 3, 0.16, 0.19, 0.22, 0.24, 0.26, 0.28, 0.29, 0.29, 0.28, 0.25},685 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 0.06, 0.07, 0.09, 686 0.10, 0.12, 0.14, 0.16, 0.19, 0.20, 0.21, 0.22, 0.22, 0.22, 0.20}, 687 687 688 688 // n p K- pi+ 2pi0 689 689 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 690 0.0, 0.0, 0.0, 0.0, 0.01, 0.0 2, 0.02, 0.04, 0.05, 0.06,691 0.0 8, 0.10, 0.12, 0.15, 0.19, 0.22, 0.24, 0.26, 0.26, 0.26, 0.25},690 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 0.04, 0.05, 0.06, 691 0.07, 0.08, 0.09, 0.11, 0.13, 0.13, 0.14, 0.15, 0.15, 0.15, 0.13}, 692 692 693 693 // n p K- 2pi+ pi- 694 694 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 695 0.0, 0.0, 0.0, 0.0, 0.0 2, 0.03, 0.04, 0.06, 0.08, 0.10,696 0.1 3, 0.16, 0.19, 0.22, 0.24, 0.26, 0.28, 0.29, 0.29, 0.28, 0.25},695 0.0, 0.0, 0.0, 0.0, 0.01, 0.02, 0.03, 0.06, 0.07, 0.09, 696 0.10, 0.12, 0.14, 0.16, 0.19, 0.20, 0.21, 0.22, 0.22, 0.22, 0.20}, 697 697 698 698 // n n K0bar pi+ 2pi0 699 699 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 700 0.0, 0.0, 0.0, 0.0, 0.01, 0.02, 0.0 2, 0.04, 0.05, 0.06,701 0.0 8, 0.10, 0.12, 0.15, 0.19, 0.22, 0.24, 0.26, 0.26, 0.26, 0.25},700 0.0, 0.0, 0.0, 0.0, 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 701 0.07, 0.08, 0.09, 0.11, 0.13, 0.13, 0.14, 0.15, 0.15, 0.15, 0.13}, 702 702 703 703 // n n K0bar 2pi+ pi- 704 704 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 705 0.0, 0.0, 0.0, 0.0, 0.0 2, 0.03, 0.04, 0.06, 0.08, 0.10,706 0.1 3, 0.16, 0.19, 0.22, 0.24, 0.26, 0.28, 0.29, 0.29, 0.28, 0.25},705 0.0, 0.0, 0.0, 0.0, 0.01, 0.02, 0.03, 0.06, 0.07, 0.09, 706 0.10, 0.12, 0.14, 0.16, 0.19, 0.20, 0.21, 0.22, 0.22, 0.22, 0.20}, 707 707 708 708 // n n K- 2pi+ pi0 709 709 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 710 0.0, 0.0, 0.0, 0.0, 0.0 2, 0.03, 0.04, 0.05, 0.06, 0.07,711 0.0 9, 0.12, 0.15, 0.18, 0.20, 0.22, 0.23, 0.24, 0.24, 0.23, 0.20},710 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 0.04, 0.05, 0.06, 711 0.07, 0.08, 0.09, 0.11, 0.13, 0.13, 0.14, 0.15, 0.15, 0.15, 0.13}, 712 712 713 713 // S+ n 4pi0 714 714 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 715 0.0, 0.0, 0.0, 0.0 1, 0.04, 0.04, 0.05, 0.06, 0.07, 0.08,716 0.0 8, 0.10, 0.10, 0.15, 0.20, 0.23, 0.25, 0.28, 0.28, 0.28, 0.30},715 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.01, 0.02, 0.02, 0.03, 716 0.03, 0.04, 0.04, 0.05, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06}, 717 717 718 718 // S+ n pi+ pi- 2pi0 719 719 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 720 0.0, 0.0, 0.0, 0.0 2, 0.06, 0.07, 0.08, 0.10, 0.11, 0.13,721 0. 15, 0.16, 0.17, 0.21, 0.25, 0.27, 0.28, 0.31, 0.31, 0.30, 0.30},720 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 0.03, 0.04, 0.05, 721 0.06, 0.07, 0.08, 0.09, 0.11, 0.11, 0.12, 0.13, 0.13, 0.13, 0.11}, 722 722 723 723 // S+ n 2pi+ 2pi- 724 724 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 725 0.0, 0.0, 0.0, 0.0 4, 0.09, 0.12, 0.14, 0.16, 0.19, 0.22,726 0. 25, 0.27, 0.29, 0.30, 0.31, 0.32, 0.33, 0.34, 0.34, 0.33, 0.30},725 0.0, 0.0, 0.0, 0.0, 0.01, 0.02, 0.03, 0.05, 0.06, 0.07, 726 0.08, 0.09, 0.10, 0.12, 0.14, 0.14, 0.15, 0.16, 0.16, 0.16, 0.14}, 727 727 728 728 // S0 n pi+ 3pi0 729 729 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 730 0.0, 0.0, 0.0, 0.0 2, 0.06, 0.07, 0.08, 0.10, 0.11, 0.13,731 0. 15, 0.16, 0.17, 0.21, 0.25, 0.27, 0.28, 0.31, 0.31, 0.30, 0.30},730 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.03, 0.01, 0.02, 0.02, 731 0.02, 0.02, 0.03, 0.03, 0.04, 0.04, 0.04, 0.05, 0.05, 0.05, 0.05}, 732 732 733 733 // S0 n 2pi+ pi- pi0 734 734 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 735 0.0, 0.0, 0.0, 0.0 4, 0.09, 0.12, 0.14, 0.16, 0.19, 0.22,736 0. 25, 0.27, 0.29, 0.30, 0.31, 0.32, 0.33, 0.34, 0.34, 0.33, 0.30},735 0.0, 0.0, 0.0, 0.0, 0.02, 0.02, 0.04, 0.02, 0.03, 0.03, 736 0.03, 0.04, 0.04, 0.05, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06}, 737 737 738 738 // S+ p pi- 3pi0 739 739 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 740 0.0, 0.0, 0.0, 0.0 1,0.01, 0.01, 0.01, 0.01, 0.02, 0.02,741 0.02, 0.0 3, 0.02, 0.03, 0.04, 0.04, 0.04, 0.02, 0.02, 0.03, 0.02},740 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.01, 0.01, 0.02, 0.02, 741 0.02, 0.02, 0.02, 0.03, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04}, 742 742 743 743 // S+ p pi+ 2pi- pi0 744 744 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 745 0.0, 0.0, 0.0, 0.0 1, 0.02, 0.02, 0.02, 0.02, 0.03, 0.03,746 0.0 4, 0.04, 0.04, 0.05, 0.05, 0.05, 0.05, 0.04, 0.04, 0.03, 0.02},745 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 0.02, 0.03, 0.03, 746 0.03, 0.04, 0.05, 0.06, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07}, 747 747 748 748 // S0 p 4pi0 749 749 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 750 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.0 1, 0.01, 0.01, 0.01,751 0.0 1, 0.01, 0.01, 0.02, 0.03, 0.03, 0.04, 0.03, 0.03, 0.03, 0.0},750 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 0.02, 0.02, 0.03, 751 0.03, 0.04, 0.04, 0.05, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06}, 752 752 753 753 // S0 p pi+ pi- 2pi0 754 754 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 755 0.0, 0.0, 0.0, 0.0 1, 0.01, 0.01, 0.01, 0.01, 0.02, 0.02,756 0.0 2, 0.02, 0.02, 0.03, 0.04, 0.04, 0.04, 0.04, 0.04, 0.03, 0.02},755 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.03, 0.03, 0.04, 0.05, 756 0.06, 0.07, 0.08, 0.09, 0.11, 0.11, 0.12, 0.13, 0.13, 0.13, 0.11}, 757 757 758 758 // S0 p 2pi+ 2pi- 759 759 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 760 0.0, 0.0, 0.0, 0.0 1, 0.02, 0.02, 0.02, 0.02, 0.03, 0.03,761 0.0 4, 0.04, 0.04, 0.05, 0.05, 0.05, 0.05, 0.04, 0.04, 0.03, 0.02},760 0.0, 0.0, 0.0, 0.0, 0.02, 0.02, 0.04, 0.05, 0.06, 0.07, 761 0.08, 0.09, 0.10, 0.12, 0.14, 0.14, 0.15, 0.16, 0.16, 0.16, 0.14}, 762 762 763 763 // L p 4pi0 764 764 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 765 0.0, 0.0, 0.0, 0.0 1, 0.01, 0.01, 0.02, 0.02, 0.02, 0.02,766 0. 03, 0.03, 0.04, 0.05, 0.07, 0.08, 0.08, 0.09, 0.09, 0.10, 0.10},765 0.0, 0.0, 0.0, 0.0, 0.02, 0.03, 0.04, 0.06, 0.07, 0.09, 766 0.10, 0.12, 0.14, 0.16, 0.19, 0.20, 0.21, 0.22, 0.22, 0.22, 0.20}, 767 767 768 768 // L p pi+ pi- 2pi0 769 769 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 770 0.0, 0.0, 0.0, 0.0 1, 0.02, 0.02, 0.03, 0.03, 0.04, 0.04,771 0. 05, 0.05, 0.06, 0.07, 0.09, 0.09, 0.10, 0.10, 0.10, 0.10, 0.10},770 0.0, 0.0, 0.0, 0.0, 0.03, 0.05, 0.06, 0.10, 0.12, 0.15, 771 0.17, 0.20, 0.23, 0.27, 0.33, 0.34, 0.36, 0.38, 0.38, 0.37, 0.34}, 772 772 773 773 // L p 2pi+ 2pi- 774 774 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 775 0.0, 0.0, 0.0, 0.0 1, 0.03, 0.04, 0.05, 0.05, 0.06, 0.07,776 0. 08, 0.09, 0.10, 0.10, 0.11, 0.11, 0.11, 0.11, 0.11, 0.11, 0.10},775 0.0, 0.0, 0.0, 0.0, 0.05, 0.08, 0.11, 0.16, 0.20, 0.25, 776 0.29, 0.34, 0.39, 0.46, 0.56, 0.58, 0.61, 0.65, 0.65, 0.64, 0.58}, 777 777 778 778 // L n pi+ 3pi0 779 779 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 780 0.0, 0.0, 0.0, 0.0 1, 0.02, 0.02, 0.03, 0.03, 0.04, 0.04,781 0. 05, 0.05, 0.06, 0.07, 0.09, 0.09, 0.10, 0.10, 0.10, 0.10, 0.10},780 0.0, 0.0, 0.0, 0.0, 0.03, 0.05, 0.06, 0.10, 0.12, 0.15, 781 0.17, 0.20, 0.23, 0.27, 0.33, 0.34, 0.36, 0.38, 0.38, 0.37, 0.34}, 782 782 783 783 // L n 2pi+ pi- pi0 784 784 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 785 0.0, 0.0, 0.0, 0.0 1, 0.03, 0.04, 0.05, 0.05, 0.06, 0.07,786 0. 08, 0.09, 0.10, 0.10, 0.11, 0.11, 0.11, 0.11, 0.11, 0.11, 0.10},785 0.0, 0.0, 0.0, 0.0, 0.05, 0.08, 0.11, 0.16, 0.20, 0.25, 786 0.29, 0.34, 0.39, 0.46, 0.56, 0.58, 0.61, 0.65, 0.65, 0.64, 0.58}, 787 787 788 788 // S- p pi+ 3pi0 789 789 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 790 0.0, 0.0, 0.0, 0.0 1,0.01, 0.01, 0.01, 0.01, 0.02, 0.02,791 0.02, 0.02, 0.0 2, 0.03, 0.04, 0.04, 0.03, 0.04, 0.04, 0.03, 0.02},790 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.01, 0.01, 0.02, 0.02, 791 0.02, 0.02, 0.03, 0.03, 0.04, 0.04, 0.04, 0.05, 0.05, 0.05, 0.05}, 792 792 793 793 // S- p 2pi+ pi- pi0 794 794 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 795 0.0, 0.0, 0.0, 0.0 1, 0.02, 0.02, 0.02, 0.02, 0.03, 0.03,796 0.0 4, 0.04, 0.04, 0.05, 0.05, 0.05, 0.04, 0.04, 0.04, 0.03, 0.02},795 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 0.02, 0.02, 0.03, 796 0.03, 0.04, 0.04, 0.05, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06}, 797 797 798 798 // S- n 2pi+ 2pi0 799 799 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 800 0.0, 0.0, 0.0, 0.0 1, 0.01, 0.01, 0.01, 0.01, 0.02, 0.02,801 0.02, 0.02, 0.0 2, 0.03, 0.04, 0.04, 0.03, 0.04, 0.04, 0.03, 0.02},800 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 0.01, 0.02, 0.02, 801 0.02, 0.02, 0.03, 0.03, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04}, 802 802 803 803 // S- n 3pi+ pi- 804 804 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 805 0.0, 0.0, 0.0, 0.0 1, 0.02, 0.02, 0.02, 0.02, 0.03, 0.03,806 0.0 4, 0.04, 0.04, 0.05, 0.05, 0.05, 0.04, 0.04, 0.04, 0.03, 0.02},805 0.0, 0.0, 0.0, 0.0, 0.01, 0.02, 0.02, 0.02, 0.03, 0.03, 806 0.03, 0.04, 0.04, 0.05, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06}, 807 807 808 808 // … … 811 811 // p p K- 4pi0 812 812 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 813 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 1, 0.0, 0.01, 0.02, 0.02,814 0.0 3, 0.04, 0.05, 0.07, 0.11, 0.14, 0.17, 0.21, 0.21, 0.22, 0.24},813 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 0.03, 814 0.04, 0.05, 0.06, 0.08, 0.10, 0.12, 0.14, 0.16, 0.16, 0.16, 0.15}, 815 815 816 816 // p p K- pi+ pi- 2pi0 817 817 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 818 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.02, 0.02, 0.03, 0.04, 819 0.05, 0.06, 0.07, 0.09, 0.11, 0.13, 0.15, 0.17, 0.17, 0.17, 0.16}, 820 821 // p p K- 2pi+ 2pi- 822 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 823 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.02, 0.03, 0.05, 0.06, 824 0.08, 0.10, 0.12, 0.15, 0.18, 0.21, 0.24, 0.27, 0.27, 0.27, 0.27}, 825 826 // p p K0bar pi- 3pi0 827 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 818 828 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.02, 0.03, 0.04, 819 0.05, 0.07, 0.08, 0.10, 0.14, 0.17, 0.20, 0.23, 0.23, 0.24, 0.24}, 820 821 // p p K- 2pi+ 2pi- 822 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 823 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.02, 0.03, 0.05, 0.07, 824 0.09, 0.11, 0.13, 0.15, 0.17, 0.20, 0.23, 0.26, 0.26, 0.26, 0.24}, 825 826 // p p K0bar pi- 3pi0 829 0.05, 0.06, 0.07, 0.09, 0.11, 0.13, 0.15, 0.17, 0.17, 0.17, 0.16}, 830 831 // p p K0bar pi+ 2pi- pi0 832 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 833 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.02, 0.03, 0.05, 0.06, 834 0.08, 0.10, 0.12, 0.15, 0.18, 0.21, 0.24, 0.27, 0.27, 0.27, 0.27}, 835 836 // n p K0bar 4pi0 837 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 838 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 0.03, 839 0.04, 0.05, 0.06, 0.08, 0.10, 0.12, 0.14, 0.16, 0.16, 0.16, 0.15}, 840 841 // n p K0bar pi+ pi- 2pi0 827 842 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 828 843 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.02, 0.03, 0.04, 829 0.05, 0.07, 0.08, 0.10, 0.14, 0.17, 0.20, 0.23, 0.23, 0.24, 0.24}, 830 831 // p p K0bar pi+ 2pi- pi0 832 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 833 0.0, 0.0, 0.0, 0.0, 0.0, 0.02, 0.03, 0.05, 0.07, 0.09, 834 0.11, 0.13, 0.15, 0.17, 0.20, 0.23, 0.26, 0.26, 0.26, 0.25, 0.24}, 835 836 // n p K0bar 4pi0 837 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 838 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 0.02, 839 0.03, 0.04, 0.05, 0.07, 0.11, 0.14, 0.17, 0.21, 0.21, 0.22, 0.24}, 840 841 // n p K0bar pi+ pi- 2pi0 844 0.05, 0.06, 0.07, 0.09, 0.11, 0.13, 0.15, 0.17, 0.17, 0.17, 0.16}, 845 846 // n p K0bar 2pi+ 2pi- 847 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 848 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.02, 0.03, 0.05, 0.06, 849 0.08, 0.10, 0.12, 0.15, 0.18, 0.21, 0.24, 0.27, 0.27, 0.27, 0.27}, 850 851 // n p K- pi+ 3pi0 842 852 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 843 853 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.02, 0.03, 0.04, 844 0.05, 0.0 7, 0.08, 0.10, 0.14, 0.17, 0.20, 0.23, 0.23, 0.24, 0.24},845 846 // n p K 0bar 2pi+ 2pi-847 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 848 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 1, 0.02, 0.03, 0.05, 0.07,849 0.0 9, 0.11, 0.13, 0.15, 0.17, 0.20, 0.23, 0.26, 0.26, 0.26, 0.24},850 851 // n p K-pi+ 3pi0854 0.05, 0.06, 0.07, 0.09, 0.11, 0.13, 0.15, 0.17, 0.17, 0.17, 0.16}, 855 856 // n p K- 2pi+ pi- pi0 857 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 858 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.02, 0.03, 0.05, 0.06, 859 0.08, 0.10, 0.12, 0.15, 0.18, 0.21, 0.24, 0.27, 0.27, 0.27, 0.27}, 860 861 // n n K0bar pi+ 3pi0 852 862 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 853 863 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.02, 0.03, 0.04, 854 0.05, 0.0 7, 0.08, 0.10, 0.14, 0.17, 0.20, 0.23, 0.23, 0.24, 0.24},855 856 // n p K-2pi+ pi- pi0857 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 858 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 1, 0.02, 0.03, 0.05, 0.07,859 0.0 9, 0.11, 0.13, 0.15, 0.17, 0.20, 0.23, 0.26, 0.26, 0.26, 0.24},860 861 // n n K 0bar pi+ 3pi0864 0.05, 0.06, 0.07, 0.09, 0.11, 0.13, 0.15, 0.17, 0.17, 0.17, 0.16}, 865 866 // n n K0bar 2pi+ pi- pi0 867 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 868 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.02, 0.03, 0.05, 0.06, 869 0.08, 0.10, 0.12, 0.15, 0.18, 0.21, 0.24, 0.27, 0.27, 0.27, 0.27}, 870 871 // n n K- 2pi+ 2pi0 862 872 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 863 873 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.02, 0.03, 0.04, 864 0.05, 0.07, 0.08, 0.10, 0.14, 0.17, 0.20, 0.23, 0.23, 0.24, 0.24}, 865 866 // n n K0bar 2pi+ pi- pi0 867 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 868 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.02, 0.03, 0.05, 0.07, 869 0.09, 0.11, 0.13, 0.15, 0.17, 0.20, 0.23, 0.26, 0.26, 0.26, 0.24}, 870 871 // n n K- 2pi+ 2pi0 872 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 873 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 0.03, 0.04, 874 0.05, 0.07, 0.08, 0.10, 0.14, 0.17, 0.20, 0.23, 0.23, 0.24, 0.24}, 874 0.05, 0.06, 0.07, 0.09, 0.11, 0.13, 0.15, 0.17, 0.17, 0.17, 0.16}, 875 875 876 876 // n n K- 3pi+ pi- 877 877 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 878 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 1, 0.02, 0.03, 0.05, 0.07,879 0.0 9, 0.11, 0.13, 0.15, 0.17, 0.20, 0.23, 0.26, 0.26, 0.26, 0.24},880 881 // S+ n 5pi0882 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 883 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 1, 0.01, 0.01, 0.01, 0.02,884 0.0 2, 0.03, 0.04, 0.06, 0.07, 0.08, 0.08, 0.08, 0.08, 0.08, 0.08},885 886 // S+ n pi+ pi- 3pi0887 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 888 0.0, 0.0, 0.0, 0.0, 0.0 , 0.01, 0.02, 0.02, 0.02, 0.03,889 0.0 4, 0.05, 0.06, 0.08, 0.09, 0.09, 0.09, 0.09, 0.09, 0.09, 0.08},890 891 // S+ n 2pi+ 2pi- pi0892 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 893 0.0, 0.0, 0.0, 0.0, 0.0 , 0.02, 0.03, 0.03, 0.04, 0.05,894 0.0 6, 0.08, 0.10, 0.12, 0.11, 0.11, 0.10, 0.10, 0.10, 0.09, 0.08},895 896 // S0 n pi+ 4pi0897 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 898 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 1, 0.01, 0.01, 0.02, 0.02,899 0.0 3, 0.04, 0.05, 0.07, 0.10, 0.12, 0.14, 0.14, 0.14, 0.14, 0.14},900 901 // S0 n 2pi+ pi- 2pi0878 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.02, 0.03, 0.05, 0.06, 879 0.08, 0.10, 0.12, 0.15, 0.18, 0.21, 0.24, 0.27, 0.27, 0.27, 0.27}, 880 881 // L n pi+ 4pi0 882 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 883 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 0.03, 884 0.04, 0.05, 0.06, 0.08, 0.10, 0.12, 0.14, 0.16, 0.16, 0.16, 0.15}, 885 886 // L n 2pi+ pi- 2pi0 887 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 888 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 0.02, 0.03, 0.04, 889 0.05, 0.06, 0.07, 0.09, 0.11, 0.13, 0.15, 0.17, 0.17, 0.17, 0.16}, 890 891 // L n 3pi+ 2pi- 892 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 893 0.0, 0.0, 0.0, 0.0, 0.02, 0.02, 0.03, 0.03, 0.05, 0.06, 894 0.08, 0.10, 0.12, 0.15, 0.18, 0.21, 0.24, 0.27, 0.27, 0.27, 0.27}, 895 896 // L p 5pi0 897 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 898 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 0.03, 899 0.04, 0.05, 0.06, 0.08, 0.10, 0.12, 0.14, 0.16, 0.16, 0.16, 0.16}, 900 901 // L p pi+ pi- 3pi0 902 902 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 903 903 0.0, 0.0, 0.0, 0.0, 0.0, 0.01, 0.02, 0.02, 0.03, 0.04, 904 0.05, 0.0 7, 0.08, 0.10, 0.13, 0.14, 0.16, 0.16, 0.16, 0.15, 0.14},905 906 // S0 n 3pi+ 2pi-907 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 908 0.0, 0.0, 0.0, 0.0, 0.0 , 0.02, 0.03, 0.03, 0.05, 0.07,909 0.0 9, 0.11, 0.13, 0.15, 0.16, 0.17, 0.18, 0.18, 0.18, 0.17, 0.14} };904 0.05, 0.06, 0.07, 0.09, 0.11, 0.13, 0.15, 0.17, 0.17, 0.17, 0.16}, 905 906 // L p 2pi+ 2pi- pi0 907 { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 908 0.0, 0.0, 0.0, 0.0, 0.01, 0.01, 0.02, 0.03, 0.05, 0.06, 909 0.08, 0.10, 0.12, 0.15, 0.18, 0.21, 0.24, 0.27, 0.27, 0.27, 0.27} }; 910 910 } 911 911 -
trunk/source/processes/hadronic/models/cascade/cascade/src/G4CollisionOutput.cc
r962 r1196 30 30 typedef std::vector<G4InuclElementaryParticle>::iterator particleIterator; 31 31 32 32 33 G4CollisionOutput::G4CollisionOutput() 33 34 : verboseLevel(0) { 34 35 35 if (verboseLevel > 3) {36 if (verboseLevel > 3) 36 37 G4cout << " >>> G4CollisionOutput::G4CollisionOutput" << G4endl; 37 }38 38 } 39 40 41 G4CollisionOutput& G4CollisionOutput::operator=(const G4CollisionOutput& right) 42 { 43 if (this != &right) { 44 verboseLevel = right.verboseLevel; 45 outgoingParticles = right.outgoingParticles; 46 nucleiFragments = right.nucleiFragments; 47 eex_rest = right.eex_rest; 48 on_shell = right.on_shell; 49 } 50 return *this; 51 } 52 39 53 40 54 void G4CollisionOutput::setOnShell(G4InuclParticle* bullet, -
trunk/source/processes/hadronic/models/cascade/cascade/src/G4ElementaryParticleCollider.cc
r1007 r1196 53 53 typedef std::vector<G4InuclElementaryParticle>::iterator particleIterator; 54 54 55 55 56 G4ElementaryParticleCollider::G4ElementaryParticleCollider() 56 : verboseLevel(1) 57 : verboseLevel(1) 57 58 { 58 59 if (verboseLevel > 3) { 59 60 G4cout << " >>> G4ElementaryParticleCollider ctor " << G4endl; 60 61 } 62 63 initializeArrays(); 61 64 } 62 65 … … 177 180 G4double ekin) const 178 181 { 179 if (verboseLevel > 3) {180 G4cout << " >>> G4ElementaryParticleCollider::generateMultiplicity"181 << G4endl;182 }183 184 const G4double asig[4][6][31] = {185 // pp, nn186 {{1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 24.3, 24.1, 24.0, 26.3,187 28.6, 24.8, 19.9, 19.2, 17.4, 15.3, 13.5, 12.3, 11.9, 10.4,188 11.8, 11.4, 11.0, 10.8, 10.9, 11.7, 11.4, 10.2, 11.0, 11.0, 9.0},189 190 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 1.45, 2.90, 4.10,191 5.30, 22.0, 21.2, 19.9, 14.9, 12.6, 12.3, 11.3, 10.8, 9.50,192 8.27, 7.20, 6.70, 6.25, 6.04, 5.89, 5.70, 5.60, 5.05, 4.17,4.00},193 194 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,195 0. , 2.27, 4.28, 7.81, 8.03, 8.11, 7.90, 7.82, 7.61, 7.47,196 7.07, 7.66, 7.05, 6.71, 6.38, 6.36, 6.37, 6.57, 6.01, 5.48, 6.80},197 198 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,199 0. , 0. , 1.20, 2.85, 3.70, 4.81, 5.33, 7.74, 6.91, 6.94,200 7.57, 7.21, 7.11, 7.10, 6.93, 6.79, 6.71, 6.55, 6.55, 6.15, 8.50},201 // pp, nn total cross section202 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,203 0. , 0. , 0. , .005, 0.54, 0.74, 0.86, 0.91, 1.10, 1.16,204 1.36, 1.40, 1.43, 1.47, 1.47, 1.43, 1.38, 1.38, 1.63, 1.36, 2.80},205 206 { 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 24.3,25.55, 26.9, 30.4,207 34.0, 49.07,46.9, 49.765, 47.1, 42.3, 41.8, 41.2, 41.6, 41.6,208 41.0, 43.0, 42.4, 40.0, 39.9, 39.8, 42.0, 40.0, 39.8, 39.6, 38.7}},209 210 // pn, np211 {{1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 33.0, 31.3, 29.5, 27.8,212 14.6, 16.0, 17.5, 18.3, 19.4, 18.7, 15.6, 14.8, 13.6, 12.5,213 12.2, 11.9, 11.4, 11.2, 10.1, 9.62, 8.41, 7.14, 7.09, 5.04, 10.2},214 215 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 2.00, 4.00, 6.50,216 19.5, 20.8, 19.8, 18.6, 17.7, 14.4, 13.5, 10.4, 10.1, 12.0,217 8.87, 8.51, 8.49, 9.20, 8.29, 7.43, 8.20, 4.69, 4.57, 4.06, 4.10},218 219 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,220 0.68, 2.76, 3.85, 8.35, 12.7, 12.3, 10.8, 12.0, 10.9, 10.2,221 10.6, 12.2, 11.8, 11.0, 10.4, 10.5, 11.0, 10.6, 11.8, 12.5, 13.2},222 223 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,224 0.22, 0.52, 0.64, 1.19, 1.52, 1.75, 1.51, 2.04, 1.85, 1.70,225 1.92, 1.66, 1.74, 1.50, 1.39, 1.35, 1.41, 1.48, 1.43, 1.35, 3.20},226 227 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,228 0. , 0. , 0.14, 0.24, 0.30, 0.46, 0.85, 1.40, 1.54, 1.52,229 1.47, 1.48, 1.49, 1.42, 1.39, 1.37, 1.22, 1.19, 0.93, 0. ,2.10},230 // pn, np total cross section231 { 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 33.0, 33.3, 33.5, 34.3,232 35.0, 40.08, 41.93, 46.68, 51.62, 47.61, 42.26, 40.64, 37.99, 37.92,233 41.2, 41.0, 41.1, 41.2, 41.2, 39.6, 36.0, 36.0, 36.2, 36.2, 40.2}},234 235 // pi- n, pi+ p236 {{1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 60.0, 38.0, 30.6, 24.0,237 18.5, 12.8, 13.6, 9.15, 8.20, 7.80, 7.10, 6.40, 5.81, 5.85,238 5.50, 5.33, 5.40, 5.50, 4.90, 5.02, 5.00, 4.98, 4.96, 4.96, 4.50},239 240 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0.38, 0.75, 1.28,241 2.26, 11.8, 11.1, 7.56, 6.04, 5.68, 4.15, 3.21, 2.12, 1.66,242 1.54, 1.53, 1.47, 1.33, 1.39, 1.35, 1.29, 1.23, 1.13, 1.06, 0.70},243 244 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,245 0.05, 2.19, 6.02, 7.36, 6.97, 5.83, 6.53, 5.09, 4.24, 3.24,246 3.31, 3.11, 2.91, 2.78, 2.72, 2.68, 2.48, 2.27, 2.02, 1.77, 4.40},247 248 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,249 0.06, 0.35, 0.55, 0.77, 0.89, 0.80, 0.86, 0.97, 0.90, 0.86,250 0.84, 0.84, 0.83, 0.81, 0.79, 0.82, 0.76, 0.88, 0.89, 0.89, 3.00},251 252 {0. ,0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,253 0. , 0.02, 0.07,0.33, 0.92, 1.39, 2.11, 1.81, 2.39, 2.60,254 2.19, 1.70, 1.60,0.68, 1.43, 1.46, 1.46, 1.37, 1.16, 1.09, 2.60},255 // pi- n, pi+ p total cross section256 { 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 60.0, 38.38, 31.35, 25.28,257 20.87, 27.2, 34.9, 29.1, 30.8, 29.6, 28.2, 27.5, 26.9, 26.3,258 25.9, 25.6, 25.2, 26.1, 25.5, 25.4, 25.3, 25.1, 24.9, 24.8, 24.1}},259 260 // pi- p -> 2 body (pi+ n -> two body)261 {{5.90,9.40, 24.5, 62.6, 65.3, 41.3, 29.3, 24.3, 22.7, 22.9,262 23.2,28.4, 11.7, 10.1, 8.30, 7.16, 6.49, 6.36, 6.60, 5.84,263 5.3, 5.2, 5.2, 5.1, 4.74, 4.7, 4.6, 4.5, 4.4, 4.3, 4.3},264 // pi- p -> 3 body265 {0. ,0. , 0. , 0. , 0.10, 0.40, 2.70, 3.50, 5.30, 6.60,266 9.10,17.6, 12.2, 9.78, 7.51, 6.91, 6.86, 6.46, 6.19, 5.13,267 3.90,2.82, 3.10, 3.12, 2.52, 2.22, 2.02, 2.01, 1.98, 2.14, 1.20},268 269 {0. ,0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,270 0.76,2.63, 3.72, 6.53, 7.47, 7.94, 7.12, 6.85, 6.09, 5.35,271 4.12,3.85, 3.68, 4.09, 3.58, 3.29, 3.08, 2.93, 2.80, 2.65, 3.30},272 273 {0. ,0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,274 0.59,0.74, 1.47, 4.10, 4.78, 4.90, 5.07, 5.50, 5.48, 5.03,275 4.65,4.39, 4.06, 3.53, 3.08, 3.05, 2.91, 3.42, 3.93, 3.93, 4.10},276 // pi- p -> 6 body277 {0. ,0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,278 0.01,.007, 0.03, .099, .251, .376, .419, .582, .755, .777,279 1.13,1.08, 1.13, 1.08, .962, .866, .738, .674, .645, .613, 1.30},280 281 // Used as pi- p and pi+ n total cross section282 // For KE < 0.5 GeV, sum up 2-6 body cross sections283 { 5.9, 9.4, 24.5, 62.6, 65.4, 41.7, 32.0, 27.8, 28.0, 29.5,284 33.7, 49.4, 30.0, 35.7, 33.4, 31.6, 30.4, 29.6, 28.9, 28.5,285 28.1, 27.5, 31.0, 27.7, 27.8, 26.1, 25.2, 25.2, 25.2, 25.2, 25.7}}286 };287 288 182 G4int mul = 0; 289 183 G4int l = is; … … 339 233 } 340 234 341 } else { // non-strange particle branch 342 343 // DHW 3 Sept 08 const G4double large_cut = 4.0; 344 std::pair<G4int, G4double> iksk = getPositionInEnergyScale2(ekin); 345 G4int ik = iksk.first; 346 G4double sk = iksk.second; 347 348 l = is; 349 if (l == 4) l = 1; 350 if (l == 10) l = 3; 351 if (l == 5 || l == 6) l = 4; 352 353 std::vector<G4double> sigm(5); 354 G4double stot = 0.0; 355 356 if (l == 7 || l == 14) { // pi0 P or pi0 N 357 358 for (G4int j = 0; j < 5; j++) { 359 sigm[j] = 0.5 * (asig[2][j][ik - 1] + asig[3][j][ik - 1] + 360 sk * (asig[2][j][ik] + asig[3][j][ik] - 361 asig[2][j][ik - 1] - asig[3][j][ik - 1])); 362 } 363 stot = 0.5 * (asig[2][5][ik - 1] + asig[3][5][ik - 1] + 364 sk * (asig[2][5][ik] + asig[3][5][ik] - 365 asig[2][5][ik - 1] - asig[3][5][ik - 1])); 366 367 } else { 368 369 for (G4int j = 0; j < 5; j++) { 370 sigm[j] = asig[l - 1][j][ik - 1] + 371 sk * (asig[l - 1][j][ik] - asig[l - 1][j][ik - 1]); 372 } 373 stot = asig[l - 1][5][ik - 1] + 374 sk * (asig[l - 1][5][ik] - asig[l - 1][5][ik - 1]); 375 } 376 377 G4double sl = inuclRndm(); 378 G4double ptot = 0.0; 379 380 mul = 4; 381 for (G4int i = 0; i < 5; i++) { 382 ptot += sigm[i] / stot; 383 384 if (sl <= ptot) { 385 mul = i; 386 break; 387 } 388 } 389 390 // DHW 3 Sept 08 if(ekin > large_cut && mul == 1) mul = 2; 391 392 } // strange, non-strange 235 // Non-strange branch 236 } else if (l == 1 || l == 4) { 237 mul = nucSampler.GetMultiplicityT1(ekin) - 2; 238 if (mul > 7) G4cout << " Nuc sampler pp mult too high: mul = " << mul << G4endl; 239 } else if (l == 2) { 240 mul = nucSampler.GetMultiplicityT0(ekin) - 2; 241 if (mul > 7) G4cout << " Nuc sampler np mult too high: mul = " << mul << G4endl; 242 } else if (l == 3 || l == 10) { 243 // |T,Tz> = |3/2,3/2> 244 mul = piSampler.GetMultiplicityT33(ekin) - 2; 245 } else if (l == 5 || l == 6) { 246 // |T,Tz> = |3/2,1/2> 247 mul = piSampler.GetMultiplicityT31(ekin) - 2; 248 } else if (l == 7 || l == 14) { 249 // |T,Tz> = |1/2,1/2> 250 mul = piSampler.GetMultiplicityT11(ekin) - 2; 251 } else { 252 G4cout << " G4ElementaryParticleCollider: " 253 << " Unknown interaction channel - multiplicity not generated " 254 << G4endl; 255 } 393 256 394 257 if(verboseLevel > 3){ 395 G4cout << " multiplicity " << mul + 2 << G4endl; 258 G4cout << " G4ElementaryParticleCollider::generateMultiplicity: " 259 << " multiplicity = " << mul + 2 << G4endl; 396 260 } 397 261 … … 399 263 } 400 264 401 265 402 266 std::vector<G4InuclElementaryParticle> 403 267 G4ElementaryParticleCollider::generateSCMfinalState(G4double ekin, … … 430 294 G4bool generate = true; 431 295 432 while (generate) { 296 while (generate) { 433 297 434 298 if(multiplicity == 0) { … … 440 304 441 305 if(multiplicity == 2) { // 2 -> 2 442 G4int kw; 443 kw = 1; 306 G4int kw = 1; 444 307 if ( (is > 10 && is < 14) || (is > 14 && is < 63) ) { 445 308 particle_kinds = … … 448 311 G4int finaltype = particle_kinds[0]*particle_kinds[1]; 449 312 if (finaltype != is) kw = 2; // Charge or strangeness exchange 313 314 } else if (is == 1 || is == 2 || is == 4) { 315 particle_kinds.push_back(type1); 316 particle_kinds.push_back(type2); 317 318 } else if (is == 3) { 319 particle_kinds = piSampler.GetFSPartTypesForPipP(2, ekin); 320 if (particle_kinds[0] != G4PionSampler::pro) kw = 2; 321 322 } else if (is == 10) { 323 particle_kinds = piSampler.GetFSPartTypesForPimN(2, ekin); 324 if (particle_kinds[0] != G4PionSampler::neu) kw = 2; 325 326 } else if (is == 5) { 327 particle_kinds = piSampler.GetFSPartTypesForPimP(2, ekin); 328 if (particle_kinds[0] != G4PionSampler::pro) kw = 2; 329 330 } else if (is == 6) { 331 particle_kinds = piSampler.GetFSPartTypesForPipN(2, ekin); 332 if (particle_kinds[0] != G4PionSampler::neu) kw = 2; 333 334 } else if (is == 7) { 335 particle_kinds = piSampler.GetFSPartTypesForPizP(2, ekin); 336 if (particle_kinds[0] != G4PionSampler::pro) kw = 2; 337 338 } else if (is == 14) { 339 particle_kinds = piSampler.GetFSPartTypesForPizN(2, ekin); 340 if (particle_kinds[0] != G4PionSampler::neu) kw = 2; 341 450 342 } else { 451 452 if(reChargering(ekin, is)) { // rechargering 453 kw = 2; 454 455 switch (is) { 456 457 case 6: // pi+ N -> pi0 P 458 particle_kinds.push_back(7); 459 particle_kinds.push_back(1); 460 break; 461 462 case 5: // pi- P -> pi0 N 463 particle_kinds.push_back(7); 464 particle_kinds.push_back(2); 465 break; 466 467 case 7: // pi0 P -> pi+ N 468 particle_kinds.push_back(3); 469 particle_kinds.push_back(2); 470 break; 471 472 case 14: // pi0 N -> pi- P 473 particle_kinds.push_back(5); 474 particle_kinds.push_back(1); 475 break; 476 477 default: 478 G4cout << " strange recharge: " << is << G4endl; 479 particle_kinds.push_back(type1); 480 particle_kinds.push_back(type2); 481 kw = 1; 482 }; 483 484 } else { // just elastic 485 486 kw = 1; 487 particle_kinds.push_back(type1); 488 particle_kinds.push_back(type2); 489 }; 343 G4cout << " Unexpected interaction type (2->2) is = " << is << G4endl; 490 344 } 491 345 … … 511 365 }; 512 366 367 // G4cout << " Particle kinds = " << particle_kinds[0] << " , " << particle_kinds[1] << G4endl; 368 513 369 if (verboseLevel > 3){ 514 370 G4cout << " before rotation px " << mom[1] << " py " << mom[2] << … … 535 391 if ( (is > 10 && is < 14) || (is > 14 && is < 63) ) { 536 392 particle_kinds = 537 generateStrangeChannelPartTypes(is, multiplicity, ekin); 393 generateStrangeChannelPartTypes(is, multiplicity, ekin); 394 395 } else if (is == 1) { 396 particle_kinds = nucSampler.GetFSPartTypesForPP(multiplicity, ekin); 397 398 } else if (is == 2) { 399 particle_kinds = nucSampler.GetFSPartTypesForNP(multiplicity, ekin); 400 401 } else if (is == 4) { 402 particle_kinds = nucSampler.GetFSPartTypesForNN(multiplicity, ekin); 403 404 } else if (is == 3) { 405 particle_kinds = piSampler.GetFSPartTypesForPipP(multiplicity, ekin); 406 407 } else if (is == 10) { 408 particle_kinds = piSampler.GetFSPartTypesForPimN(multiplicity, ekin); 409 410 } else if (is == 5) { 411 particle_kinds = piSampler.GetFSPartTypesForPimP(multiplicity, ekin); 412 413 } else if (is == 6) { 414 particle_kinds = piSampler.GetFSPartTypesForPipN(multiplicity, ekin); 415 416 } else if (is == 7) { 417 particle_kinds = piSampler.GetFSPartTypesForPizP(multiplicity, ekin); 418 419 } else if (is == 14) { 420 particle_kinds = piSampler.GetFSPartTypesForPizN(multiplicity, ekin); 421 538 422 } else { 539 particle_kinds = generateOutgoingKindsFor2toMany(is, multiplicity, ekin);423 G4cout << " Unexpected interaction type is = " << is << G4endl; 540 424 } 425 426 // G4cout << " Particle kinds = " ; 427 // for (G4int i = 0; i < multiplicity; i++) G4cout << particle_kinds[i] << " , " ; 428 // G4cout << G4endl; 541 429 542 430 G4int itry = 0; … … 835 723 return good; 836 724 } 837 838 839 G4int840 G4ElementaryParticleCollider::getIL(G4int is, G4int mult) const841 {842 if (verboseLevel > 3) {843 G4cout << " >>> G4ElementaryParticleCollider::getIL"844 << G4endl;845 }846 847 const G4int ifdef[4][7] = {848 {2, 3, 2, 2, 3, 3, 2},849 {4, 4, 3, 4, 4, 4, 3},850 {5, 6, 4, 5, 5, 5, 4},851 {7, 7, 5, 7, 6, 6, 5}852 };853 854 G4int l = is;855 856 if(l == 14) {857 l = 5;858 859 } else if(l == 7) {860 l = 6;861 862 } else if(l == 10) {863 864 l = 7;865 };866 867 return ifdef[mult - 3][l - 1];868 }869 870 871 std::vector<G4int>872 G4ElementaryParticleCollider::generateOutgoingKindsFor2toMany(873 G4int is,874 G4int mult,875 G4double ekin) const876 {877 if (verboseLevel > 3) {878 G4cout << " >>> G4ElementaryParticleCollider::generateOutgoingKindsFor2toMany"879 << G4endl;880 }881 882 const G4double bsig[4][20][20] = {883 {{1.20,3.70,3.98,3.85,3.51,2.90,2.86,2.81,2.77,2.80,884 2.54,2.00,1.90,1.75,1.68,1.61,1.54,1.40,1.25,1.17},885 {8.00,14.0,13.0,12.0,11.4,9.70,9.41,8.52,8.03,6.70,886 5.73,5.20,4.80,4.54,4.36,4.28,4.16,4.10,3.80,3.00},887 {0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,888 0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. },889 {0. ,0.37,0.41,0.92,1.10,0.98,0.85,0.74,0.74,0.83,890 0.71,0.68,0.53,0.48,0.41,0.41,0.41,0.37,0.37,0.37},891 {0. ,0.30,1.22,2.51,2.67,2.95,2.95,2.95,2.96,2.84,892 2.80,2.70,3.00,2.80,2.46,2.46,2.45,2.40,2.40,2.20},893 {0. ,1.40,2.37,4.07,3.90,3.80,3.70,3.70,3.60,3.40,894 3.20,3.50,3.17,3.00,2.80,2.70,2.60,2.60,2.40,2.20},895 {0. ,0.20,0.28,0.31,0.36,0.38,0.40,0.42,0.43,0.44,896 0.46,0.48,0.50,0.80,0.71,0.80,0.96,1.20,1.00,0.91},897 {0. ,0. ,0.14,0.14,0.14,0.14,0.12,0.11,0.11,0.11,898 0.14,0.17,0.16,0.16,0.16,0.15,0.15,0.15,0.15,0.14},899 {0. ,0. ,0.02,0.21,0.74,1.10,1.50,1.76,1.98,2.40,900 2.50,2.60,2.60,2.50,2.50,2.40,2.40,2.30,2.10,2.00},901 {0. ,0. ,0.10,0.40,1.15,1.60,1.80,2.19,2.80,2.30,902 2.90,2.60,2.60,2.60,2.50,2.50,2.50,2.40,2.20,1.85},903 {0. ,0. ,0.80,1.90,1.50,1.80,1.70,1.60,1.80,1.90,904 1.80,1.60,1.50,1.43,1.41,1.30,1.28,1.30,1.60,1.70},905 {0. ,0. ,0.14,0.16,0.17,0.17,0.21,0.21,0.22,0.23,906 0.24,0.25,0.41,0.36,0.40,0.46,0.52,0.50,0.50,0.46},907 {0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,908 0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. },909 {0. ,0. ,0. ,0. ,0.04,0.06,0.05,0.04,0.04,0.04,910 0.04,0.05,0.05,0.05,0.04,0.04,0.04,0.03,0.03,0.03},911 {0. ,0. ,0. ,.005,0.02,0.07,0.11,0.15,0.17,0.19,912 0.24,0.25,0.26,0.26,0.25,0.25,0.24,0.24,0.23,0.21},913 {0. ,0. ,0. ,0. ,0.05,0.09,0.18,0.20,0.22,0.28,914 0.36,0.41,0.42,0.43,0.44,0.45,0.46,0.46,0.47,0.47},915 {0. ,0. ,0. ,0. ,0.09,0.16,0.18,0.22,0.28,0.23,916 0.29,0.26,0.26,0.26,0.25,0.25,0.25,0.24,0.22,0.18},917 {0. ,0. ,0. ,0. ,0.15,0.18,0.17,0.16,0.18,0.19,918 0.18,0.16,0.15,0.14,0.14,0.13,0.12,0.13,0.16,0.17},919 {0. ,0. ,0. ,0. ,0.02,0.02,0.02,0.02,0.04,0.05,920 0.05,0.06,0.07,0.10,0.11,0.10,0.09,0.09,0.09,0.09},921 {0. ,0. ,0. ,0. ,0.17,0.16,0.15,0.16,0.17,0.18,922 0.20,0.21,0.22,0.23,0.24,0.21,0.18,0.19,0.20,0.21}},923 924 {{12.0,14.0,13.1,12.0,11.0,10.0,8.70,6.30,5.20,7.80,925 6.40,6.20,6.20,6.80,5.40,4.80,4.80,2.60,2.50,1.90},926 {1.90,2.50,2.60,1.80,1.70,1.68,1.61,1.50,1.46,1.40,927 1.31,1.17,1.14,1.10,1.09,1.03,1.00,0.99,0.97,0.96},928 {5.60,4.30,4.20,4.80,5.00,2.70,3.20,2.60,3.40,2.80,929 1.16,1.14,1.15,1.30,1.80,1.60,1.20,1.10,1.10,1.20},930 {0.12,1.40,1.30,1.20,2.40,2.00,1.60,3.80,3.40,3.20,931 3.50,3.80,3.70,3.30,3.30,3.40,3.50,3.16,3.80,4.10},932 {0. ,0.77,1.75,5.28,6.30,5.90,5.30,4.90,4.80,4.70,933 4.20,3.72,3.60,3.40,3.20,3.50,3.90,4.10,4.30,4.50},934 {0. ,0.16,0.35,0.91,2.80,3.60,3.20,2.60,1.90,1.14,935 1.15,1.16,1.14,1.11,1.08,0.99,0.94,0.91,0.86,0.83},936 {0.56,0.43,0.42,0.96,1.20,0.80,0.64,0.71,0.84,1.20,937 1.80,3.50,3.40,3.20,2.80,2.60,2.70,2.40,2.80,3.10},938 {0.01,0.02,0.01,0.01,0.02,0.10,0.16,0.38,0.34,0.32,939 0.35,0.38,0.37,0.33,0.35,0.36,0.31,0.42,0.41,0.39},940 {0. ,0.07,0.17,0.53,0.63,0.59,0.53,0.49,0.48,0.47,941 0.42,0.37,0.36,0.34,0.32,0.35,0.39,0.41,0.43,0.45},942 {0.09,0.18,0.21,0.28,0.36,0.37,0.20,0.64,0.68,0.56,943 0.61,0.48,0.34,0.36,0.36,0.32,0.41,0.39,0.39,0.36},944 {0.,0.02,0.04,0.18,0.28,0.36,0.32,0.26,0.19,0.12,945 0.12,0.13,0.14,0.15,0.12,0.11,0.10,0.09,0.07,0.04},946 {0.10,0.12,0.11,0.10,0.12,0.16,0.14,0.13,0.14,0.12,947 0.15,0.18,0.21,0.21,0.14,0.13,0.12,0.11,0.09,0.08},948 {0.02,0.11,0.10,0.09,0.11,0.17,0.16,0.14,0.12,0.11,949 0.13,0.12,0.11,0.11,0.10,0.09,0.08,0.06,0.04,0.03},950 {0. ,0. ,0.04,0.07,0.08,0.11,0.12,0.16,0.15,0.15,951 0.14,0.13,0.12,0.18,0.17,0.16,0.15,0.09,0.09,0.03},952 {0. ,0. ,0.09,0.10,0.11,0.12,0.28,0.49,0.58,0.53,953 0.48,0.46,0.46,0.44,0.43,0.43,0.42,0.39,0.39,0.31},954 {0. ,0. ,0.01,0.05,0.06,0.09,0.11,0.12,0.12,0.14,955 0.15,0.16,0.15,0.14,0.14,0.13,0.18,0.16,0.14,0.13},956 {0. ,0. ,0. ,0.02,0.04,0.09,0.20,0.39,0.41,0.42,957 0.42,0.44,0.45,0.43,0.41,0.43,0.42,0.39,0.39,0.30},958 {0. ,0. ,0. ,0. ,0.01,0.02,0.08,0.04,0.08,0.09,959 0.10,0.11,0.12,0.11,0.09,0.09,0.06,0.06,0.06,0.06},960 {0. ,0. ,0. ,0. ,0. ,0.01,0.02,0.08,0.09,0.09,961 0.09,0.09,0.10,0.11,0.11,0.08,0.07,0.07,0.07,0.06},962 {0. ,0. ,0. ,0. ,0. ,0.02,0.04,0.12,0.11,0.10,963 0.09,0.08,0.08,0.08,0.07,0.07,0.07,0.06,0.05,0.04}},964 965 {{1.80,9.19,7.40,5.29,3.64,3.48,2.47,2.21,1.30,0.95,966 0.82,0.79,0.76,0.75,0.74,0.74,0.72,0.70,0.65,0.61},967 {0.46,2.60,3.70,2.27,2.40,2.00,1.68,1.00,0.82,0.71,968 0.72,0.74,0.71,0.68,0.65,0.61,0.57,0.53,0.48,0.45},969 {0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,970 0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. },971 {0.02,0.15,1.55,2.31,1.98,1.52,1.30,1.10,0.68,0.51,972 0.42,0.39,0.35,0.34,0.33,0.32,0.31,0.30,0.30,0.29},973 {0.01,0.95,1.09,1.63,1.50,1.40,1.38,1.20,1.00,0.81,974 0.63,0.52,0.38,0.34,0.32,0.31,0.24,0.23,0.22,0.21},975 {0.02,1.09,3.38,3.42,3.49,2.91,3.85,2.79,2.56,1.92,976 2.26,2.20,2.18,2.10,2.07,2.05,1.93,1.74,1.50,1.27},977 {0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,978 0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. },979 {0.08,0.21,0.38,0.68,0.44,0.32,0.29,0.18,0.11,0.09,980 0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. },981 {0. ,0.10,0.98,2.41,3.29,3.38,4.29,3.70,3.51,2.90,982 1.94,2.00,2.08,2.16,2.15,2.14,2.12,1.95,1.48,1.39},983 {0. ,0.02,0.07,0.28,0.39,0.59,0.76,0.97,0.91,0.85,984 0.82,0.80,0.78,0.76,0.74,0.74,0.63,0.59,0.52,0.4},985 {0.05,0.26,0.37,0.23,0.24,0.20,0.17,0.10,0.08,0.07,986 0.07,0.09,0.20,0.14,0.12,0.11,0.06,0.05,0.05,0.05},987 {0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,988 0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. },989 {0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,990 0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. },991 {0. ,0. ,0. ,0.06,0.04,0.03,0.02,0.02,0.11,0.09,992 0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. },993 {0. ,0. ,0. ,0.04,0.10,0.16,0.22,0.24,0.35,0.41,994 0.41,0.40,0.42,0.42,0.43,0.43,0.44,0.44,0.43,0.39},995 {0. ,0. ,0. ,0.07,0.31,0.48,0.64,0.66,0.83,0.98,996 0.74,0.38,0.40,0.41,0.41,0.42,0.43,0.41,0.26,0.24},997 {0. ,0.02,0.07,0.06,0.21,0.34,0.56,0.48,0.59,0.64,998 0.68,0.71,0.54,0.46,0.38,0.38,0.41,0.36,0.32,0.33},999 {0. ,0. ,0. ,0.10,0.26,0.38,0.67,0.41,0.51,0.48,1000 0.36,0.21,0.24,0.22,0.21,0.21,0.18,0.17,0.17,0.16},1001 {0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,1002 0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. },1003 {0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,1004 0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. }},1005 1006 {{2.05,5.30,4.72,3.70,2.60,2.70,2.20,1.88,1.90,1.43,1007 1.10,0.74,0.81,0.80,0.62,0.48,0.47,0.47,0.47,0.66},1008 {2.12,1.86,0.81,0.68,0.91,0.71,0.96,1.78,1.69,1.70,1009 1.30,0.94,1.03,1.04,0.84,0.84,0.67,0.67,0.66,0.65},1010 {4.93,10.40,6.67,5.40,4.00,3.50,3.70,2.80,2.60,2.00,1011 1.50,1.14,1.26,1.28,1.06,0.90,0.88,0.87,0.85,0.83},1012 {0.05,0.18,0.43,0.67,0.92,1.16,1.78,1.71,1.52,1.34,1013 1.04,0.97,0.92,1.02,0.89,0.82,0.77,0.73,0.70,0.66},1014 {0.08,0.32,0.70,1.60,1.65,1.88,1.68,1.92,1.79,1.64,1015 1.49,1.37,1.30,1.70,1.40,1.26,1.19,1.13,1.08,1.02},1016 {0.30,0.94,0.70,0.70,0.70,0.70,0.31,0.29,0.27,0.25,1017 0.23,0.21,0.18,0.15,0.13,0.11,0.09,0.07,0.05,0.03},1018 {0.33,1.19,1.89,3.56,4.20,3.78,3.35,2.93,2.51,2.12,1019 1.40,1.34,1.28,1.22,1.16,1.10,1.03,1.00,0.97,0.94},1020 {0.20,0.22,0.23,1.16,1.53,1.86,1.91,2.18,2.02,1.83,1021 1.65,1.52,1.72,1.55,1.39,1.23,1.11,1.02,1.36,1.69},1022 {0.30,0.40,0.70,2.20,2.10,1.80,1.90,2.10,2.20,2.00,1023 1.80,1.70,1.40,1.30,1.35,1.30,1.28,1.10,1.17,1.24},1024 {0.09,0.12,0.30,0.37,0.67,0.89,0.98,1.08,1.16,1.16,1025 1.16,1.17,1.17,1.21,0.79,0.55,0.66,0.79,0.89,1.00},1026 {0. ,0. ,0.09,0.11,0.05,0. ,0. ,0. ,0. ,0. ,1027 0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. },1028 {0. ,0. ,0.15,0.26,0.43,0.35,0.28,0.14,0.10,0.08,1029 0.04,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. },1030 {0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,1031 0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. },1032 {0. ,0. ,0.10,0.28,0.44,0.85,1.15,1.87,2.22,1.80,1033 2.94,1.98,1.72,1.50,1.16,1.05,0.94,0.95,1.06,1.17},1034 {0. ,0.02,0.04,0.12,0.60,1.60,1.30,1.50,2.10,2.40,1035 2.65,2.40,2.09,1.94,1.83,1.17,1.06,0.94,0.93,0.98},1036 {0. ,.003,.041,0.13,0.40,0.09,0.10,0.38,0.96,1.07,1037 2.13,2.14,2.07,2.00,1.95,1.83,1.17,0.86,0.98,0.90},1038 {0. ,.001,0.09,0.19,0.52,0.64,0.78,0.85,0.99,1.17,1039 1.86,1.93,2.14,1.98,1.83,1.76,1.52,1.43,1.35,1.24},1040 {0.10,0.10,0.03,0.16,0.35,0.37,0.52,0.64,0.82,0.95,1041 1.09,1.16,1.73,1.80,1.12,1.03,0.95,0.93,0.90,0.84},1042 {0. ,.015,.008,0.11,0.20,0.21,0.34,0.58,0.46,0.38,1043 0.65,1.17,1.58,1.61,1.73,1.82,1.74,1.63,1.23,1.00},1044 {0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,1045 0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0. ,0.}}1046 };1047 1048 const G4int ifkn[7][7][18] = {1049 {{1,1,7,1,1,7,7,1,1,7,7,7,1,1,7,7,7,7},1050 {3,2,1,1,1,3,5,1,1,7,3,5,1,1,7,7,3,5},1051 {0,0,0,1,2,7,3,1,2,3,3,5,1,1,3,5,3,5},1052 {0,0,0,2,2,3,3,1,2,7,7,3,1,2,3,5,3,7},1053 {0,0,0,0,0,0,0,2,2,7,3,3,1,2,7,7,7,3},1054 {0,0,0,0,0,0,0,0,0,0,0,0,2,2,3,3,7,7},1055 {0,3,2,1,5,1,7,2,7,0,0,0,2,2,3,3,5,3}},1056 1057 {{1,2,7,1,2,7,7,1,2,7,7,7,1,2,7,7,7,7},1058 {1,1,5,1,2,3,5,1,2,3,5,7,1,2,3,5,3,5},1059 {2,2,3,1,1,5,7,1,1,5,3,5,1,2,3,5,7,7},1060 {0,0,0,2,2,3,7,1,1,5,7,7,1,1,3,5,5,7},1061 {0,0,0,0,0,0,0,2,2,3,7,7,1,1,7,7,7,5},1062 {0,0,0,0,0,0,0,2,2,3,5,3,2,2,7,7,7,3},1063 {0,1,7,2,7,2,3,1,5,0,0,0,2,2,3,5,7,3}},1064 1065 {{3,1,7,3,1,7,7,3,1,7,7,7,3,1,7,7,7,7},1066 {3,3,2,3,3,2,7,3,3,5,1,7,3,5,3,5,3,1},1067 {0,0,0,3,5,1,3,3,5,3,3,2,3,5,7,7,3,1},1068 {0,0,0,0,0,0,0,3,3,2,7,7,3,5,3,3,7,2},1069 {0,0,0,0,0,0,0,0,0,0,0,0,3,3,2,7,7,7},1070 {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},1071 {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}},1072 1073 {{2,2,7,2,2,7,7,2,2,7,7,7,2,2,7,7,7,7},1074 {5,2,1,2,2,3,5,2,2,3,5,7,2,2,3,5,7,7},1075 {0,0,0,2,1,7,5,2,1,5,5,3,2,2,3,5,3,5},1076 {0,0,0,1,1,5,5,1,2,7,7,5,1,2,3,5,5,7},1077 {0,0,0,0,0,0,0,1,1,7,5,5,1,2,7,7,7,5},1078 {0,0,0,0,0,0,0,0,0,0,0,0,1,1,5,5,7,7},1079 {0,0,0,0,0,0,0,0,0,0,0,0,1,1,5,5,3,5}},1080 1081 {{5,1,7,5,1,7,7,5,1,7,7,7,5,1,3,5,3,5},1082 {7,7,2,5,1,3,5,5,1,5,3,7,5,1,7,7,7,7},1083 {3,5,2,7,7,7,2,7,7,7,7,2,5,1,5,3,7,7},1084 {0,0,0,3,5,2,7,3,5,2,7,7,2,7,7,7,7,7},1085 {0,0,0,0,0,0,0,3,5,3,5,2,3,5,2,7,7,7},1086 {0,0,0,0,0,0,0,0,0,0,0,0,3,5,3,5,2,7},1087 {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}},1088 1089 {{2,3,7,3,2,7,7,3,2,7,7,7,3,2,3,5,3,5},1090 {7,7,1,3,2,3,5,3,2,3,5,7,3,2,7,7,7,7},1091 {3,5,1,7,7,7,1,1,7,7,7,7,3,2,3,5,7,7},1092 {0,0,0,3,5,1,7,3,5,1,7,7,1,7,7,7,7,7},1093 {0,0,0,0,0,0,0,1,3,5,3,5,3,5,1,7,7,7},1094 {0,0,0,0,0,0,0,0,0,0,0,0,3,5,3,5,1,7},1095 {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}},1096 1097 {{5,2,7,5,2,7,7,5,2,7,7,7,7,7,7,7,5,2},1098 {5,5,1,5,1,7,5,3,5,7,5,2,3,5,3,5,5,2},1099 {0,0,0,5,3,2,5,3,5,5,5,1,3,5,7,7,5,2},1100 {0,0,0,0,0,0,0,5,5,1,7,7,3,5,5,5,1,7},1101 {0,0,0,0,0,0,0,0,0,0,0,0,5,5,1,7,7,7},1102 {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},1103 {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}}1104 };1105 1106 std::vector<G4int> kinds;1107 1108 G4int l = is;1109 1110 if(l == 10) {1111 l = 3;1112 1113 } else if(l == 4) {1114 1115 l = 1;1116 1117 } else if(l == 6 || l == 5) {1118 1119 l = 4;1120 };1121 1122 G4int il = getIL(is, mult);1123 std::pair<G4int, G4double> iksk = getPositionInEnergyScale1(ekin);1124 G4int ik = iksk.first;1125 G4double sk = iksk.second;1126 G4int n;1127 1128 switch(mult) {1129 1130 case 3:1131 n = 0;1132 break;1133 1134 case 4:1135 n = 3;1136 break;1137 1138 case 5:1139 n = 7;1140 break;1141 1142 case 6:1143 n = 13;1144 break;1145 1146 default:1147 G4cout << " generateOutgoingKindsFor2toMany: mult " << mult << G4endl;1148 n = 13;1149 };1150 1151 std::vector<G4double> sig;1152 G4double stot = 0.0;1153 1154 if(l == 7 || l == 14) {1155 1156 for(G4int j = 0; j < il; j++) {1157 sig.push_back(0.5 * (bsig[2][n + j][ik - 1] + bsig[3][n + j][ik - 1] +1158 sk * (bsig[2][n + j][ik] - bsig[2][n + j][ik - 1] +1159 bsig[3][n + j][ik] - bsig[3][n + j][ik - 1])));1160 stot += sig[j];1161 };1162 1163 } else {1164 1165 for(G4int j = 0; j < il; j++) {1166 sig.push_back(bsig[l - 1][n + j][ik - 1] +1167 sk*(bsig[l - 1][n + j][ik] - bsig[l - 1][n + j][ik - 1]));1168 stot += sig[j];1169 };1170 1171 };1172 1173 G4double sl = inuclRndm();1174 1175 sl *= stot;1176 1177 G4double ptot = 0.0;1178 G4int ml = 0;1179 1180 G4int i(0);1181 for(i = 0; i < il; i++) {1182 ptot += sig[i];1183 if(sl <= ptot) {1184 ml = i;1185 break;1186 }1187 }1188 1189 l = is;1190 if (l == 14) {1191 l = 5;1192 } else if (l == 7) {1193 l = 6;1194 } else if (is == 10) {1195 l = 7;1196 }1197 1198 G4int ks;1199 1200 switch(mult) {1201 1202 case 3:1203 ks = 0;1204 break;1205 1206 case 4:1207 ks = 3;1208 break;1209 1210 case 5:1211 ks = 7;1212 break;1213 1214 case 6:1215 ks = 12;1216 break;1217 1218 default:1219 G4cout << " generateOutgoingKindsFor2toMany: mult "1220 << mult << G4endl;1221 ks = 12;1222 }1223 1224 for(i = 0; i < mult; i++)1225 kinds.push_back(ifkn[l - 1][ml][i + ks]);1226 1227 return kinds;1228 }1229 725 1230 726 … … 1288 784 1289 785 G4double 1290 G4ElementaryParticleCollider::getMomModuleFor2toMany(G4int is, 1291 G4int mult, 786 G4ElementaryParticleCollider::getMomModuleFor2toMany(G4int is, G4int mult, 1292 787 G4int knd, 1293 788 G4double ekin) const … … 1297 792 << G4endl; 1298 793 } 1299 1300 const G4double rmn[14][10][2] = {1301 {{0.5028, 0.6305}, {3.1442, -3.7333}, {-7.8172, 13.464}, {8.1667, -18.594},1302 {1.6208, 1.9439}, {-4.3139, -4.6268}, {12.291, 9.7879}, {-15.288, -9.6074},1303 { 0.0, 0.0}, { 0.0, 0.0}},1304 1305 {{0.9348, 2.1801}, {-10.59, 1.5163}, { 29.227, -16.38}, {-34.55, 27.944},1306 {-0.2009, -0.3464}, {1.3641, 1.1093}, {-3.403, -1.9313}, { 3.8559, 1.7064},1307 { 0.0, 0.0}, { 0.0, 0.0}},1308 1309 {{-0.0967, -1.2886}, {4.7335, -2.457}, {-14.298, 15.129}, {17.685, -23.295},1310 { 0.0126, 0.0271}, {-0.0835, -0.1164}, { 0.186, 0.2697}, {-0.2004, -0.3185},1311 { 0.0, 0.0}, { 0.0, 0.0}},1312 1313 {{-0.025, 0.2091}, {-0.6248, 0.5228}, { 2.0282, -2.8687}, {-2.5895, 4.2688},1314 {-0.0002, -0.0007}, {0.0014, 0.0051}, {-0.0024, -0.015}, { 0.0022, 0.0196},1315 { 0.0, 0.0}, { 0.0, 0.0}},1316 1317 {{1.1965, 0.9336}, {-0.8289,-1.8181}, { 1.0426, 5.5157}, { -1.909,-8.5216},1318 { 1.2419, 1.8693}, {-4.3633, -5.5678}, { 13.743, 14.795}, {-18.592, -16.903},1319 { 0.0, 0.0}, { 0.0, 0.0}},1320 1321 {{0.287, 1.7811}, {-4.9065,-8.2927}, { 16.264, 20.607}, {-19.904,-20.827},1322 {-0.244, -0.4996}, {1.3158, 1.7874}, {-3.5691, -4.133}, { 4.3867, 3.8393},1323 { 0.0, 0.0}, { 0.0, 0.0}},1324 1325 {{-0.2449, -1.5264}, { 2.9191, 6.8433}, {-9.5776, -16.067}, { 11.938, 16.845},1326 {0.0157, 0.0462}, {-0.0826, -0.1854}, { 0.2143, 0.4531}, {-0.2585, -0.4627},1327 { 0.0, 0.0}, { 0.0, 0.0}},1328 1329 {{0.0373, 0.2713}, {-0.422, -1.1944}, { 1.3883, 2.7495}, {-1.7476,-2.9045},1330 {-0.0003, -0.0013}, {0.0014, 0.0058}, {-0.0034,-0.0146}, { 0.0039, 0.0156},1331 { 0.0, 0.0}, { 0.0, 0.0}},1332 1333 {{ 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0},1334 { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0},1335 { 0.1451, 0.0929},{ 0.1538, 0.1303}},1336 1337 {{ 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0},1338 { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0},1339 { 0.4652, 0.5389},{ 0.2744, 0.4071}},1340 1341 {{ 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0},{ 0.0, 0.0},1342 { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, { -0.033, -0.0545},{-0.0146, -0.0288}},1343 1344 {{ 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0},{ 0.0, 0.0},1345 { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, { 0.6296, 0.1491},{ 0.8381, 0.1802}},1346 1347 {{ 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0},{ 0.0, 0.0},1348 { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, { 0.1787, 0.385},{ 0.0086, 0.3302}},1349 1350 {{ 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0},{ 0.0, 0.0},1351 { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, {-0.0026, -0.0128},{ 0.0033, -0.0094}}1352 };1353 794 1354 795 G4double S = inuclRndm(); … … 1363 804 1364 805 if(is == 1 || is == 2 || is == 4) KM = 1; 1365 1366 806 if(mult == 3) { IM = 0; IL = 0; }; 1367 1368 807 if(knd == 1 || knd == 2) JK = 0; 1369 808 1370 809 for(G4int i = 0; i < 4; i++) { 1371 810 G4double V = 0.0; 1372 1373 811 for(G4int k = 0; k < 4; k++) V += rmn[k + JK][i + IL][KM - 1] * std::pow(ekin, k); 1374 1375 812 PR += V * std::pow(S, i); 1376 813 PQ += V; 1377 } ;814 } 1378 815 1379 816 if(knd == 1 || knd == 2) JM = 1; 1380 1381 817 for(G4int m = 0; m < 3; m++) PS += rmn[8 + IM + m][7 + JM][KM - 1] * std::pow(ekin, m); 1382 1383 818 G4double PRA = PS * std::sqrt(S) * (PR + (1 - PQ) * std::pow(S, 4)); 1384 819 … … 1399 834 } 1400 835 1401 const G4double abn[4][4][4] = {1402 {{0.0856, 0.0716, 0.1729, 0.0376}, {5.0390, 3.0960, 7.1080, 1.4331},1403 {-13.782, -11.125, -17.961, -3.1350}, {14.661, 18.130, 16.403, 6.4864}},1404 {{0.0543, 0.0926, -0.1450, 0.2383}, {-9.2324, -3.2186, -13.032, 1.8253},1405 {36.397, 20.273, 41.781, 1.7648}, {-42.962, -33.245, -40.799, -16.735}},1406 {{-0.0511, -0.0515, 0.0454, -0.1541}, {4.6003, 0.8989, 8.3515, -1.5201},1407 {-20.534, -7.5084, -30.260, -1.5692}, {27.731, 13.188, 32.882, 17.185}},1408 {{0.0075, 0.0058, -0.0048, 0.0250}, {-0.6253, -0.0017, -1.4095, 0.3059},1409 {2.9159, 0.7022, 5.3505, 0.3252}, {-4.1101, -1.4854, -6.0946, -3.5277}}1410 };1411 1412 836 const G4int itry_max = 100; 1413 837 G4double ct = 2.0; … … 1461 885 } 1462 886 1463 1464 G4bool1465 G4ElementaryParticleCollider::reChargering(G4double ekin,1466 G4int is) const1467 {1468 if (verboseLevel > 3) {1469 G4cout << " >>> G4ElementaryParticleCollider::reChargering"1470 << G4endl;1471 }1472 1473 const G4double ali[31] = {1474 3.9, 6.6, 13.2, 42.6, 36.6, 26.2, 17.9, 13.5, 11.3, 10.7,1475 9.5, 6.4, 1.9, 0.8, 0.56, 0.26, 0.19, 0.19, 0.18, 0.1,1476 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 ,0.01477 };1478 1479 const G4double asig[4][6][31] = {1480 {{1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 24.3, 24.1, 24.0, 26.3,1481 28.6, 24.8, 19.9, 19.2, 17.4, 15.3, 13.5, 12.3, 11.9, 10.4,1482 11.8, 11.4, 11.0, 10.8, 10.9, 11.7, 11.4, 10.2, 11.0, 11.0, 9.0},1483 1484 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 1.45, 2.90, 4.10,1485 5.30, 22.0, 21.2, 19.9, 14.9, 12.6, 12.3, 11.3, 10.8, 9.50,1486 8.27, 7.20, 6.70, 6.25, 6.04, 5.89, 5.70, 5.60, 5.05, 4.17,4.00},1487 1488 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,1489 0. , 2.27, 4.28, 7.81, 8.03, 8.11, 7.90, 7.82, 7.61, 7.47,1490 7.07, 7.66, 7.05, 6.71, 6.38, 6.36, 6.37, 6.57, 6.01, 5.48, 6.80},1491 1492 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,1493 0. , 0. , 1.20, 2.85, 3.70, 4.81, 5.33, 7.74, 6.91, 6.94,1494 7.57, 7.21, 7.11, 7.10, 6.93, 6.79, 6.71, 6.55, 6.55, 6.15, 8.50},1495 1496 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,1497 0. , 0. , 0. , .005, 0.54, 0.74, 0.86, 0.91, 1.10, 1.16,1498 1.36, 1.40, 1.43, 1.47, 1.47, 1.43, 1.38, 1.38, 1.63, 1.36, 2.80},1499 1500 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,1501 34.0, 46.2, 46.9, 45.2, 47.1, 42.3, 41.8, 41.2, 41.6, 41.6,1502 41.0, 43.0, 42.4, 40.0, 39.9, 39.8, 42.0, 40.0, 39.8, 39.6, 38.7}},1503 1504 {{1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 33.0, 31.3, 29.5, 27.8,1505 14.6, 16.0, 17.5, 18.3, 19.4, 18.7, 15.6, 14.8, 13.6, 12.5,1506 12.2, 11.9, 11.4, 11.2, 10.1, 9.62, 8.41, 7.14, 7.09, 5.04, 10.2},1507 1508 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 2.00, 4.00, 6.50,1509 19.5, 20.8, 19.8, 18.6, 17.7, 14.4, 13.5, 10.4, 10.1, 12.0,1510 8.87, 8.51, 8.49, 9.20, 8.29, 7.43, 8.20, 4.69, 4.57, 4.06, 4.10},1511 1512 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,1513 0.68, 2.76, 3.85, 8.35, 12.7, 12.3, 10.8, 12.0, 10.9, 10.2,1514 10.6, 12.2, 11.8, 11.0, 10.4, 10.5, 11.0, 10.6, 11.8, 12.5, 13.2},1515 1516 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,1517 0.22, 0.52, 0.64, 1.19, 1.52, 1.75, 1.51, 2.04, 1.85, 1.70,1518 1.92, 1.66, 1.74, 1.50, 1.39, 1.35, 1.41, 1.48, 1.43, 1.35, 3.20},1519 1520 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,1521 0. , 0. , 0.14, 0.24, 0.30, 0.46, 0.85, 1.40, 1.54, 1.52,1522 1.47, 1.48, 1.49, 1.42, 1.39, 1.37, 1.22, 1.19, 0.93, 0. ,2.10},1523 1524 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,1525 35.0, 40.0, 42.4, 42.3, 41.0, 40.9, 40.4, 39.8, 35.0, 33.6,1526 41.2, 41.0, 41.1, 41.2, 41.2, 39.6, 36.0, 36.0, 36.2, 0. ,40.2}},1527 1528 // pi- n1529 1530 {{1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 60.0, 38.0, 30.6, 24.0,1531 18.5, 12.8, 13.6, 9.15, 8.20, 7.80, 7.10, 6.40, 5.81, 5.85,1532 5.50, 5.33, 5.40, 5.50, 4.90, 5.02, 5.00, 4.98, 4.96, 4.96, 4.50},1533 1534 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0.38, 0.75, 1.28,1535 2.26, 11.8, 11.1, 7.56, 6.04, 5.68, 4.15, 3.21, 2.12, 1.66,1536 1.54, 1.53, 1.47, 1.33, 1.39, 1.35, 1.29, 1.23, 1.13, 1.06, 0.70},1537 1538 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,1539 0.05, 2.19, 6.02, 7.36, 6.97, 5.83, 6.53, 5.09, 4.24, 3.24,1540 3.31, 3.11, 2.91, 2.78, 2.72, 2.68, 2.48, 2.27, 2.02, 1.77, 4.40},1541 1542 {0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,1543 0.06, 0.35, 0.55, 0.77, 0.89, 0.80, 0.86, 0.97, 0.90, 0.86,1544 0.84, 0.84, 0.83, 0.81, 0.79, 0.82, 0.76, 0.88, 0.89, 0.89, 3.00},1545 1546 {0. ,0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,1547 0. , 0.02, 0.07,0.33, 0.92, 1.39, 2.11, 1.81, 2.39, 2.60,1548 2.19, 1.70, 1.60,0.68, 1.43, 1.46, 1.46, 1.37, 1.16, 1.09, 2.60},1549 1550 {0. ,0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,1551 18.9,27.2, 34.9, 29.1, 30.8, 29.6, 28.2, 27.5, 26.9, 26.3,1552 25.9,25.6, 25.2, 26.1, 25.5, 25.4, 25.3, 25.1, 24.9, 24.8,24.1}},1553 1554 // pi- p -> 2 body1555 1556 {{5.90,9.40, 24.5, 62.6, 65.3, 41.3, 29.3, 24.3, 22.7, 22.9,1557 23.2,28.4, 11.7, 10.1, 8.30, 7.16, 6.49, 6.36, 6.60, 5.84,1558 5.3, 5.2, 5.2, 5.1, 4.74, 4.7, 4.6, 4.5, 4.4, 4.3, 4.3},1559 1560 {0. ,0. , 0. , 0. , 0.10, 0.40, 2.70, 3.50, 5.30, 6.60,1561 9.10,17.6, 12.2, 9.78, 7.51, 6.91, 6.86, 6.46, 6.19, 5.13,1562 3.90,2.82, 3.10, 3.12, 2.52, 2.22, 2.02, 2.01, 1.98, 2.14, 1.20},1563 1564 {0. ,0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,1565 0.76,2.63, 3.72, 6.53, 7.47, 7.94, 7.12, 6.85, 6.09, 5.35,1566 4.12,3.85, 3.68, 4.09, 3.58, 3.29, 3.08, 2.93, 2.80, 2.65, 3.30},1567 1568 {0. ,0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,1569 0.59,0.74, 1.47, 4.10, 4.78, 4.90, 5.07, 5.50, 5.48, 5.03,1570 4.65,4.39, 4.06, 3.53, 3.08, 3.05, 2.91, 3.42, 3.93, 3.93, 4.10},1571 1572 {0. ,0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,1573 0.01,.007, 0.03, .099, .251, .376, .419, .582, .755, .777,1574 1.13,1.08, 1.13, 1.08, .962, .866, .738, .674, .645, .613, 1.30},1575 1576 {0. ,0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. ,1577 31.3,46.0, 30.0, 35.7, 33.4, 31.6, 30.4, 29.6, 28.9, 28.5,1578 28.1,27.5, 31.0, 27.7, 27.8, 26.1, 25.2, 6.92, 6.70, 0. , 25.7}}1579 };1580 1581 G4bool rech = false;1582 1583 if (is == 6 || is == 5 || is == 7 || is == 14) {1584 std::pair<G4int, G4double> iksk = getPositionInEnergyScale2(ekin);1585 G4int ik = iksk.first;1586 G4double sk = iksk.second;1587 G4double chrg;1588 1589 if(ik == 30 && sk == 1.0) {1590 chrg = 1.0;1591 1592 } else {1593 1594 chrg = 1.0 - (ali[ik - 1] + sk * (ali[ik] - ali[ik - 1])) /1595 (asig[3][0][ik - 1] + sk * (asig[3][0][ik] - asig[3][0][ik - 1]));1596 };1597 rech = inuclRndm() > chrg;1598 };1599 1600 return rech;1601 }1602 1603 887 1604 888 std::pair<G4double, G4double> 1605 G4ElementaryParticleCollider::adjustIntervalForElastic( 1606 G4double ekin, 1607 G4double ak, 1608 G4double ae, 1609 G4int k, 1610 G4int l, 1611 const std::vector<G4double>& ssv, 1612 G4double st) const { 889 G4ElementaryParticleCollider::adjustIntervalForElastic(G4double ekin, G4double ak, 890 G4double ae, G4int k, 891 G4int l, 892 const std::vector<G4double>& ssv, 893 G4double st) const { 1613 894 1614 895 if (verboseLevel > 3) { … … 1754 1035 << G4endl; 1755 1036 } 1756 1757 const G4double ang[4][4][13] = {1758 {{ 2.7404, -30.853, 0.1026,-0.3829, 0.2499, 3.9025, 19.402,1759 0.1579, 0.3153,-17.953, 0.4217, 0.1499, 0.5369},1760 {-9.6998, 106.24, -1.0542, 3.7587, 32.028,-91.126,-224.46,1761 2.9671,-7.4981, 109.72, 147.05, 2.8753, -13.216},1762 { 10.400, -129.39, 11.389,-6.5144, -118.82, 323.73, 747.33,1763 -5.5251, 43.295,-239.54,-653.35,-5.3078, 81.011},1764 { 2.3882, 54.339, -16.638, 6.7740, 150.99,-400.48,-935.70,1765 6.8925,-76.460, 228.26, 915.07, 6.2233, -142.85}},1766 1767 {{-7.5137, 19.465, -0.4961, 103.81, -2.6994,-20.619,-44.180,1768 -7.0218,-6.5373, 91.968,-3.5198,-5.9558, -10.550},1769 { 44.096, -68.102, 11.800,-272.82, -460.45, 491.70, 471.94,1770 -205.34, 193.07,-519.63,-260.19,-162.03, 296.29},1771 {-74.379, 96.358, -90.857, 477.59, 1895.9,-1715.5,-1485.6,1772 569.51,-1018.1, 1126.6, 1225.0, 430.79, -1695.7},1773 { 46.038, -56.827, 164.76,-512.22, -2519.0, 2114.3, 1805.5,1774 -898.58, 1742.6,-1074.0,-1748.1,-625.48, 2893.5}},1775 1776 {{ 7.5479, -3.4831, 1.5437,-1788.2, 16.268, 33.004, 31.567,1777 134.96, 46.864,-132.70, 3.6373, 128.75, 69.621},1778 {-39.274, 12.341, -33.769, 4305.2, 2138.4,-766.84,-301.76,1779 4872.2,-1303.0, 741.12, 155.92, 3140.2, -1924.5},1780 { 64.835, -18.592, 251.92,-7931.4, -9126.2, 2700.3, 907.63,1781 -14674., 6729.1,-1600.0,-752.01,-7918.9, 10620.0},1782 { 41.609, 12.024, -450.71, 9347.1, 12431.0,-3352.5,-1077.3,1783 23924.,-11075., 1524.9, 1079.6, 10983., -17468.}},1784 1785 {{-1.8369, 0.1894, -1.2021, 7147.5, -29.654,-16.367,-6.8648,1786 -821.16,-95.192, 58.598,-0.7804,-851.61, -138.65},1787 { 8.6911, -0.6788, 0.2534,-3339.5, -3182.3, 373.94, 60.476,1788 -32586., 2637.3,-318.74,-30.563,-18780., 3928.1},1789 {-13.060, 1.0665, -186.58,-4139.2, 13944.,-1320.2,-175.20,1790 100980.,-12857., 677.51, 147.95, 44607., -20293.},1791 { 7.1880, -0.7291, 332.54,-4436.4, -19342., 1642.3, 203.81,1792 -165530.,20294.,-640.11,-212.50,-58790., 32058.}}1793 };1794 1037 1795 1038 const G4int itry_max = 100; … … 2057 1300 return particles; 2058 1301 } 1302 1303 void G4ElementaryParticleCollider::initializeArrays() 1304 { 1305 // Parameter array for momentum calculation of many body final states 1306 const G4double rmnData[14][10][2] = { 1307 {{0.5028, 0.6305}, {3.1442, -3.7333}, {-7.8172, 13.464}, {8.1667, -18.594}, 1308 {1.6208, 1.9439}, {-4.3139, -4.6268}, {12.291, 9.7879}, {-15.288, -9.6074}, 1309 { 0.0, 0.0}, { 0.0, 0.0}}, 1310 1311 {{0.9348, 2.1801}, {-10.59, 1.5163}, { 29.227, -16.38}, {-34.55, 27.944}, 1312 {-0.2009, -0.3464}, {1.3641, 1.1093}, {-3.403, -1.9313}, { 3.8559, 1.7064}, 1313 { 0.0, 0.0}, { 0.0, 0.0}}, 1314 1315 {{-0.0967, -1.2886}, {4.7335, -2.457}, {-14.298, 15.129}, {17.685, -23.295}, 1316 { 0.0126, 0.0271}, {-0.0835, -0.1164}, { 0.186, 0.2697}, {-0.2004, -0.3185}, 1317 { 0.0, 0.0}, { 0.0, 0.0}}, 1318 1319 {{-0.025, 0.2091}, {-0.6248, 0.5228}, { 2.0282, -2.8687}, {-2.5895, 4.2688}, 1320 {-0.0002, -0.0007}, {0.0014, 0.0051}, {-0.0024, -0.015}, { 0.0022, 0.0196}, 1321 { 0.0, 0.0}, { 0.0, 0.0}}, 1322 1323 {{1.1965, 0.9336}, {-0.8289,-1.8181}, { 1.0426, 5.5157}, { -1.909,-8.5216}, 1324 { 1.2419, 1.8693}, {-4.3633, -5.5678}, { 13.743, 14.795}, {-18.592, -16.903}, 1325 { 0.0, 0.0}, { 0.0, 0.0}}, 1326 1327 {{0.287, 1.7811}, {-4.9065,-8.2927}, { 16.264, 20.607}, {-19.904,-20.827}, 1328 {-0.244, -0.4996}, {1.3158, 1.7874}, {-3.5691, -4.133}, { 4.3867, 3.8393}, 1329 { 0.0, 0.0}, { 0.0, 0.0}}, 1330 1331 {{-0.2449, -1.5264}, { 2.9191, 6.8433}, {-9.5776, -16.067}, { 11.938, 16.845}, 1332 {0.0157, 0.0462}, {-0.0826, -0.1854}, { 0.2143, 0.4531}, {-0.2585, -0.4627}, 1333 { 0.0, 0.0}, { 0.0, 0.0}}, 1334 1335 {{0.0373, 0.2713}, {-0.422, -1.1944}, { 1.3883, 2.7495}, {-1.7476,-2.9045}, 1336 {-0.0003, -0.0013}, {0.0014, 0.0058}, {-0.0034,-0.0146}, { 0.0039, 0.0156}, 1337 { 0.0, 0.0}, { 0.0, 0.0}}, 1338 1339 {{ 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, 1340 { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, 1341 { 0.1451, 0.0929},{ 0.1538, 0.1303}}, 1342 1343 {{ 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, 1344 { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, 1345 { 0.4652, 0.5389},{ 0.2744, 0.4071}}, 1346 1347 {{ 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, 1348 { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, 1349 { -0.033, -0.0545},{-0.0146, -0.0288}}, 1350 1351 {{ 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, 1352 { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, 1353 { 0.6296, 0.1491},{ 0.8381, 0.1802}}, 1354 1355 {{ 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, 1356 { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, 1357 { 0.1787, 0.385},{ 0.0086, 0.3302}}, 1358 1359 {{ 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, 1360 { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, { 0.0, 0.0}, 1361 {-0.0026, -0.0128},{ 0.0033, -0.0094}} 1362 }; 1363 1364 // Copy to class scope 1365 for (G4int i = 0; i < 14; i++) { 1366 for (G4int j = 0; j < 10; j++) { 1367 for (G4int k = 0; k < 2; k++) rmn[i][j][k] = rmnData[i][j][k]; 1368 } 1369 } 1370 1371 // Parameter array for angular distribution calculation 1372 const G4double angData[4][4][13] = { 1373 {{ 2.7404, -30.853, 0.1026,-0.3829, 0.2499, 3.9025, 19.402, 1374 0.1579, 0.3153,-17.953, 0.4217, 0.1499, 0.5369}, 1375 {-9.6998, 106.24, -1.0542, 3.7587, 32.028,-91.126,-224.46, 1376 2.9671,-7.4981, 109.72, 147.05, 2.8753, -13.216}, 1377 { 10.400, -129.39, 11.389,-6.5144, -118.82, 323.73, 747.33, 1378 -5.5251, 43.295,-239.54,-653.35,-5.3078, 81.011}, 1379 { 2.3882, 54.339, -16.638, 6.7740, 150.99,-400.48,-935.70, 1380 6.8925,-76.460, 228.26, 915.07, 6.2233, -142.85}}, 1381 1382 {{-7.5137, 19.465, -0.4961, 103.81, -2.6994,-20.619,-44.180, 1383 -7.0218,-6.5373, 91.968,-3.5198,-5.9558, -10.550}, 1384 { 44.096, -68.102, 11.800,-272.82, -460.45, 491.70, 471.94, 1385 -205.34, 193.07,-519.63,-260.19,-162.03, 296.29}, 1386 {-74.379, 96.358, -90.857, 477.59, 1895.9,-1715.5,-1485.6, 1387 569.51,-1018.1, 1126.6, 1225.0, 430.79, -1695.7}, 1388 { 46.038, -56.827, 164.76,-512.22, -2519.0, 2114.3, 1805.5, 1389 -898.58, 1742.6,-1074.0,-1748.1,-625.48, 2893.5}}, 1390 1391 {{ 7.5479, -3.4831, 1.5437,-1788.2, 16.268, 33.004, 31.567, 1392 134.96, 46.864,-132.70, 3.6373, 128.75, 69.621}, 1393 {-39.274, 12.341, -33.769, 4305.2, 2138.4,-766.84,-301.76, 1394 4872.2,-1303.0, 741.12, 155.92, 3140.2, -1924.5}, 1395 { 64.835, -18.592, 251.92,-7931.4, -9126.2, 2700.3, 907.63, 1396 -14674., 6729.1,-1600.0,-752.01,-7918.9, 10620.0}, 1397 { 41.609, 12.024, -450.71, 9347.1, 12431.0,-3352.5,-1077.3, 1398 23924.,-11075., 1524.9, 1079.6, 10983., -17468.}}, 1399 1400 {{-1.8369, 0.1894, -1.2021, 7147.5, -29.654,-16.367,-6.8648, 1401 -821.16,-95.192, 58.598,-0.7804,-851.61, -138.65}, 1402 { 8.6911, -0.6788, 0.2534,-3339.5, -3182.3, 373.94, 60.476, 1403 -32586., 2637.3,-318.74,-30.563,-18780., 3928.1}, 1404 {-13.060, 1.0665, -186.58,-4139.2, 13944.,-1320.2,-175.20, 1405 100980.,-12857., 677.51, 147.95, 44607., -20293.}, 1406 { 7.1880, -0.7291, 332.54,-4436.4, -19342., 1642.3, 203.81, 1407 -165530.,20294.,-640.11,-212.50,-58790., 32058.}} 1408 }; 1409 1410 // Copy to class scope 1411 for (G4int i = 0; i < 4; i++) { 1412 for (G4int j = 0; j < 4; j++) { 1413 for (G4int k = 0; k < 13; k++) ang[i][j][k] = angData[i][j][k]; 1414 } 1415 } 1416 1417 const G4double abnData[4][4][4] = { 1418 {{0.0856, 0.0716, 0.1729, 0.0376}, {5.0390, 3.0960, 7.1080, 1.4331}, 1419 {-13.782, -11.125, -17.961, -3.1350}, {14.661, 18.130, 16.403, 6.4864}}, 1420 {{0.0543, 0.0926, -0.1450, 0.2383}, {-9.2324, -3.2186, -13.032, 1.8253}, 1421 {36.397, 20.273, 41.781, 1.7648}, {-42.962, -33.245, -40.799, -16.735}}, 1422 {{-0.0511, -0.0515, 0.0454, -0.1541}, {4.6003, 0.8989, 8.3515, -1.5201}, 1423 {-20.534, -7.5084, -30.260, -1.5692}, {27.731, 13.188, 32.882, 17.185}}, 1424 {{0.0075, 0.0058, -0.0048, 0.0250}, {-0.6253, -0.0017, -1.4095, 0.3059}, 1425 {2.9159, 0.7022, 5.3505, 0.3252}, {-4.1101, -1.4854, -6.0946, -3.5277}} 1426 }; 1427 1428 // Copy to class scope 1429 for (G4int i = 0; i < 4; i++) { 1430 for (G4int j = 0; j < 4; j++) { 1431 for (G4int k = 0; k < 4; k++) abn[i][j][k] = abnData[i][j][k]; 1432 } 1433 } 1434 1435 } -
trunk/source/processes/hadronic/models/cascade/cascade/src/G4NucleiModel.cc
r1007 r1196 30 30 #include "G4CollisionOutput.hh" 31 31 32 #include "G4CascadeKplusPChannel.hh"33 #include "G4CascadeKplusNChannel.hh"34 #include "G4CascadeKminusPChannel.hh"35 #include "G4CascadeKminusNChannel.hh"36 #include "G4CascadeKzeroPChannel.hh"37 #include "G4CascadeKzeroNChannel.hh"38 #include "G4CascadeKzeroBarPChannel.hh"39 #include "G4CascadeKzeroBarNChannel.hh"40 #include "G4CascadeLambdaPChannel.hh"41 #include "G4CascadeLambdaNChannel.hh"42 #include "G4CascadeSigmaPlusPChannel.hh"43 #include "G4CascadeSigmaPlusNChannel.hh"44 #include "G4CascadeSigmaZeroPChannel.hh"45 #include "G4CascadeSigmaZeroNChannel.hh"46 #include "G4CascadeSigmaMinusPChannel.hh"47 #include "G4CascadeSigmaMinusNChannel.hh"48 #include "G4CascadeXiZeroPChannel.hh"49 #include "G4CascadeXiZeroNChannel.hh"50 #include "G4CascadeXiMinusPChannel.hh"51 #include "G4CascadeXiMinusNChannel.hh"52 32 53 33 typedef std::vector<G4InuclElementaryParticle>::iterator particleIterator; … … 61 41 } 62 42 63 void G4NucleiModel::generateModel(G4double a,64 G4double z) {43 void 44 G4NucleiModel::generateModel(G4double a, G4double z) { 65 45 66 46 verboseLevel = 2; 67 68 47 if (verboseLevel > 3) { 69 48 G4cout << " >>> G4NucleiModel::generateModel" << G4endl; 70 49 } 50 51 initTotalCrossSections(); 71 52 72 53 const G4double AU = 1.7234; … … 98 79 99 80 G4double CU = cuu * std::pow(a, one_third); 100 101 81 G4double D1 = CU / AU; 102 103 82 G4double D = std::exp(-D1); 104 105 83 G4double CU2 = 0.0; 106 84 … … 118 96 // G4double y = std::log((1.0 + D) / alfa6[i] - 1.0); 119 97 G4double y = std::log((1.0 + D)/alfa3[i] - 1.0); 120 121 98 zone_radii.push_back(CU + AU * y); 122 99 ur.push_back(y); … … 129 106 130 107 G4double CU1 = CU * CU; 131 132 108 CU2 = std::sqrt(CU1 * (1.0 - 1.0 / a) + 6.4); 133 109 … … 140 116 141 117 G4double tot_vol = 0.0; 142 143 118 std::vector<G4double> v; 144 145 119 std::vector<G4double> v1; 146 120 … … 161 135 std::pow(zone_radii[i - 1], G4double(3))); 162 136 v1.push_back(v0); 163 } ;137 } 164 138 165 139 // proton … … 176 150 pf.push_back(pff); 177 151 vz.push_back(0.5 * pff * pff / mproton + binding_energies[0]); 178 } ;152 } 179 153 180 154 nucleon_densities.push_back(rod); … … 264 238 }; 265 239 nuclei_radius = zone_radii[zone_radii.size() - 1]; 240 266 241 } 267 242 268 G4double G4NucleiModel::volNumInt(G4double r1, 269 G4double r2, 270 G4double , 271 G4double d1) const {243 244 G4double 245 G4NucleiModel::volNumInt(G4double r1, G4double r2, 246 G4double, G4double d1) const { 272 247 273 248 if (verboseLevel > 3) { … … 306 281 dr1 = dr; 307 282 fun1 = fun; 308 309 283 } else { 310 284 break; 311 312 }; 313 314 }; 285 } 286 287 } 315 288 316 289 if (verboseLevel > 2){ … … 321 294 } 322 295 323 G4double G4NucleiModel::volNumInt1(G4double r1, 324 G4double r2, 325 G4double cu2) const { 296 297 G4double 298 G4NucleiModel::volNumInt1(G4double r1, G4double r2, 299 G4double cu2) const { 326 300 if (verboseLevel > 3) { 327 301 G4cout << " >>> G4NucleiModel::volNumInt1" << G4endl; … … 349 323 r += dr1; 350 324 fi += r * r * std::exp(-r * r); 351 } ;325 } 352 326 353 327 fun = 0.5 * fun1 + fi * dr; … … 360 334 } else { 361 335 break; 362 363 }; 364 365 }; 336 } 337 338 } 366 339 367 340 if (verboseLevel > 2){ … … 371 344 return std::pow(cu2, G4double(3)) * fun; 372 345 } 346 373 347 374 348 void G4NucleiModel::printModel() const { … … 392 366 getFermiMomentum(2,i) << " VP " << getPotential(2,i) << G4endl 393 367 << " pions: VP " << getPotential(3,i) << G4endl; 394 395 368 } 396 369 397 G4InuclElementaryParticle G4NucleiModel::generateNucleon(G4int type, 398 G4int zone) const { 370 371 G4InuclElementaryParticle 372 G4NucleiModel::generateNucleon(G4int type, G4int zone) const { 399 373 400 374 if (verboseLevel > 3) { … … 409 383 410 384 G4CascadeMomentum mom; 411 412 385 std::pair<G4double, G4double> COS_SIN = randomCOS_SIN(); 413 414 386 G4double FI = randomPHI(); 415 416 387 G4double pt = pmod * COS_SIN.second; 417 388 … … 423 394 } 424 395 425 G4InuclElementaryParticle G4NucleiModel::generateQuasiDeutron(G4int type1, 426 G4int type2, 427 G4int zone) const { 396 397 G4InuclElementaryParticle 398 G4NucleiModel::generateQuasiDeutron(G4int type1, G4int type2, 399 G4int zone) const { 428 400 429 401 if (verboseLevel > 3) { … … 452 424 } 453 425 454 partners G4NucleiModel::generateInteractionPartners(G4CascadParticle& cparticle) const { 426 427 partners 428 G4NucleiModel::generateInteractionPartners(G4CascadParticle& cparticle) const { 455 429 456 430 if (verboseLevel > 3) { … … 503 477 return thePartners; 504 478 505 } else if (std::fabs(path) < small) { // just on the bounda y479 } else if (std::fabs(path) < small) { // just on the boundary 506 480 path = 0.0; 507 481 … … 516 490 dummy_convertor.setBullet(pmom, pmass); 517 491 518 G4int rtype;519 520 492 for (G4int ip = 1; ip < 3; ip++) { 521 493 G4InuclElementaryParticle particle = generateNucleon(ip, zone); 522 494 dummy_convertor.setTarget(particle.getMomentum(), particle.getMass()); 523 495 G4double ekin = dummy_convertor.getKinEnergyInTheTRS(); 524 G4double csec = crossSection(ekin, ptype * ip); 525 rtype = ptype*ip; 526 527 if ( (rtype > 10 && rtype < 14) || (rtype > 14 && rtype < 63) ) { 528 // strange particle branch 529 if (rtype == 11) { 530 csec = G4CascadeKplusPChannel::getCrossSection(ekin); 531 } else if (rtype == 13) { 532 csec = G4CascadeKminusPChannel::getCrossSection(ekin); 533 } else if (rtype == 15) { 534 csec = G4CascadeKzeroPChannel::getCrossSection(ekin); 535 } else if (rtype == 17) { 536 csec = G4CascadeKzeroBarPChannel::getCrossSection(ekin); 537 } else if (rtype == 21) { 538 csec = G4CascadeLambdaPChannel::getCrossSection(ekin); 539 } else if (rtype == 23) { 540 csec = G4CascadeSigmaPlusPChannel::getCrossSection(ekin); 541 } else if (rtype == 25) { 542 csec = G4CascadeSigmaZeroPChannel::getCrossSection(ekin); 543 } else if (rtype == 27) { 544 csec = G4CascadeSigmaMinusPChannel::getCrossSection(ekin); 545 } else if (rtype == 29) { 546 csec = G4CascadeXiZeroPChannel::getCrossSection(ekin); 547 } else if (rtype == 31) { 548 csec = G4CascadeXiMinusPChannel::getCrossSection(ekin); 549 550 } else if (rtype == 22) { 551 csec = G4CascadeKplusNChannel::getCrossSection(ekin); 552 } else if (rtype == 26) { 553 csec = G4CascadeKminusNChannel::getCrossSection(ekin); 554 } else if (rtype == 30) { 555 csec = G4CascadeKzeroNChannel::getCrossSection(ekin); 556 } else if (rtype == 34) { 557 csec = G4CascadeKzeroBarNChannel::getCrossSection(ekin); 558 } else if (rtype == 42) { 559 csec = G4CascadeLambdaNChannel::getCrossSection(ekin); 560 } else if (rtype == 46) { 561 csec = G4CascadeSigmaPlusNChannel::getCrossSection(ekin); 562 } else if (rtype == 50) { 563 csec = G4CascadeSigmaZeroNChannel::getCrossSection(ekin); 564 } else if (rtype == 54) { 565 csec = G4CascadeSigmaMinusNChannel::getCrossSection(ekin); 566 } else if (rtype == 58) { 567 csec = G4CascadeXiZeroNChannel::getCrossSection(ekin); 568 } else if (rtype == 62) { 569 csec = G4CascadeXiMinusNChannel::getCrossSection(ekin); 570 571 } else { 572 csec = 0; 573 G4cout << " G4NucleiModel:" 574 << " Unknown strange interaction channel - returning zero cross section : rtype = " 575 << rtype << G4endl; 576 } 577 } 496 G4double csec = totalCrossSection(ekin, ptype * ip); 578 497 579 498 if(verboseLevel > 2){ … … 583 502 G4double dens = nucleon_densities[ip - 1][zone]; 584 503 G4double rat = getRatio(ip); 585 586 // double rat = 1.0;587 588 504 G4double pw = -path * dens * csec * rat; 589 505 … … 760 676 } 761 677 762 std::vector<G4CascadParticle> G4NucleiModel::generateParticleFate(G4CascadParticle& cparticle, 763 G4ElementaryParticleCollider* theElementaryParticleCollider) { 764 765 if (verboseLevel > 3) {766 G4cout << " >>> G4NucleiModel::generateParticleFate" << G4endl; 767 }678 679 std::vector<G4CascadParticle> 680 G4NucleiModel::generateParticleFate(G4CascadParticle& cparticle, 681 G4ElementaryParticleCollider* theElementaryParticleCollider) { 682 683 if (verboseLevel > 3) G4cout << " >>> G4NucleiModel::generateParticleFate" << G4endl; 768 684 769 685 std::vector<G4CascadParticle> outgouing_cparticles; … … 779 695 780 696 if (npart == 1) { // cparticle is on the next zone entry 697 // need to go here if particle outside nucleus ? 698 // 781 699 cparticle.propagateAlongThePath(thePartners[0].second); 782 700 cparticle.incrementCurrentPath(thePartners[0].second); … … 806 724 if (verboseLevel > 2){ 807 725 if (target.quasi_deutron()) 808 809 726 G4cout << " try absorption: target " << target.type() << " bullet " << 810 811 bullet.type() << G4endl; 727 bullet.type() << G4endl; 812 728 } 813 729 814 730 G4CollisionOutput output = theElementaryParticleCollider->collide(&bullet, &target); 815 731 816 if (verboseLevel > 2){ 817 output.printCollisionOutput(); 818 } 732 if (verboseLevel > 2) output.printCollisionOutput(); 819 733 820 734 std::vector<G4InuclElementaryParticle> outgoing_particles = … … 822 736 output.getOutgoingParticles(); 823 737 824 if (passFermi(outgoing_particles, zone)) { // interaction738 if (passFermi(outgoing_particles, zone)) { // interaction 825 739 cparticle.propagateAlongThePath(thePartners[i].second); 826 827 std::vector<G4double> new_position = cparticle.getPosition(); 828 829 for (G4int ip = 0; ip < G4int(outgoing_particles.size()); ip++) 830 outgouing_cparticles.push_back(G4CascadParticle(outgoing_particles[ip], 831 new_position, zone, 0.0)); 832 no_interaction = false; 740 std::vector<G4double> new_position = cparticle.getPosition(); 741 742 /* 743 // find jet axis for new particles 744 G4double incidentE = cparticle.getParticle().getEnergy(); 745 G4CascadeMomentum jetAxis; 746 for (G4int i = 0; i < G4int(outgoing_particles.size()); i++) { 747 for (G4int j = 1; j < 4; j++) jetAxis[j] += (outgoing_particles[i].getMomentum())[j]; 748 } 749 750 // Find pT wrt jet axis for each secondary 751 */ 752 753 for (G4int ip = 0; ip < G4int(outgoing_particles.size()); ip++) { 754 G4CascadParticle temp(outgoing_particles[ip], new_position, zone, 0.0, 0); 755 /* 756 G4double pathLength = temp.getPathToTheNextZone(0, nuclei_radius); 757 758 // Get jet axis 759 G4CascadeMomentum pmom = temp.getMomentum(); 760 G4double secMass = temp.getParticle().getMass(); 761 G4double dot = 0.0; 762 G4double pmod = 0.0; 763 G4double jmod = 0.0; 764 for (G4int i = 1; i < 4; i++) { 765 dot += pmom[i]*jetAxis[i]; 766 pmod += pmom[i]*pmom[i]; 767 jmod += jetAxis[i]*jetAxis[i]; 768 } 769 770 // G4double sinTheta = std::sqrt(1.0 - dot*dot/pmod/jmod); 771 G4double pT2 = pmod - dot*dot/jmod; 772 // G4cout << " mass = " << secMass << " Energy = " << incidentE << " pT = " << pT << G4endl; 773 G4double formationLength = 1.0*0.1973*incidentE/(pT2 + secMass*secMass); 774 if(formationLength > pathLength) { 775 // G4cout << " formation length = " << formationLength 776 // << " path length = " << pathLength << G4endl; 777 temp.propagateAlongThePath(pathLength); 778 temp.incrementCurrentPath(pathLength); 779 temp.updateZone(number_of_zones-1); 780 } 781 */ 782 outgouing_cparticles.push_back(temp); 783 } 784 785 no_interaction = false; 833 786 current_nucl1 = 0; 834 787 current_nucl2 = 0; … … 853 806 854 807 } else { 855 if (verboseLevel > 2){ 856 G4cout << " good absorption " << G4endl; 857 } 808 if (verboseLevel > 2) G4cout << " good absorption " << G4endl; 858 809 859 810 current_nucl1 = (target.type() - 100) / 10; 860 811 current_nucl2 = target.type() - 100 - 10 * current_nucl1; 861 };812 } 862 813 863 814 if (current_nucl1 == 1) { … … 876 827 877 828 break; 878 }; 879 }; 880 if (no_interaction) { // still now interactions 829 }; 830 } // loop over partners 831 832 if (no_interaction) { // still no interactions 881 833 cparticle.updatePosition(old_position); 882 834 cparticle.propagateAlongThePath(thePartners[npart - 1].second); … … 1017 969 1018 970 G4double rat; 1019 971 G4double ratm; 972 973 // Calculate number of protons and neutrons in local region 974 G4double Athird = std::pow(A, 0.3333); 975 G4double Nneut = Athird*(A-Z)/A; 976 G4double Nprot = Athird*Z/A; 977 978 // Reduce number of 1020 979 if (ip == 1) { 1021 980 if (verboseLevel > 2){ … … 1023 982 } 1024 983 1025 rat = protonNumberCurrent / protonNumber; 984 rat = protonNumberCurrent/protonNumber; 985 986 // Calculate ratio modified for local region 987 G4double deltaP = protonNumber - protonNumberCurrent; 988 // G4cout << " deltaP = " << deltaP << G4endl; 989 ratm = std::max(0.0, (Nprot - deltaP)/Nprot); 1026 990 1027 991 } else { … … 1030 994 } 1031 995 1032 rat = neutronNumberCurrent / neutronNumber; 1033 }; 1034 996 rat = neutronNumberCurrent/neutronNumber; 997 998 // Calculate ratio modified for local region 999 G4double deltaN = neutronNumber - neutronNumberCurrent; 1000 // G4cout << " deltaN = " << deltaN << G4endl; 1001 ratm = std::max(0.0, (Nneut - deltaN)/Nneut); 1002 } 1003 1004 // G4cout << " get ratio: ratm = " << ratm << G4endl; 1035 1005 return rat; 1006 // return ratm; 1036 1007 } 1037 1008 … … 1054 1025 pos[2] = -nuclei_radius * std::sqrt(1.0 - s1 * s1); 1055 1026 1056 G4CascadParticle cpart(*particle, pos, number_of_zones, large );1027 G4CascadParticle cpart(*particle, pos, number_of_zones, large, 0); 1057 1028 1058 1029 if (verboseLevel > 2){ … … 1398 1369 momentums.push_back(mom); 1399 1370 }; 1400 }; 1401 // coordinates and momentums at rest are generated, now back to the lab; 1371 } 1372 1373 // Coordinates and momenta at rest are generated, now back to the lab 1402 1374 G4double rb = 0.0; 1403 1375 G4int i(0); … … 1496 1468 casparticles.push_back( 1497 1469 G4CascadParticle(raw_particles[ip], coordinates[ip], 1498 number_of_zones, large ));1470 number_of_zones, large, 0)); 1499 1471 1500 1472 } else { … … 1526 1498 (casparticles, particles); 1527 1499 } 1500 1501 1502 G4double G4NucleiModel::totalCrossSection(G4double ke, G4int rtype) const 1503 { 1504 const G4double keScale[30] = { 1505 0.0, 0.01, 0.013, 0.018, 0.024, 0.032, 0.042, 0.056, 0.075, 0.1, 1506 0.13, 0.18, 0.24, 0.32, 0.42, 0.56, 0.75, 1.0, 1.3, 1.8, 1507 2.4, 3.2, 4.2, 5.6, 7.5, 10.0, 13.0, 18.0, 24.0, 32.0}; 1508 1509 G4int ik = 29; 1510 G4double sk = 1.0; 1511 for (G4int i = 1; i < 30; i++) { 1512 if (ke <= keScale[i]) { 1513 ik = i; 1514 sk = (ke - keScale[ik - 1]) / (keScale[ik] - keScale[ik - 1]); 1515 break; 1516 } 1517 } 1518 1519 G4double csec = 0.0; 1520 1521 // pp, nn 1522 if (rtype == 1 || rtype == 4) { 1523 csec = PPtot[ik - 1] + sk * (PPtot[ik] - PPtot[ik - 1]); 1524 1525 // np 1526 } else if (rtype == 2) { 1527 csec = NPtot[ik - 1] + sk * (NPtot[ik] - NPtot[ik - 1]); 1528 1529 // pi+p, pi-n 1530 } else if (rtype == 3 || rtype == 10) { 1531 csec = pipPtot[ik - 1] + sk * (pipPtot[ik] - pipPtot[ik - 1]); 1532 1533 // pi-p, pi+n 1534 } else if (rtype == 5 || rtype == 6) { 1535 csec = pimPtot[ik - 1] + sk * (pimPtot[ik] - pimPtot[ik - 1]); 1536 1537 // pi0p, pi0n 1538 } else if (rtype == 7 || rtype == 14) { 1539 csec = pizPtot[ik - 1] + sk * (pizPtot[ik] - pizPtot[ik - 1]); 1540 1541 // k+ p, k0 n 1542 } else if (rtype == 11 || rtype == 30) { 1543 csec = kpPtot[ik - 1] + sk * (kpPtot[ik] - kpPtot[ik - 1]); 1544 1545 // k- p, k0b n 1546 } else if (rtype == 13 || rtype == 34) { 1547 csec = kmPtot[ik - 1] + sk * (kmPtot[ik] - kmPtot[ik - 1]); 1548 1549 // k+ n, k0 p 1550 } else if (rtype == 22 || rtype == 15) { 1551 csec = kpNtot[ik - 1] + sk * (kpNtot[ik] - kpNtot[ik - 1]); 1552 1553 // k- n, k0b p 1554 } else if (rtype == 26 || rtype == 17) { 1555 csec = kmNtot[ik - 1] + sk * (kmNtot[ik] - kmNtot[ik - 1]); 1556 1557 // L p, L n, S0 p, S0 n 1558 } else if (rtype == 21 || rtype == 25 || rtype == 42 || rtype == 50) { 1559 csec = lPtot[ik - 1] + sk * (lPtot[ik] - lPtot[ik - 1]); 1560 1561 // Sp p, Sm n 1562 } else if (rtype == 23 || rtype == 54) { 1563 csec = spPtot[ik - 1] + sk * (spPtot[ik] - spPtot[ik - 1]); 1564 1565 // Sm p, Sp n 1566 } else if (rtype == 27 || rtype == 46) { 1567 csec = smPtot[ik - 1] + sk * (smPtot[ik] - smPtot[ik - 1]); 1568 1569 // Xi0 p, Xi- n 1570 } else if (rtype == 29 || rtype == 62) { 1571 csec = xi0Ptot[ik - 1] + sk * (xi0Ptot[ik] - xi0Ptot[ik - 1]); 1572 1573 // Xi- p, Xi0 n 1574 } else if (rtype == 31 || rtype == 58) { 1575 csec = ximPtot[ik - 1] + sk * (ximPtot[ik] - ximPtot[ik - 1]); 1576 1577 } else { 1578 G4cout << " unknown collison type = " << rtype << G4endl; 1579 } 1580 1581 return csec; 1582 } 1583 1584 1585 void G4NucleiModel::initTotalCrossSections() 1586 { 1587 const G4double PPtotData[30] = { 1588 17613.0, 302.9, 257.1, 180.6, 128.4, 90.5, 66.1, 49.4, 36.9, 29.6, 1589 26.0, 23.1, 22.6, 23.0, 27.0, 32.0, 44.0, 47.04, 44.86, 46.03, 1590 44.09, 41.81, 41.17, 40.65, 40.15, 40.18, 39.26, 38.36, 38.39, 38.41}; 1591 1592 const G4double NPtotData[30] = { 1593 20357.0, 912.6, 788.6, 582.1, 415.0, 272.0, 198.8, 145.0, 100.4, 71.1, 1594 58.8, 45.7, 38.9, 34.4, 34.0, 35.0, 37.5, 39.02, 40.29, 40.72, 1595 42.36, 41.19, 42.04, 41.67, 40.96, 39.48, 39.79, 39.39, 39.36, 39.34}; 1596 1597 const G4double pipPtotData[30] = { 1598 0.0, 1.2, 2.5, 3.8, 5.0, 7.0, 9.0, 15.0, 30.0, 64.0, 1599 130.0, 190.0, 130.0, 56.0, 28.0, 17.14, 19.28, 27.4, 40.05, 32.52, 1600 30.46, 29.0, 27.26, 25.84, 25.5, 24.5, 24.0, 23.5, 23.0, 23.0}; 1601 1602 const G4double pimPtotData[30] = { 1603 6.13, 6.4, 6.67, 6.94, 7.22, 7.5, 8.3, 12.0, 14.4, 24.0, 1604 46.0, 72.04, 43.02, 27.19, 27.32, 43.8, 37.08, 51.37, 34.21, 34.79, 1605 32.08, 31.19, 30.32, 28.5, 27.0, 25.9, 25.5, 25.2, 25.0, 24.8}; 1606 1607 // const G4double pizPtotData[30] = { 1608 // 0.0, 3.55, 4.65, 5.9, 7.75, 10.1, 11.8, 18.0, 27.7, 52.5, 1609 // 102.0, 150.0, 102.64, 51.03, 34.94, 34.52, 32.45, 44.05, 40.2, 34.93, 1610 // 32.0, 30.0, 28.29, 26.91, 26.25, 25.25, 24.75, 24.35, 24.0, 23.9}; 1611 1612 // New test 1613 const G4double pizPtotData[30] = { 1614 6.43, 7.18, 7.54, 8.01, 8.52, 9.13, 10.22, 14.37, 20.96, 34.73, 1615 61.07, 98.23, 61.97, 32.62, 28.07, 31.37, 35.15, 40.17, 37.27, 33.49, 1616 31.06, 29.52, 28.29, 26.91, 26.25, 25.25, 24.75, 24.35, 24.0, 23.9}; 1617 1618 const G4double kpPtotData[30] = { 1619 10.0, 10.34, 10.44, 10.61, 10.82, 11.09, 11.43, 11.71, 11.75, 11.8, 1620 11.98, 12.28, 12.56, 12.48, 12.67, 14.48, 15.92, 17.83, 17.93, 17.88, 1621 17.46, 17.3, 17.3, 17.4, 17.4, 17.4, 17.4, 17.5, 17.7, 17.8}; 1622 1623 const G4double kpNtotData[30] = { 1624 6.64, 6.99, 7.09, 7.27, 7.48, 7.75, 8.1, 8.49, 8.84, 9.31, 1625 9.8, 10.62, 11.64, 13.08, 14.88, 16.60, 17.5, 18.68, 18.68, 18.29, 1626 17.81, 17.6, 17.6, 17.6, 17.6, 17.6, 17.7, 17.8, 17.9, 18.0}; 1627 1628 const G4double kmPtotData[30] = { 1629 1997.0, 1681.41, 1586.74, 1428.95, 1239.59, 987.12, 671.54, 377.85, 247.30, 75.54, 1630 71.08, 54.74, 44.08, 44.38, 45.45, 45.07, 41.04, 35.75, 33.22, 30.08, 1631 27.61, 26.5, 25.2, 24.0, 23.4, 22.8, 22.0, 21.3, 21.0, 20.9}; 1632 1633 const G4double kmNtotData[30] = { 1634 6.15, 6.93, 7.16, 7.55, 8.02, 8.65, 9.43, 10.36, 11.34, 12.64, 1635 14.01, 16.45, 19.32, 23.0, 27.6, 30.92, 29.78, 28.28, 25.62, 23.1, 1636 22.31, 21.9, 21.73, 21.94, 21.23, 20.5, 20.4, 20.2, 20.1, 20.0}; 1637 1638 const G4double lPtotData[30] = { 1639 300.0, 249.07, 233.8, 208.33, 177.78, 137.04, 86.11, 41.41, 28.86, 12.35, 1640 13.82, 16.76, 20.68, 25.9, 30.37, 31.56, 32.83, 34.5, 34.91, 35.11, 1641 35.03, 36.06, 35.13, 35.01, 35.0, 35.0, 35.0, 35.0, 35.0, 35.0}; 1642 1643 const G4double spPtotData[30] = { 1644 150.0, 146.0, 144.8, 142.8, 140.4, 137.2, 133.2, 127.6, 120.0, 110.0, 1645 98.06, 84.16, 72.28, 56.58, 43.22, 40.44, 36.14, 30.48, 31.53, 31.92, 1646 29.25, 28.37, 29.81, 33.15, 33.95, 34.0, 34.0, 34.0, 34.0, 34.0}; 1647 1648 const G4double smPtotData[30] = { 1649 937.0, 788.14, 743.48, 669.05, 579.74, 460.65, 311.79, 183.33, 153.65, 114.6, 1650 105.18, 89.54, 70.58, 45.5, 32.17, 32.54, 32.95, 33.49, 33.55, 33.87, 1651 34.02, 34.29, 33.93, 33.88, 34.0, 34.0, 34.0, 34.0, 34.0, 34.0}; 1652 1653 const G4double xi0PtotData[30] = { 1654 16.0, 14.72, 14.34, 13.7, 12.93, 11.9, 10.62, 9.29, 8.3, 7.0, 1655 7.96, 9.56, 11.48, 14.04, 19.22, 25.29, 29.4, 34.8, 34.32, 33.33, 1656 31.89, 29.55, 27.89, 21.43, 17.0, 16.0, 16.0, 16.0, 16.0, 16.0}; 1657 1658 const G4double ximPtotData[30] = { 1659 33.0, 32.5, 32.35, 32.1, 31.8, 31.4, 30.9, 30.2, 29.25, 28.0, 1660 26.5, 24.6, 22.8, 20.78, 18.22, 19.95, 21.7, 24.0, 24.74, 25.95, 1661 27.59, 27.54, 23.16, 17.43, 12.94, 12.0, 12.0, 12.0, 12.0, 12.0}; 1662 1663 for (G4int i = 0; i < 30; i++) { 1664 PPtot[i] = PPtotData[i]; 1665 NPtot[i] = NPtotData[i]; 1666 pipPtot[i] = pipPtotData[i]; 1667 pimPtot[i] = pimPtotData[i]; 1668 pizPtot[i] = pizPtotData[i]; 1669 kpPtot[i] = kpPtotData[i]; 1670 kpNtot[i] = kpNtotData[i]; 1671 kmPtot[i] = kmPtotData[i]; 1672 kmNtot[i] = kmNtotData[i]; 1673 lPtot[i] = lPtotData[i]; 1674 spPtot[i] = spPtotData[i]; 1675 smPtot[i] = smPtotData[i]; 1676 xi0Ptot[i] = xi0PtotData[i]; 1677 ximPtot[i] = ximPtotData[i]; 1678 } 1679 1680 }
Note:
See TracChangeset
for help on using the changeset viewer.
