Geant4 Cross Reference |
1 // 1 // 2 // ******************************************* 2 // ******************************************************************** 3 // * License and Disclaimer 3 // * License and Disclaimer * 4 // * 4 // * * 5 // * The Geant4 software is copyright of th 5 // * The Geant4 software is copyright of the Copyright Holders of * 6 // * the Geant4 Collaboration. It is provided 6 // * the Geant4 Collaboration. It is provided under the terms and * 7 // * conditions of the Geant4 Software License 7 // * conditions of the Geant4 Software License, included in the file * 8 // * LICENSE and available at http://cern.ch/ 8 // * LICENSE and available at http://cern.ch/geant4/license . These * 9 // * include a list of copyright holders. 9 // * include a list of copyright holders. * 10 // * 10 // * * 11 // * Neither the authors of this software syst 11 // * Neither the authors of this software system, nor their employing * 12 // * institutes,nor the agencies providing fin 12 // * institutes,nor the agencies providing financial support for this * 13 // * work make any representation or warran 13 // * work make any representation or warranty, express or implied, * 14 // * regarding this software system or assum 14 // * regarding this software system or assume any liability for its * 15 // * use. Please see the license in the file 15 // * use. Please see the license in the file LICENSE and URL above * 16 // * for the full disclaimer and the limitatio 16 // * for the full disclaimer and the limitation of liability. * 17 // * 17 // * * 18 // * This code implementation is the result 18 // * This code implementation is the result of the scientific and * 19 // * technical work of the GEANT4 collaboratio 19 // * technical work of the GEANT4 collaboration. * 20 // * By using, copying, modifying or distri 20 // * By using, copying, modifying or distributing the software (or * 21 // * any work based on the software) you ag 21 // * any work based on the software) you agree to acknowledge its * 22 // * use in resulting scientific publicati 22 // * use in resulting scientific publications, and indicate your * 23 // * acceptance of all terms of the Geant4 Sof 23 // * acceptance of all terms of the Geant4 Software license. * 24 // ******************************************* 24 // ******************************************************************** 25 // 25 // >> 26 // >> 27 // $Id: G4ExcitedMesonConstructor.cc,v 1.23 2010-10-01 02:41:44 kurasige Exp $ >> 28 // GEANT4 tag $Name: not supported by cvs2svn $ >> 29 // >> 30 // 26 // ------------------------------------------- 31 // -------------------------------------------------------------- 27 // GEANT 4 class implementation file << 32 // GEANT 4 class implementation file 28 // History: first implementation, based o 33 // History: first implementation, based on object model of 29 // 10 oct 1998 H.Kurashige 34 // 10 oct 1998 H.Kurashige 30 // ------------------------------------------- 35 // --------------------------------------------------------------- 31 // 01 Oct. 02 Fixed PDG codes for a0(1450), 36 // 01 Oct. 02 Fixed PDG codes for a0(1450), f0(1370), k0_star(1430) 32 // << 33 // Update mass and width following PDG 2023 << 34 37 35 #include "G4ExcitedMesonConstructor.hh" 38 #include "G4ExcitedMesonConstructor.hh" 36 39 37 #include "G4DecayTable.hh" << 40 #include "G4ParticleDefinition.hh" 38 #include "G4ExcitedMesons.hh" << 39 #include "G4ParticleTable.hh" 41 #include "G4ParticleTable.hh" >> 42 #include "G4ShortLivedTable.hh" 40 #include "G4PhaseSpaceDecayChannel.hh" 43 #include "G4PhaseSpaceDecayChannel.hh" 41 #include "G4SystemOfUnits.hh" << 42 #include "G4VDecayChannel.hh" 44 #include "G4VDecayChannel.hh" >> 45 #include "G4DecayTable.hh" 43 46 44 G4ExcitedMesonConstructor::G4ExcitedMesonConst << 47 >> 48 G4ExcitedMesonConstructor::G4ExcitedMesonConstructor(G4int , >> 49 G4int ) >> 50 : type("meson"), leptonNumber(0), baryonNumber(0) >> 51 { >> 52 } >> 53 >> 54 G4ExcitedMesonConstructor::~G4ExcitedMesonConstructor() >> 55 { >> 56 } 45 57 46 void G4ExcitedMesonConstructor::Construct(G4in 58 void G4ExcitedMesonConstructor::Construct(G4int idx) 47 { 59 { 48 G4int iType; 60 G4int iType; 49 if (idx < 0) { << 61 if (idx < 0 ) { 50 for (G4int state = 0; state < NMultiplets; << 62 for (G4int state=0; state< NMultiplets; state +=1) { 51 for (iType = 0; iType < NMesonTypes; iTy << 63 for (iType = 0; iType < NMesonTypes ; iType++) 52 ConstructMesons(state, iType); << 64 ConstructMesons(state, iType); 53 } << 65 } 54 } << 66 } else if (idx < NMultiplets ) { 55 else if (idx < NMultiplets) { << 67 for (iType = 0; iType < NMesonTypes ; iType++) 56 for (iType = 0; iType < NMesonTypes; iType << 68 ConstructMesons(idx, iType); 57 ConstructMesons(idx, iType); << 69 } else { 58 } << 59 else { << 60 #ifdef G4VERBOSE 70 #ifdef G4VERBOSE 61 if (G4ParticleTable::GetParticleTable()->G << 71 if (G4ParticleTable::GetParticleTable()->GetVerboseLevel()>1) { 62 G4cerr << "G4ExcitedMesonConstructor::Co 72 G4cerr << "G4ExcitedMesonConstructor::Construct()"; 63 G4cerr << " illegal index os state = " 73 G4cerr << " illegal index os state = " << idx << G4endl; 64 } 74 } 65 #endif 75 #endif 66 } 76 } 67 } 77 } 68 78 69 G4bool G4ExcitedMesonConstructor::Exist(G4int 79 G4bool G4ExcitedMesonConstructor::Exist(G4int idxState, G4int idxType) 70 { 80 { 71 G4bool value = true; 81 G4bool value = true; 72 if (idxType == TEtaPrime) { << 82 if ( idxType == TEtaPrime ) { 73 if (idxState == N13P0) value = false; << 83 if (idxState==N13P0) value = false; 74 if (idxState == N13D1) value = false; << 84 if (idxState==N13D1) value = false; 75 } << 85 } else if ( idxType == TPi ) { 76 else if (idxType == TPi) { << 86 if (idxState==N23P2) value = false; 77 if (idxState == N23P2) value = false; << 78 } 87 } 79 return value; 88 return value; 80 } 89 } 81 90 >> 91 #include "G4ExcitedMesons.hh" >> 92 82 void G4ExcitedMesonConstructor::ConstructMeson 93 void G4ExcitedMesonConstructor::ConstructMesons(G4int iState, G4int iType) 83 { 94 { 84 if (!Exist(iState, iType)) return; << 95 if (!Exist(iState, iType) ) return; 85 96 86 // Construct Resonace particles as dynami 97 // Construct Resonace particles as dynamic object 87 // Arguments for constructor are as follo 98 // Arguments for constructor are as follows 88 // name mass << 99 // name mass width 89 // charge 2*spin << 100 // charge 2*spin 90 // parity C-conjugation 101 // parity C-conjugation 91 // 2*Isospin 2*Isospin3 << 102 // 2*Isospin 2*Isospin3 92 // G-parity 103 // G-parity 93 // type lepton number Bary << 104 // type lepton number Baryon number 94 // PDG encoding 105 // PDG encoding 95 // stable lifetime de << 106 // stable lifetime decay table 96 << 107 >> 108 97 G4String aName; 109 G4String aName; 98 G4ExcitedMesons* particle; 110 G4ExcitedMesons* particle; 99 << 111 100 for (G4int iIso3 = (-1) * iIsoSpin[iType]; i << 112 for ( G4int iIso3=(-1)*iIsoSpin[iType]; iIso3<=iIsoSpin[iType]; iIso3+=2) { 101 aName = GetName(iIso3, iState, iType); << 113 aName= GetName(iIso3, iState, iType); 102 G4double fmass = mass[iState][iType]; << 114 G4double fmass = mass[iState][iType]; 103 G4double fwidth = width[iState][iType]; 115 G4double fwidth = width[iState][iType]; 104 if ((iType == TK) || (iType == TAntiK)) { << 116 if ( (iType== TK) || (iType==TAntiK ) ) { 105 if (GetCharge(iIso3, iType) == 0.0) { << 117 if ( GetCharge(iIso3,iType) == 0.0) { 106 fmass += massKdiff[iState]; << 118 fmass += massKdiff[iState]; 107 fwidth += widthKdiff[iState]; << 119 fwidth += widthKdiff[iState]; 108 } 120 } 109 } << 121 } 110 << 122 particle = new G4ExcitedMesons( 111 // clang-format off << 123 aName, fmass, fwidth, 112 particle = new G4ExcitedMesons( << 113 aName, fmass, fwidth, << 114 GetCharge(iIso3,iType), i 124 GetCharge(iIso3,iType), iSpin[iState], 115 iParity[iState], iChargeConjugation[i 125 iParity[iState], iChargeConjugation[iState], 116 iIsoSpin[iType], << 126 iIsoSpin[iType], iIso3, 117 iGParity[iState][iType], 127 iGParity[iState][iType], 118 type, leptonNumb << 128 type, leptonNumber, baryonNumber, 119 GetEncoding(iIso3, iState, iType), 129 GetEncoding(iIso3, iState, iType), 120 false, 0 << 130 false, 0.0, NULL 121 ); 131 ); 122 // clang-format on << 123 132 124 if ((iType == TEta) || (iType == TEtaPrime << 133 if ( (iType==TEta) || (iType==TEtaPrime) || ((iType==TPi)&&(iIso3==0)) ) { 125 // set same encoding for AntiParticle << 134 // set same encoding for AntiParticle 126 particle->SetAntiPDGEncoding(GetEncoding 135 particle->SetAntiPDGEncoding(GetEncoding(iIso3, iState, iType)); 127 } 136 } 128 particle->SetMultipletName(name[iState][iT 137 particle->SetMultipletName(name[iState][iType]); 129 particle->SetDecayTable(CreateDecayTable(a << 138 particle->SetDecayTable(CreateDecayTable( aName, iIso3, iState, iType)); 130 } 139 } 131 } 140 } 132 141 133 G4int G4ExcitedMesonConstructor::GetQuarkConte << 142 >> 143 G4int G4ExcitedMesonConstructor::GetQuarkContents(G4int iQ, >> 144 G4int iIso3, >> 145 G4int iType) 134 { 146 { 135 // Quark contents 147 // Quark contents 136 148 137 G4int quark = 0; << 149 G4int quark=0; 138 if (iType == TPi) { 150 if (iType == TPi) { 139 if (iIso3 == 2) { << 151 if ( iIso3 == 2 ){ 140 if (iQ == 0) { << 152 if ( iQ == 0 ){ quark = 2; } 141 quark = 2; << 153 else { quark = 1; } 142 } << 154 } else if ( iIso3 == 0 ){ 143 else { << 144 quark = 1; << 145 } << 146 } << 147 else if (iIso3 == 0) { << 148 quark = 1; 155 quark = 1; >> 156 } else if ( iIso3 == -2 ){ >> 157 if ( iQ == 0 ){ quark = 1; } >> 158 else { quark = 2; } 149 } 159 } 150 else if (iIso3 == -2) { << 160 } else if (iType == TEta) { 151 if (iQ == 0) { << 152 quark = 1; << 153 } << 154 else { << 155 quark = 2; << 156 } << 157 } << 158 } << 159 else if (iType == TEta) { << 160 quark = 2; 161 quark = 2; 161 } << 162 162 else if (iType == TEtaPrime) { << 163 } else if (iType == TEtaPrime) { 163 quark = 3; 164 quark = 3; 164 } << 165 165 else if (iType == TAntiK) { << 166 } else if (iType == TAntiK) { 166 if (iIso3 == 1) { << 167 if ( iIso3 == 1 ){ 167 if (iQ == 0) { << 168 if ( iQ == 0 ){ quark = 3; } 168 quark = 3; << 169 else { quark = 1; } 169 } << 170 } else if ( iIso3 == -1 ){ 170 else { << 171 if ( iQ == 0 ){ quark = 3; } 171 quark = 1; << 172 else { quark = 2; } 172 } << 173 } 173 } << 174 174 else if (iIso3 == -1) { << 175 } else if (iType == TK) { 175 if (iQ == 0) { << 176 if ( iIso3 == 1 ){ 176 quark = 3; << 177 if ( iQ == 0 ){ quark = 2; } 177 } << 178 else { quark = 3; } 178 else { << 179 } else if ( iIso3 == -1 ){ 179 quark = 2; << 180 if ( iQ == 0 ){ quark = 1; } 180 } << 181 else { quark = 3; } 181 } << 182 } << 183 else if (iType == TK) { << 184 if (iIso3 == 1) { << 185 if (iQ == 0) { << 186 quark = 2; << 187 } << 188 else { << 189 quark = 3; << 190 } << 191 } << 192 else if (iIso3 == -1) { << 193 if (iQ == 0) { << 194 quark = 1; << 195 } << 196 else { << 197 quark = 3; << 198 } << 199 } 182 } >> 183 200 } 184 } 201 return quark; 185 return quark; 202 } 186 } 203 187 204 G4double G4ExcitedMesonConstructor::GetCharge( << 188 G4double G4ExcitedMesonConstructor::GetCharge(G4int iIsoSpin3, G4int idxType ) 205 { 189 { 206 // clang-format off << 190 static G4double quark_charge[7] = 207 static const G4double quark_charge[7] = << 208 { 191 { 209 0., -1./3., +2./3., -1./3., +2./3., -1./3. 192 0., -1./3., +2./3., -1./3., +2./3., -1./3., +2./3. 210 }; 193 }; 211 // clang-format on << 194 212 << 195 G4double charge = quark_charge[GetQuarkContents(0, iIsoSpin3, idxType)]*eplus; 213 G4double charge = quark_charge[GetQuarkConte << 196 charge -= quark_charge[GetQuarkContents(1, iIsoSpin3, idxType)]*eplus; 214 charge -= quark_charge[GetQuarkContents(1, i << 215 return charge; 197 return charge; 216 } 198 } 217 199 218 G4int G4ExcitedMesonConstructor::GetEncoding(G << 200 G4int G4ExcitedMesonConstructor::GetEncoding(G4int iIsoSpin3, >> 201 G4int idxState, >> 202 G4int idxType ) 219 { 203 { 220 G4int encoding = encodingOffset[idxState]; 204 G4int encoding = encodingOffset[idxState]; 221 encoding += iSpin[idxState] + 1; << 205 encoding += iSpin[idxState] +1; 222 G4int iQ = 0; 206 G4int iQ = 0; 223 G4int iQbar = 1; 207 G4int iQbar = 1; 224 208 225 if (idxType == TPi) { << 209 if ( idxType == TPi ) { 226 if (iIsoSpin3 < 0) { << 210 if (iIsoSpin3<0) { 227 iQ = 1; 211 iQ = 1; 228 iQbar = 0; << 212 iQbar = 0; 229 } 213 } 230 } << 214 } else if ( idxType == TK ) { 231 else if (idxType == TK) { << 232 iQ = 1; 215 iQ = 1; 233 iQbar = 0; << 216 iQbar = 0; 234 } 217 } 235 218 236 encoding += 100 * GetQuarkContents(iQ, iIsoS << 219 237 encoding += 10 * GetQuarkContents(iQbar, iIs << 220 encoding += 100*GetQuarkContents(iQ, iIsoSpin3, idxType); 238 if (idxType == TPi) { << 221 encoding += 10*GetQuarkContents(iQbar, iIsoSpin3, idxType); 239 if (iIsoSpin3 < 0) { << 222 if ( idxType == TPi ) { 240 encoding *= -1; << 223 if (iIsoSpin3<0) { >> 224 encoding *= -1; 241 } 225 } 242 } << 226 } else if ( idxType == TAntiK ) { 243 else if (idxType == TAntiK) { << 227 encoding *= -1; 244 encoding *= -1; << 245 } 228 } 246 229 247 // PDG2005 << 230 // PDG2005 248 // << 231 // 249 if (idxState == 9) { << 232 if (idxState == 9 ) { 250 if (idxType == TEta) { 233 if (idxType == TEta) { 251 // f2(1810) 9030225 << 234 // f2(1810) 9030225 252 encoding = 9030225; 235 encoding = 9030225; 253 } << 236 } else if (idxType == TEtaPrime) { 254 else if (idxType == TEtaPrime) { << 237 // f2(2010) 9060225 255 // f2(2010) 9060225 << 256 encoding = 9060225; 238 encoding = 9060225; 257 } 239 } 258 } 240 } 259 241 260 // PDG2013 << 261 if (idxState == 1) { << 262 if (idxType == TEta) { << 263 // f0(1370) 30221 << 264 encoding = 30221; << 265 } << 266 } << 267 return encoding; 242 return encoding; 268 } 243 } 269 244 270 G4DecayTable* G4ExcitedMesonConstructor::Creat << 245 G4DecayTable* G4ExcitedMesonConstructor::CreateDecayTable( 271 << 246 const G4String& parentName, >> 247 G4int iIso3, >> 248 G4int iState, >> 249 G4int iType) 272 { 250 { 273 // create decay table << 251 // create decay table 274 auto decayTable = new G4DecayTable(); << 252 G4DecayTable* decayTable = new G4DecayTable(); 275 G4double br; 253 G4double br; 276 << 254 277 if ((iType == TK) || (iType == TAntiK)) { << 255 if ((iType==TK)||(iType==TAntiK)) { 278 if ((br = bRatio[iState][iType][MKPi]) > 0 << 256 279 AddKPiMode(decayTable, parentName, br, i << 257 if ( (br=bRatio[iState][iType][MKPi]) >0.0) { 280 } << 258 AddKPiMode( decayTable, parentName, br, iIso3, iType ); 281 if ((br = bRatio[iState][iType][MKStarPi]) << 282 AddKStarPiMode(decayTable, parentName, b << 283 } 259 } 284 if ((br = bRatio[iState][iType][MKRho]) > << 260 if ( (br=bRatio[iState][iType][MKStarPi]) >0.0) { 285 AddKRhoMode(decayTable, parentName, br, << 261 AddKStarPiMode( decayTable, parentName, br, iIso3, iType ); 286 } 262 } 287 if ((br = bRatio[iState][iType][MKOmega]) << 263 if ( (br=bRatio[iState][iType][MKRho]) >0.0) { 288 AddKOmegaMode(decayTable, parentName, br << 264 AddKRhoMode( decayTable, parentName, br, iIso3, iType ); 289 } 265 } 290 if ((br = bRatio[iState][iType][MKStar2Pi] << 266 if ( (br=bRatio[iState][iType][MKOmega]) >0.0) { 291 AddKStar2PiMode(decayTable, parentName, << 267 AddKOmegaMode( decayTable, parentName, br, iIso3, iType ); 292 } 268 } 293 if ((br = bRatio[iState][iType][MKTwoPi]) << 269 if ( (br=bRatio[iState][iType][MKStar2Pi]) >0.0) { 294 AddKTwoPiMode(decayTable, parentName, br << 270 AddKStar2PiMode( decayTable, parentName, br, iIso3, iType ); 295 } 271 } 296 if ((br = bRatio[iState][iType][MKEta]) > << 272 if ( (br=bRatio[iState][iType][MKTwoPi]) >0.0) { 297 AddKEtaMode(decayTable, parentName, br, << 273 AddKTwoPiMode( decayTable, parentName, br, iIso3, iType ); 298 } 274 } 299 } << 275 if ( (br=bRatio[iState][iType][MKEta]) >0.0) { 300 else { << 276 AddKEtaMode( decayTable, parentName, br, iIso3, iType ); 301 if ((br = bRatio[iState][iType][MPiGamma]) << 302 AddPiGammaMode(decayTable, parentName, b << 303 } 277 } 304 if ((br = bRatio[iState][iType][MRhoGamma] << 278 305 AddRhoGammaMode(decayTable, parentName, << 279 } else { >> 280 if ( (br=bRatio[iState][iType][MPiGamma]) >0.0) { >> 281 AddPiGammaMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] ); 306 } 282 } 307 if ((br = bRatio[iState][iType][M2Pi]) > 0 << 283 if ( (br=bRatio[iState][iType][MRhoGamma]) >0.0) { 308 Add2PiMode(decayTable, parentName, br, i << 284 AddRhoGammaMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] ); 309 } 285 } 310 if ((br = bRatio[iState][iType][MPiRho]) > << 286 if ( (br=bRatio[iState][iType][M2Pi]) >0.0) { 311 AddPiRhoMode(decayTable, parentName, br, << 287 Add2PiMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] ); 312 } 288 } 313 if ((br = bRatio[iState][iType][MPiEta]) > << 289 if ( (br=bRatio[iState][iType][MPiRho]) >0.0) { 314 AddPiEtaMode(decayTable, parentName, br, << 290 AddPiRhoMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] ); 315 } 291 } 316 if ((br = bRatio[iState][iType][M3Pi]) > 0 << 292 if ( (br=bRatio[iState][iType][M3Pi]) >0.0) { 317 Add3PiMode(decayTable, parentName, br, i << 293 Add3PiMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] ); 318 } 294 } 319 if ((br = bRatio[iState][iType][M4Pi]) > 0 << 295 if ( (br=bRatio[iState][iType][M4Pi]) >0.0) { 320 Add4PiMode(decayTable, parentName, br, i << 296 Add4PiMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] ); 321 } 297 } 322 if ((br = bRatio[iState][iType][MKKStar]) << 298 if ( (br=bRatio[iState][iType][MKKStar]) >0.0) { 323 AddKKStarMode(decayTable, parentName, br << 299 AddKKStarMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] ); 324 } 300 } 325 if ((br = bRatio[iState][iType][M2PiEta]) << 301 if ( (br=bRatio[iState][iType][M2PiEta]) >0.0) { 326 Add2PiEtaMode(decayTable, parentName, br << 302 Add2PiEtaMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] ); 327 } 303 } 328 if ((br = bRatio[iState][iType][MRhoEta]) << 304 if ( (br=bRatio[iState][iType][MRhoEta]) >0.0) { 329 AddRhoEtaMode(decayTable, parentName, br << 305 AddRhoEtaMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] ); 330 } 306 } 331 if ((br = bRatio[iState][iType][M2PiRho]) << 307 if ( (br=bRatio[iState][iType][M2PiRho]) >0.0) { 332 Add2PiRhoMode(decayTable, parentName, br << 308 Add2PiRhoMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] ); 333 } 309 } 334 if ((br = bRatio[iState][iType][M2PiOmega] << 310 if ( (br=bRatio[iState][iType][M2PiOmega]) >0.0) { 335 Add2PiOmegaMode(decayTable, parentName, << 311 Add2PiOmegaMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] ); 336 } 312 } 337 if ((br = bRatio[iState][iType][M2Eta]) > << 313 if ( (br=bRatio[iState][iType][M2Eta]) >0.0) { 338 Add2EtaMode(decayTable, parentName, br, << 314 Add2EtaMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] ); 339 } 315 } 340 if ((br = bRatio[iState][iType][M2K]) > 0. << 316 if ( (br=bRatio[iState][iType][M2K]) >0.0) { 341 Add2KMode(decayTable, parentName, br, iI << 317 Add2KMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] ); 342 } 318 } 343 if ((br = bRatio[iState][iType][M2KPi]) > << 319 if ( (br=bRatio[iState][iType][M2KPi]) >0.0) { 344 Add2KPiMode(decayTable, parentName, br, << 320 Add2KPiMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] ); 345 } 321 } 346 if ((br = bRatio[iState][iType][MPiOmega]) << 322 if ( (br=bRatio[iState][iType][MPiOmega]) >0.0) { 347 AddPiOmegaMode(decayTable, parentName, b << 323 AddPiOmegaMode( decayTable, parentName, br, iIso3, iIsoSpin[iType] ); 348 } 324 } 349 if ((br = bRatio[iState][iType][MPiF2]) > << 325 if ( (br=bRatio[iState][iType][MPiF2]) >0.0) { 350 AddPiF2Mode(decayTable, parentName, br, << 326 AddPiF2Mode( decayTable, parentName, br, iIso3, iIsoSpin[iType] ); 351 } 327 } 352 if ((br = bRatio[iState][iType][MPiF0]) > << 328 if ( (br=bRatio[iState][iType][MPiF0]) >0.0) { 353 AddPiF0Mode(decayTable, parentName, br, << 329 AddPiF0Mode( decayTable, parentName, br, iIso3, iIsoSpin[iType] ); 354 } 330 } 355 if ((br = bRatio[iState][iType][MPiA2]) > << 331 if ( (br=bRatio[iState][iType][MPiA2]) >0.0) { 356 AddPiA2Mode(decayTable, parentName, br, << 332 AddPiA2Mode( decayTable, parentName, br, iIso3, iIsoSpin[iType] ); 357 } 333 } 358 } 334 } 359 335 360 return decayTable; 336 return decayTable; 361 } 337 } 362 338 363 G4DecayTable* G4ExcitedMesonConstructor::AddKP << 339 G4DecayTable* G4ExcitedMesonConstructor::AddKPiMode( 364 << 340 G4DecayTable* decayTable, const G4String& nameParent, 365 << 341 G4double br, G4int iIso3, G4int iType) 366 { 342 { 367 G4VDecayChannel* mode; 343 G4VDecayChannel* mode; 368 // << 344 // 369 if (iIso3 == +1) { 345 if (iIso3 == +1) { 370 if (iType == TK) { << 346 if (iType == TK) { 371 mode = new G4PhaseSpaceDecayChannel(name << 347 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2, >> 348 "kaon+","pi0"); 372 decayTable->Insert(mode); 349 decayTable->Insert(mode); 373 mode = new G4PhaseSpaceDecayChannel(name << 350 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2, >> 351 "kaon0","pi+"); 374 decayTable->Insert(mode); 352 decayTable->Insert(mode); 375 } << 353 }else if (iType==TAntiK) { 376 else if (iType == TAntiK) { << 354 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2, 377 mode = new G4PhaseSpaceDecayChannel(name << 355 "anti_kaon0","pi0"); 378 decayTable->Insert(mode); 356 decayTable->Insert(mode); 379 mode = new G4PhaseSpaceDecayChannel(name << 357 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2, >> 358 "kaon-","pi+"); 380 decayTable->Insert(mode); 359 decayTable->Insert(mode); 381 } << 360 } 382 } << 361 } else if (iIso3 == -1) { 383 else if (iIso3 == -1) { << 362 if (iType == TK) { 384 if (iType == TK) { << 363 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2, 385 mode = new G4PhaseSpaceDecayChannel(name << 364 "kaon0","pi0"); 386 decayTable->Insert(mode); 365 decayTable->Insert(mode); 387 mode = new G4PhaseSpaceDecayChannel(name << 366 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2, >> 367 "kaon+","pi-"); 388 decayTable->Insert(mode); 368 decayTable->Insert(mode); 389 } << 369 390 else if (iType == TAntiK) { << 370 }else if (iType==TAntiK) { 391 mode = new G4PhaseSpaceDecayChannel(name << 371 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2, >> 372 "kaon-","pi0"); 392 decayTable->Insert(mode); 373 decayTable->Insert(mode); 393 mode = new G4PhaseSpaceDecayChannel(name << 374 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2, >> 375 "anti_kaon0","pi-"); 394 decayTable->Insert(mode); 376 decayTable->Insert(mode); 395 } 377 } 396 } 378 } 397 379 398 return decayTable; 380 return decayTable; 399 } 381 } 400 G4DecayTable* G4ExcitedMesonConstructor::AddKT << 382 G4DecayTable* G4ExcitedMesonConstructor::AddKTwoPiMode( 401 << 383 G4DecayTable* decayTable, const G4String& nameParent, 402 << 384 G4double br, G4int iIso3, G4int iType) 403 { 385 { 404 G4VDecayChannel* mode; 386 G4VDecayChannel* mode; 405 // << 387 // 406 if (iIso3 == +1) { 388 if (iIso3 == +1) { 407 if (iType == TK) { << 389 if (iType == TK) { 408 mode = new G4PhaseSpaceDecayChannel(name << 390 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2, >> 391 "k2_star(1430)+","pi0"); 409 decayTable->Insert(mode); 392 decayTable->Insert(mode); 410 mode = new G4PhaseSpaceDecayChannel(name << 393 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2, >> 394 "k2_star(1430)0","pi+"); 411 decayTable->Insert(mode); 395 decayTable->Insert(mode); 412 } << 396 }else if (iType==TAntiK) { 413 else if (iType == TAntiK) { << 397 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2, 414 mode = new G4PhaseSpaceDecayChannel(name << 398 "anti_k2_star(1430)0","pi0"); 415 decayTable->Insert(mode); 399 decayTable->Insert(mode); 416 mode = new G4PhaseSpaceDecayChannel(name << 400 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2, >> 401 "k2_star(1430)-","pi+"); 417 decayTable->Insert(mode); 402 decayTable->Insert(mode); 418 } << 403 } 419 } << 404 } else if (iIso3 == -1) { 420 else if (iIso3 == -1) { << 405 if (iType == TK) { 421 if (iType == TK) { << 406 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2, 422 mode = new G4PhaseSpaceDecayChannel(name << 407 "k2_star(1430)0","pi0"); 423 decayTable->Insert(mode); 408 decayTable->Insert(mode); 424 mode = new G4PhaseSpaceDecayChannel(name << 409 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2, >> 410 "k2_star(1430)+","pi-"); 425 decayTable->Insert(mode); 411 decayTable->Insert(mode); 426 } << 412 427 else if (iType == TAntiK) { << 413 }else if (iType==TAntiK) { 428 mode = new G4PhaseSpaceDecayChannel(name << 414 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2, >> 415 "k2_star(1430)-","pi0"); 429 decayTable->Insert(mode); 416 decayTable->Insert(mode); 430 mode = << 417 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2, 431 new G4PhaseSpaceDecayChannel(nameParen << 418 "anti_k2_star(1430)0","pi-"); 432 decayTable->Insert(mode); 419 decayTable->Insert(mode); 433 } 420 } 434 } 421 } 435 422 436 return decayTable; 423 return decayTable; 437 } 424 } 438 425 439 G4DecayTable* G4ExcitedMesonConstructor::AddKO << 426 G4DecayTable* G4ExcitedMesonConstructor::AddKOmegaMode( 440 << 427 G4DecayTable* decayTable, const G4String& nameParent, 441 << 428 G4double br, G4int iIso3, G4int iType) 442 { 429 { 443 G4VDecayChannel* mode; 430 G4VDecayChannel* mode; 444 // << 431 // 445 if (iIso3 == +1) { 432 if (iIso3 == +1) { 446 if (iType == TK) { << 433 if (iType == TK) { 447 mode = new G4PhaseSpaceDecayChannel(name << 434 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2, >> 435 "kaon+","omega"); 448 decayTable->Insert(mode); 436 decayTable->Insert(mode); 449 } << 437 }else if (iType==TAntiK) { 450 else if (iType == TAntiK) { << 438 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2, 451 mode = new G4PhaseSpaceDecayChannel(name << 439 "anti_kaon0","omega"); 452 decayTable->Insert(mode); 440 decayTable->Insert(mode); 453 } << 441 } 454 } << 442 } else if (iIso3 == -1) { 455 else if (iIso3 == -1) { << 443 if (iType == TK) { 456 if (iType == TK) { << 444 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2, 457 mode = new G4PhaseSpaceDecayChannel(name << 445 "kaon0","omega"); 458 decayTable->Insert(mode); 446 decayTable->Insert(mode); 459 } << 447 }else if (iType==TAntiK) { 460 else if (iType == TAntiK) { << 448 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2, 461 mode = new G4PhaseSpaceDecayChannel(name << 449 "kaon-","omega"); 462 decayTable->Insert(mode); 450 decayTable->Insert(mode); 463 } 451 } 464 } 452 } 465 453 466 return decayTable; 454 return decayTable; 467 } 455 } 468 456 469 G4DecayTable* G4ExcitedMesonConstructor::AddKE << 457 G4DecayTable* G4ExcitedMesonConstructor::AddKEtaMode( 470 << 458 G4DecayTable* decayTable, const G4String& nameParent, 471 << 459 G4double br, G4int iIso3, G4int iType) 472 { 460 { 473 G4VDecayChannel* mode; 461 G4VDecayChannel* mode; 474 // << 462 // 475 if (iIso3 == +1) { 463 if (iIso3 == +1) { 476 if (iType == TK) { << 464 if (iType == TK) { 477 mode = new G4PhaseSpaceDecayChannel(name << 465 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2, >> 466 "kaon+","eta"); 478 decayTable->Insert(mode); 467 decayTable->Insert(mode); 479 } << 468 }else if (iType==TAntiK) { 480 else if (iType == TAntiK) { << 469 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2, 481 mode = new G4PhaseSpaceDecayChannel(name << 470 "anti_kaon0","eta"); 482 decayTable->Insert(mode); 471 decayTable->Insert(mode); 483 } << 472 } 484 } << 473 } else if (iIso3 == -1) { 485 else if (iIso3 == -1) { << 474 if (iType == TK) { 486 if (iType == TK) { << 475 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2, 487 mode = new G4PhaseSpaceDecayChannel(name << 476 "kaon0","eta"); 488 decayTable->Insert(mode); 477 decayTable->Insert(mode); 489 } << 478 }else if (iType==TAntiK) { 490 else if (iType == TAntiK) { << 479 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2, 491 mode = new G4PhaseSpaceDecayChannel(name << 480 "kaon-","eta"); 492 decayTable->Insert(mode); 481 decayTable->Insert(mode); 493 } 482 } 494 } 483 } 495 484 496 return decayTable; 485 return decayTable; 497 } 486 } 498 487 499 G4DecayTable* G4ExcitedMesonConstructor::AddKR << 488 G4DecayTable* G4ExcitedMesonConstructor::AddKRhoMode( 500 << 489 G4DecayTable* decayTable, const G4String& nameParent, 501 << 490 G4double br, G4int iIso3, G4int iType) 502 { 491 { 503 G4VDecayChannel* mode; 492 G4VDecayChannel* mode; 504 // << 493 // 505 if (iIso3 == +1) { 494 if (iIso3 == +1) { 506 if (iType == TK) { << 495 if (iType == TK) { 507 mode = new G4PhaseSpaceDecayChannel(name << 496 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2, >> 497 "kaon+","rho0"); 508 decayTable->Insert(mode); 498 decayTable->Insert(mode); 509 mode = new G4PhaseSpaceDecayChannel(name << 499 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2, >> 500 "kaon0","rho+"); 510 decayTable->Insert(mode); 501 decayTable->Insert(mode); 511 } << 502 }else if (iType==TAntiK) { 512 else if (iType == TAntiK) { << 503 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2, 513 mode = new G4PhaseSpaceDecayChannel(name << 504 "anti_kaon0","rho0"); 514 decayTable->Insert(mode); 505 decayTable->Insert(mode); 515 mode = new G4PhaseSpaceDecayChannel(name << 506 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2, >> 507 "kaon-","rho+"); 516 decayTable->Insert(mode); 508 decayTable->Insert(mode); 517 } << 509 } 518 } << 510 } else if (iIso3 == -1) { 519 else if (iIso3 == -1) { << 511 if (iType == TK) { 520 if (iType == TK) { << 512 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2, 521 mode = new G4PhaseSpaceDecayChannel(name << 513 "kaon0","rho0"); 522 decayTable->Insert(mode); 514 decayTable->Insert(mode); 523 mode = new G4PhaseSpaceDecayChannel(name << 515 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2, >> 516 "kaon+","rho-"); 524 decayTable->Insert(mode); 517 decayTable->Insert(mode); 525 } << 518 526 else if (iType == TAntiK) { << 519 }else if (iType==TAntiK) { 527 mode = new G4PhaseSpaceDecayChannel(name << 520 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2, >> 521 "kaon-","rho0"); 528 decayTable->Insert(mode); 522 decayTable->Insert(mode); 529 mode = new G4PhaseSpaceDecayChannel(name << 523 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2, >> 524 "anti_kaon0","rho-"); 530 decayTable->Insert(mode); 525 decayTable->Insert(mode); 531 } 526 } 532 } 527 } 533 528 534 return decayTable; 529 return decayTable; 535 } 530 } 536 531 537 G4DecayTable* G4ExcitedMesonConstructor::AddKS << 532 G4DecayTable* G4ExcitedMesonConstructor::AddKStarPiMode( 538 << 533 G4DecayTable* decayTable, const G4String& nameParent, 539 << 534 G4double br, G4int iIso3, G4int iType) 540 { 535 { 541 G4VDecayChannel* mode; 536 G4VDecayChannel* mode; 542 // << 537 // 543 if (iIso3 == +1) { 538 if (iIso3 == +1) { 544 if (iType == TK) { << 539 if (iType == TK) { 545 mode = new G4PhaseSpaceDecayChannel(name << 540 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2, >> 541 "k_star+","pi0"); 546 decayTable->Insert(mode); 542 decayTable->Insert(mode); 547 mode = new G4PhaseSpaceDecayChannel(name << 543 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2, >> 544 "k_star0","pi+"); 548 decayTable->Insert(mode); 545 decayTable->Insert(mode); 549 } << 546 }else if (iType==TAntiK) { 550 else if (iType == TAntiK) { << 547 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2, 551 mode = new G4PhaseSpaceDecayChannel(name << 548 "anti_k_star0","pi0"); 552 decayTable->Insert(mode); 549 decayTable->Insert(mode); 553 mode = new G4PhaseSpaceDecayChannel(name << 550 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2, >> 551 "k_star-","pi+"); 554 decayTable->Insert(mode); 552 decayTable->Insert(mode); 555 } << 553 } 556 } << 554 } else if (iIso3 == -1) { 557 else if (iIso3 == -1) { << 555 if (iType == TK) { 558 if (iType == TK) { << 556 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2, 559 mode = new G4PhaseSpaceDecayChannel(name << 557 "k_star0","pi0"); 560 decayTable->Insert(mode); 558 decayTable->Insert(mode); 561 mode = new G4PhaseSpaceDecayChannel(name << 559 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2, >> 560 "k_star+","pi-"); 562 decayTable->Insert(mode); 561 decayTable->Insert(mode); 563 } << 562 564 else if (iType == TAntiK) { << 563 }else if (iType==TAntiK) { 565 mode = new G4PhaseSpaceDecayChannel(name << 564 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 2, >> 565 "k_star-","pi0"); 566 decayTable->Insert(mode); 566 decayTable->Insert(mode); 567 mode = new G4PhaseSpaceDecayChannel(name << 567 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 2, >> 568 "anti_k_star0","pi-"); 568 decayTable->Insert(mode); 569 decayTable->Insert(mode); 569 } 570 } 570 } 571 } 571 572 572 return decayTable; 573 return decayTable; 573 } 574 } 574 575 575 G4DecayTable* G4ExcitedMesonConstructor::AddKS << 576 G4DecayTable* G4ExcitedMesonConstructor::AddKStar2PiMode( 576 << 577 G4DecayTable* decayTable, const G4String& nameParent, 577 << 578 G4double br, G4int iIso3, G4int iType) 578 { 579 { 579 // K* --> K pipi(I=1) 580 // K* --> K pipi(I=1) 580 G4VDecayChannel* mode; 581 G4VDecayChannel* mode; 581 // << 582 // 582 if (iIso3 == +1) { 583 if (iIso3 == +1) { 583 if (iType == TK) { << 584 if (iType == TK) { 584 mode = new G4PhaseSpaceDecayChannel(name << 585 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 3, >> 586 "k_star+","pi+","pi-"); 585 decayTable->Insert(mode); 587 decayTable->Insert(mode); 586 mode = new G4PhaseSpaceDecayChannel(name << 588 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 3, >> 589 "k_star0","pi+","pi0"); 587 decayTable->Insert(mode); 590 decayTable->Insert(mode); 588 } << 591 }else if (iType==TAntiK) { 589 else if (iType == TAntiK) { << 592 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 3, 590 mode = new G4PhaseSpaceDecayChannel(name << 593 "anti_k_star0","pi+","pi-"); 591 decayTable->Insert(mode); 594 decayTable->Insert(mode); 592 mode = new G4PhaseSpaceDecayChannel(name << 595 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 3, >> 596 "k_star-","pi+","pi0"); 593 decayTable->Insert(mode); 597 decayTable->Insert(mode); 594 } << 598 } 595 } << 599 } else if (iIso3 == -1) { 596 else if (iIso3 == -1) { << 600 if (iType == TK) { 597 if (iType == TK) { << 601 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 3, 598 mode = new G4PhaseSpaceDecayChannel(name << 602 "k_star0","pi+","pi-"); 599 decayTable->Insert(mode); 603 decayTable->Insert(mode); 600 mode = new G4PhaseSpaceDecayChannel(name << 604 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 3, >> 605 "k_star+","pi-","pi0"); 601 decayTable->Insert(mode); 606 decayTable->Insert(mode); 602 } << 607 603 else if (iType == TAntiK) { << 608 }else if (iType==TAntiK) { 604 mode = new G4PhaseSpaceDecayChannel(name << 609 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 3, >> 610 "k_star-","pi+","pi-"); 605 decayTable->Insert(mode); 611 decayTable->Insert(mode); 606 mode = << 612 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 3, 607 new G4PhaseSpaceDecayChannel(nameParen << 613 "anti_k_star0","pi-","pi0"); 608 decayTable->Insert(mode); 614 decayTable->Insert(mode); 609 } 615 } 610 } 616 } 611 617 612 return decayTable; 618 return decayTable; 613 } 619 } 614 620 615 G4DecayTable* G4ExcitedMesonConstructor::AddPi << 621 G4DecayTable* G4ExcitedMesonConstructor::AddPiGammaMode( 616 << 622 G4DecayTable* decayTable, const G4String& nameParent, 617 << 623 G4double br, G4int iIso3, G4int iIso) 618 { 624 { 619 if ((iIso != 2) && (iIso != 0)) return decay << 625 if ((iIso!=2)&&(iIso!=0)) return decayTable; 620 626 621 G4VDecayChannel* mode; 627 G4VDecayChannel* mode; 622 // << 628 // 623 G4String daughter; 629 G4String daughter; 624 if (iIso3 == +2) { << 630 if (iIso3 == +2) { 625 daughter = "pi+"; << 631 daughter = "pi+"; 626 } << 632 } else if (iIso3 == 0) { 627 else if (iIso3 == 0) { << 633 daughter = "pi0"; 628 daughter = "pi0"; << 634 } else if (iIso3 ==-2) { 629 } << 635 daughter = "pi-"; 630 else if (iIso3 == -2) { << 636 } else { 631 daughter = "pi-"; << 637 return decayTable; 632 } << 638 } 633 else { << 639 // create decay channel [parent BR #daughters] 634 return decayTable; << 640 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2, 635 } << 641 daughter,"gamma"); 636 // create decay channel [parent BR # << 637 mode = new G4PhaseSpaceDecayChannel(namePare << 638 // add decay table 642 // add decay table 639 decayTable->Insert(mode); 643 decayTable->Insert(mode); 640 644 641 return decayTable; 645 return decayTable; 642 } 646 } 643 647 644 G4DecayTable* G4ExcitedMesonConstructor::AddPi << 648 G4DecayTable* G4ExcitedMesonConstructor::AddPiOmegaMode( 645 << 649 G4DecayTable* decayTable, const G4String& nameParent, 646 << 650 G4double br, G4int iIso3, G4int iIso) 647 { 651 { 648 if ((iIso != 2) && (iIso != 0)) return decay << 652 if ((iIso!=2)&&(iIso!=0)) return decayTable; 649 653 650 G4VDecayChannel* mode; 654 G4VDecayChannel* mode; 651 // << 655 // 652 G4String daughter; 656 G4String daughter; 653 if (iIso3 == +2) { << 657 if (iIso3 == +2) { 654 daughter = "pi+"; << 658 daughter = "pi+"; 655 } << 659 } else if (iIso3 == 0) { 656 else if (iIso3 == 0) { << 660 daughter = "pi0"; 657 daughter = "pi0"; << 661 } else if (iIso3 ==-2) { 658 } << 662 daughter = "pi-"; 659 else if (iIso3 == -2) { << 663 } else { 660 daughter = "pi-"; << 664 return decayTable; 661 } << 665 } 662 else { << 666 // create decay channel [parent BR #daughters] 663 return decayTable; << 667 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2, 664 } << 668 daughter,"omega"); 665 // create decay channel [parent BR # << 666 mode = new G4PhaseSpaceDecayChannel(namePare << 667 // add decay table 669 // add decay table 668 decayTable->Insert(mode); 670 decayTable->Insert(mode); 669 671 670 return decayTable; 672 return decayTable; 671 } 673 } 672 674 673 G4DecayTable* G4ExcitedMesonConstructor::AddRh << 675 G4DecayTable* G4ExcitedMesonConstructor::AddRhoGammaMode( 674 << 676 G4DecayTable* decayTable, const G4String& nameParent, 675 << 677 G4double br, G4int iIso3, G4int iIso) 676 { 678 { 677 if ((iIso != 2) && (iIso != 0)) return decay << 679 if ((iIso!=2)&&(iIso!=0)) return decayTable; 678 680 679 G4VDecayChannel* mode; 681 G4VDecayChannel* mode; 680 // << 682 // 681 G4String daughter; 683 G4String daughter; 682 if (iIso3 == +2) { << 684 if (iIso3 == +2) { 683 daughter = "rho+"; << 685 daughter = "rho+"; 684 } << 686 } else if (iIso3 == 0) { 685 else if (iIso3 == 0) { << 687 daughter = "rho0"; 686 daughter = "rho0"; << 688 } else if (iIso3 ==-2) { 687 } << 689 daughter = "rho-"; 688 else if (iIso3 == -2) { << 690 } else { 689 daughter = "rho-"; << 691 return decayTable; 690 } << 692 } 691 else { << 692 return decayTable; << 693 } << 694 // create decay channel [parent BR # 693 // create decay channel [parent BR #daughters] 695 mode = new G4PhaseSpaceDecayChannel(namePare << 694 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2, >> 695 daughter,"gamma"); 696 // add decay table 696 // add decay table 697 decayTable->Insert(mode); 697 decayTable->Insert(mode); 698 698 699 return decayTable; 699 return decayTable; 700 } 700 } 701 701 702 G4DecayTable* G4ExcitedMesonConstructor::AddPi << 702 G4DecayTable* G4ExcitedMesonConstructor::AddPiEtaMode( 703 << 703 G4DecayTable* decayTable, const G4String& nameParent, 704 << 704 G4double br, G4int iIso3, G4int iIso) 705 { 705 { 706 if ((iIso != 2) && (iIso != 0)) return decay << 706 if ((iIso!=2)&&(iIso!=0)) return decayTable; 707 707 708 G4VDecayChannel* mode; 708 G4VDecayChannel* mode; 709 // << 709 // 710 G4String daughter; 710 G4String daughter; 711 if (iIso3 == +2) { << 711 if (iIso3 == +2) { 712 daughter = "pi+"; << 712 daughter = "pi+"; 713 } << 713 } else if (iIso3 == 0) { 714 else if (iIso3 == 0) { << 714 daughter = "pi0"; 715 daughter = "pi0"; << 715 } else if (iIso3 ==-2) { 716 } << 716 daughter = "pi-"; 717 else if (iIso3 == -2) { << 717 } else { 718 daughter = "pi-"; << 718 return decayTable; 719 } << 719 } 720 else { << 721 return decayTable; << 722 } << 723 // create decay channel [parent BR # 720 // create decay channel [parent BR #daughters] 724 mode = new G4PhaseSpaceDecayChannel(namePare << 721 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2, >> 722 daughter,"eta"); 725 // add decay table 723 // add decay table 726 decayTable->Insert(mode); 724 decayTable->Insert(mode); 727 725 728 return decayTable; 726 return decayTable; 729 } 727 } 730 728 731 G4DecayTable* G4ExcitedMesonConstructor::AddRh << 729 G4DecayTable* G4ExcitedMesonConstructor::AddRhoEtaMode( 732 << 730 G4DecayTable* decayTable, const G4String& nameParent, 733 << 731 G4double br, G4int iIso3, G4int iIso) 734 { 732 { 735 if ((iIso != 2) && (iIso != 0)) return decay << 733 if ((iIso!=2)&&(iIso!=0)) return decayTable; 736 734 737 G4VDecayChannel* mode; 735 G4VDecayChannel* mode; 738 // << 736 // 739 G4String daughter; 737 G4String daughter; 740 if (iIso3 == +2) { << 738 if (iIso3 == +2) { 741 daughter = "rho+"; << 739 daughter = "rho+"; 742 } << 740 } else if (iIso3 == 0) { 743 else if (iIso3 == 0) { << 741 daughter = "rho0"; 744 daughter = "rho0"; << 742 } else if (iIso3 ==-2) { 745 } << 743 daughter = "rho-"; 746 else if (iIso3 == -2) { << 744 } else { 747 daughter = "rho-"; << 745 return decayTable; 748 } << 746 } 749 else { << 750 return decayTable; << 751 } << 752 // create decay channel [parent BR # 747 // create decay channel [parent BR #daughters] 753 mode = new G4PhaseSpaceDecayChannel(namePare << 748 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2, >> 749 daughter,"eta"); 754 // add decay table 750 // add decay table 755 decayTable->Insert(mode); 751 decayTable->Insert(mode); 756 752 757 return decayTable; 753 return decayTable; 758 } 754 } 759 755 760 G4DecayTable* G4ExcitedMesonConstructor::AddPi << 756 G4DecayTable* G4ExcitedMesonConstructor::AddPiF2Mode( 761 << 757 G4DecayTable* decayTable, const G4String& nameParent, 762 << 758 G4double br, G4int iIso3, G4int iIso) 763 { 759 { 764 if ((iIso != 2) && (iIso != 0)) return decay << 760 if ((iIso!=2)&&(iIso!=0)) return decayTable; 765 761 766 G4VDecayChannel* mode; 762 G4VDecayChannel* mode; 767 // << 763 // 768 G4String daughter; 764 G4String daughter; 769 if (iIso3 == +2) { << 765 if (iIso3 == +2) { 770 daughter = "pi+"; << 766 daughter = "pi+"; 771 } << 767 } else if (iIso3 == 0) { 772 else if (iIso3 == 0) { << 768 daughter = "pi0"; 773 daughter = "pi0"; << 769 } else if (iIso3 ==-2) { 774 } << 770 daughter = "pi-"; 775 else if (iIso3 == -2) { << 771 } else { 776 daughter = "pi-"; << 772 return decayTable; 777 } << 773 } 778 else { << 779 return decayTable; << 780 } << 781 // create decay channel [parent BR # 774 // create decay channel [parent BR #daughters] 782 mode = new G4PhaseSpaceDecayChannel(namePare << 775 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2, >> 776 daughter,"f2(1270)"); 783 // add decay table 777 // add decay table 784 decayTable->Insert(mode); 778 decayTable->Insert(mode); 785 779 786 return decayTable; 780 return decayTable; 787 } 781 } 788 782 789 G4DecayTable* G4ExcitedMesonConstructor::AddPi << 783 G4DecayTable* G4ExcitedMesonConstructor::AddPiF0Mode( 790 << 784 G4DecayTable* decayTable, const G4String& nameParent, 791 << 785 G4double br, G4int iIso3, G4int iIso) 792 { 786 { 793 if ((iIso != 2) && (iIso != 0)) return decay << 787 if ((iIso!=2)&&(iIso!=0)) return decayTable; 794 788 795 G4VDecayChannel* mode; 789 G4VDecayChannel* mode; 796 // << 790 // 797 G4String daughter; 791 G4String daughter; 798 if (iIso3 == +2) { << 792 if (iIso3 == +2) { 799 daughter = "pi+"; << 793 daughter = "pi+"; 800 } << 794 } else if (iIso3 == 0) { 801 else if (iIso3 == 0) { << 795 daughter = "pi0"; 802 daughter = "pi0"; << 796 } else if (iIso3 ==-2) { 803 } << 797 daughter = "pi-"; 804 else if (iIso3 == -2) { << 798 } else { 805 daughter = "pi-"; << 799 return decayTable; 806 } << 800 } 807 else { << 808 return decayTable; << 809 } << 810 // create decay channel [parent BR # 801 // create decay channel [parent BR #daughters] 811 mode = new G4PhaseSpaceDecayChannel(namePare << 802 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2, >> 803 daughter,"f0(1370)"); 812 // add decay table 804 // add decay table 813 decayTable->Insert(mode); 805 decayTable->Insert(mode); 814 return decayTable; 806 return decayTable; 815 } 807 } 816 808 817 G4DecayTable* G4ExcitedMesonConstructor::Add2P << 809 818 << 810 G4DecayTable* G4ExcitedMesonConstructor::Add2PiMode( 819 << 811 G4DecayTable* decayTable, const G4String& nameParent, >> 812 G4double br, G4int iIso3, G4int iIso) 820 { 813 { 821 G4VDecayChannel* mode; 814 G4VDecayChannel* mode; 822 815 823 G4String daughterPi1; 816 G4String daughterPi1; 824 G4String daughterPi2; 817 G4String daughterPi2; 825 G4double r; << 818 G4double r; 826 819 827 // I = 0 states 820 // I = 0 states 828 if (iIso == 0) { << 821 if (iIso==0) { 829 if (iIso3 == 0) { << 822 if (iIso3==0) { 830 // pi+ + pi- << 823 // pi+ + pi- 831 daughterPi1 = "pi+"; 824 daughterPi1 = "pi+"; 832 daughterPi2 = "pi-"; 825 daughterPi2 = "pi-"; 833 r = br * 2. / 3.; << 826 r = br*2./3.; 834 mode = new G4PhaseSpaceDecayChannel(name << 827 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2, >> 828 daughterPi1,daughterPi2); 835 decayTable->Insert(mode); 829 decayTable->Insert(mode); 836 830 837 // pi0 + pi0 831 // pi0 + pi0 838 daughterPi1 = "pi0"; 832 daughterPi1 = "pi0"; 839 daughterPi2 = "pi0"; 833 daughterPi2 = "pi0"; 840 r = br * 1. / 3.; << 834 r = br*1./3.; 841 mode = new G4PhaseSpaceDecayChannel(name << 835 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2, 842 decayTable->Insert(mode); << 836 daughterPi1,daughterPi2); 843 } << 837 decayTable->Insert(mode); 844 } << 838 } 845 else if (iIso == 2) { << 839 } else if (iIso==2) { 846 if (iIso3 == +2) { << 840 if (iIso3==+2) { 847 // pi+ + pi0 841 // pi+ + pi0 848 daughterPi1 = "pi+"; 842 daughterPi1 = "pi+"; 849 daughterPi2 = "pi0"; 843 daughterPi2 = "pi0"; 850 r = br; 844 r = br; 851 mode = new G4PhaseSpaceDecayChannel(name << 845 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2, >> 846 daughterPi1,daughterPi2); 852 // add decay table 847 // add decay table 853 decayTable->Insert(mode); 848 decayTable->Insert(mode); 854 } << 849 } else if (iIso3==0) { 855 else if (iIso3 == 0) { << 850 // pi+ + pi- 856 // pi+ + pi- << 857 daughterPi1 = "pi+"; 851 daughterPi1 = "pi+"; 858 daughterPi2 = "pi-"; 852 daughterPi2 = "pi-"; 859 r = br; 853 r = br; 860 mode = new G4PhaseSpaceDecayChannel(name << 854 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2, >> 855 daughterPi1,daughterPi2); 861 decayTable->Insert(mode); 856 decayTable->Insert(mode); 862 } << 857 } else if (iIso3==-2) { 863 else if (iIso3 == -2) { << 858 // pi- + pi0 864 // pi- + pi0 << 865 daughterPi1 = "pi-"; 859 daughterPi1 = "pi-"; 866 daughterPi2 = "pi0"; 860 daughterPi2 = "pi0"; 867 r = br; 861 r = br; 868 mode = new G4PhaseSpaceDecayChannel(name << 862 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2, >> 863 daughterPi1,daughterPi2); 869 decayTable->Insert(mode); 864 decayTable->Insert(mode); 870 } 865 } 871 } 866 } 872 return decayTable; 867 return decayTable; 873 } 868 } 874 869 875 G4DecayTable* G4ExcitedMesonConstructor::AddPi << 870 G4DecayTable* G4ExcitedMesonConstructor::AddPiRhoMode( 876 << 871 G4DecayTable* decayTable, const G4String& nameParent, 877 << 872 G4double br, G4int iIso3, G4int iIso) 878 { 873 { 879 G4VDecayChannel* mode; 874 G4VDecayChannel* mode; 880 875 881 G4String daughterPi; 876 G4String daughterPi; 882 G4String daughterRho; 877 G4String daughterRho; 883 G4double r; << 878 G4double r; 884 879 885 // I = 0 states 880 // I = 0 states 886 if (iIso == 0) { << 881 if (iIso==0) { 887 if (iIso3 == 0) { << 882 if (iIso3==0) { 888 // pi+ + rho- 883 // pi+ + rho- 889 daughterPi = "pi+"; 884 daughterPi = "pi+"; 890 daughterRho = "rho-"; 885 daughterRho = "rho-"; 891 r = br / 3.; << 886 r = br/3.; 892 mode = new G4PhaseSpaceDecayChannel(name << 887 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2, >> 888 daughterPi,daughterRho); 893 decayTable->Insert(mode); 889 decayTable->Insert(mode); 894 << 890 895 // pi0 + rho0 891 // pi0 + rho0 896 daughterPi = "pi0"; 892 daughterPi = "pi0"; 897 daughterRho = "rho0"; 893 daughterRho = "rho0"; 898 r = br * 1. / 3.; << 894 r = br*1./3.; 899 mode = new G4PhaseSpaceDecayChannel(name << 895 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2, >> 896 daughterPi,daughterRho); 900 decayTable->Insert(mode); 897 decayTable->Insert(mode); 901 << 898 902 // pi- + rho+ 899 // pi- + rho+ 903 daughterPi = "pi-"; 900 daughterPi = "pi-"; 904 daughterRho = "rho+"; 901 daughterRho = "rho+"; 905 r = br * 1. / 3.; << 902 r = br*1./3.; 906 mode = new G4PhaseSpaceDecayChannel(name << 903 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2, 907 decayTable->Insert(mode); << 904 daughterPi,daughterRho); 908 } << 905 decayTable->Insert(mode); 909 } << 906 } 910 else if (iIso == 2) { << 907 } else if (iIso==2) { 911 if (iIso3 == +2) { << 908 if (iIso3==+2) { 912 // pi+ + rho0 909 // pi+ + rho0 913 daughterPi = "pi+"; 910 daughterPi = "pi+"; 914 daughterRho = "rho0"; 911 daughterRho = "rho0"; 915 r = br / 2.; << 912 r = br/2.; 916 mode = new G4PhaseSpaceDecayChannel(name << 913 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2, >> 914 daughterPi,daughterRho); 917 decayTable->Insert(mode); 915 decayTable->Insert(mode); 918 << 916 919 // pi0 + rho+ 917 // pi0 + rho+ 920 daughterPi = "pi0"; 918 daughterPi = "pi0"; 921 daughterRho = "rho+"; 919 daughterRho = "rho+"; 922 r = br / 2.; << 920 r = br/2.; 923 mode = new G4PhaseSpaceDecayChannel(name << 921 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2, >> 922 daughterPi,daughterRho); 924 decayTable->Insert(mode); 923 decayTable->Insert(mode); 925 } << 924 } else if (iIso3==0) { 926 else if (iIso3 == 0) { << 925 // pi+ + rho- 927 // pi+ + rho- << 928 daughterPi = "pi+"; 926 daughterPi = "pi+"; 929 daughterRho = "rho-"; 927 daughterRho = "rho-"; 930 r = br / 2.; << 928 r = br/2.; 931 mode = new G4PhaseSpaceDecayChannel(name << 929 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2, >> 930 daughterPi,daughterRho); 932 decayTable->Insert(mode); 931 decayTable->Insert(mode); 933 932 934 // pi- + rho+ << 933 // pi- + rho+ 935 daughterPi = "pi-"; 934 daughterPi = "pi-"; 936 daughterRho = "rho+"; 935 daughterRho = "rho+"; 937 r = br / 2.; << 936 r = br/2.; 938 mode = new G4PhaseSpaceDecayChannel(name << 937 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2, >> 938 daughterPi,daughterRho); 939 decayTable->Insert(mode); 939 decayTable->Insert(mode); 940 } << 940 } else if (iIso3==-2) { 941 else if (iIso3 == -2) { << 941 // pi- + rho0 942 // pi- + rho0 << 943 daughterPi = "pi-"; 942 daughterPi = "pi-"; 944 daughterRho = "rho0"; 943 daughterRho = "rho0"; 945 r = br / 2.; << 944 r = br/2.; 946 mode = new G4PhaseSpaceDecayChannel(name << 945 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2, >> 946 daughterPi,daughterRho); 947 decayTable->Insert(mode); 947 decayTable->Insert(mode); 948 << 948 949 // pi0 + rho- 949 // pi0 + rho- 950 daughterPi = "pi0"; 950 daughterPi = "pi0"; 951 daughterRho = "rho-"; 951 daughterRho = "rho-"; 952 r = br / 2.; << 952 r = br/2.; 953 mode = new G4PhaseSpaceDecayChannel(name << 953 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2, >> 954 daughterPi,daughterRho); 954 decayTable->Insert(mode); 955 decayTable->Insert(mode); 955 } 956 } 956 } 957 } 957 return decayTable; 958 return decayTable; 958 } 959 } 959 960 960 G4DecayTable* G4ExcitedMesonConstructor::AddPi << 961 G4DecayTable* G4ExcitedMesonConstructor::AddPiA2Mode( 961 << 962 G4DecayTable* decayTable, const G4String& nameParent, 962 << 963 G4double br, G4int iIso3, G4int iIso) 963 { 964 { 964 G4VDecayChannel* mode; 965 G4VDecayChannel* mode; 965 966 966 G4String daughterPi; 967 G4String daughterPi; 967 G4String daughterA2; 968 G4String daughterA2; 968 G4double r; << 969 G4double r; 969 970 970 // I = 0 states 971 // I = 0 states 971 if (iIso == 0) { << 972 if (iIso==0) { 972 if (iIso3 == 0) { << 973 if (iIso3==0) { 973 // pi+ + a2(1320)- 974 // pi+ + a2(1320)- 974 daughterPi = "pi+"; 975 daughterPi = "pi+"; 975 daughterA2 = "a2(1320)-"; 976 daughterA2 = "a2(1320)-"; 976 r = br / 3.; << 977 r = br/3.; 977 mode = new G4PhaseSpaceDecayChannel(name << 978 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2, >> 979 daughterPi,daughterA2); 978 decayTable->Insert(mode); 980 decayTable->Insert(mode); 979 << 981 980 // pi0 + a2(1320)0 982 // pi0 + a2(1320)0 981 daughterPi = "pi0"; 983 daughterPi = "pi0"; 982 daughterA2 = "a2(1320)0"; 984 daughterA2 = "a2(1320)0"; 983 r = br * 1. / 3.; << 985 r = br*1./3.; 984 mode = new G4PhaseSpaceDecayChannel(name << 986 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2, >> 987 daughterPi,daughterA2); 985 decayTable->Insert(mode); 988 decayTable->Insert(mode); 986 << 989 987 // pi- + a2(1320)+ 990 // pi- + a2(1320)+ 988 daughterPi = "pi-"; 991 daughterPi = "pi-"; 989 daughterA2 = "a2(1320)+"; 992 daughterA2 = "a2(1320)+"; 990 r = br * 1. / 3.; << 993 r = br*1./3.; 991 mode = new G4PhaseSpaceDecayChannel(name << 994 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2, 992 decayTable->Insert(mode); << 995 daughterPi,daughterA2); 993 } << 996 decayTable->Insert(mode); 994 } << 997 } 995 else if (iIso == 2) { << 998 } else if (iIso==2) { 996 if (iIso3 == +2) { << 999 if (iIso3==+2) { 997 // pi+ + a2(1320)0 1000 // pi+ + a2(1320)0 998 daughterPi = "pi+"; 1001 daughterPi = "pi+"; 999 daughterA2 = "a2(1320)0"; 1002 daughterA2 = "a2(1320)0"; 1000 r = br / 2.; << 1003 r = br/2.; 1001 mode = new G4PhaseSpaceDecayChannel(nam << 1004 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2, >> 1005 daughterPi,daughterA2); 1002 decayTable->Insert(mode); 1006 decayTable->Insert(mode); 1003 << 1007 1004 // pi0 + a2(1320)+ 1008 // pi0 + a2(1320)+ 1005 daughterPi = "pi0"; 1009 daughterPi = "pi0"; 1006 daughterA2 = "a2(1320)+"; 1010 daughterA2 = "a2(1320)+"; 1007 r = br / 2.; << 1011 r = br/2.; 1008 mode = new G4PhaseSpaceDecayChannel(nam << 1012 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2, >> 1013 daughterPi,daughterA2); 1009 decayTable->Insert(mode); 1014 decayTable->Insert(mode); 1010 } << 1015 } else if (iIso3==0) { 1011 else if (iIso3 == 0) { << 1016 // pi+ + a2(1320)- 1012 // pi+ + a2(1320)- << 1013 daughterPi = "pi+"; 1017 daughterPi = "pi+"; 1014 daughterA2 = "a2(1320)-"; 1018 daughterA2 = "a2(1320)-"; 1015 r = br / 2.; << 1019 r = br/2.; 1016 mode = new G4PhaseSpaceDecayChannel(nam << 1020 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2, >> 1021 daughterPi,daughterA2); 1017 decayTable->Insert(mode); 1022 decayTable->Insert(mode); 1018 1023 1019 // pi- + a2(1320)+ << 1024 // pi- + a2(1320)+ 1020 daughterPi = "pi-"; 1025 daughterPi = "pi-"; 1021 daughterA2 = "a2(1320)+"; 1026 daughterA2 = "a2(1320)+"; 1022 r = br / 2.; << 1027 r = br/2.; 1023 mode = new G4PhaseSpaceDecayChannel(nam << 1028 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2, >> 1029 daughterPi,daughterA2); 1024 decayTable->Insert(mode); 1030 decayTable->Insert(mode); 1025 } << 1031 } else if (iIso3==-2) { 1026 else if (iIso3 == -2) { << 1032 // pi- + a2(1320)0 1027 // pi- + a2(1320)0 << 1028 daughterPi = "pi-"; 1033 daughterPi = "pi-"; 1029 daughterA2 = "a2(1320)0"; 1034 daughterA2 = "a2(1320)0"; 1030 r = br / 2.; << 1035 r = br/2.; 1031 mode = new G4PhaseSpaceDecayChannel(nam << 1036 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2, >> 1037 daughterPi,daughterA2); 1032 decayTable->Insert(mode); 1038 decayTable->Insert(mode); 1033 << 1039 1034 // pi0 + a2(1320)- 1040 // pi0 + a2(1320)- 1035 daughterPi = "pi0"; 1041 daughterPi = "pi0"; 1036 daughterA2 = "a2(1320)-"; 1042 daughterA2 = "a2(1320)-"; 1037 r = br / 2.; << 1043 r = br/2.; 1038 mode = new G4PhaseSpaceDecayChannel(nam << 1044 mode = new G4PhaseSpaceDecayChannel(nameParent, r, 2, >> 1045 daughterPi,daughterA2); 1039 decayTable->Insert(mode); 1046 decayTable->Insert(mode); 1040 } 1047 } 1041 } 1048 } 1042 return decayTable; 1049 return decayTable; 1043 } 1050 } 1044 1051 1045 G4DecayTable* G4ExcitedMesonConstructor::Add3 << 1052 G4DecayTable* G4ExcitedMesonConstructor::Add3PiMode( 1046 << 1053 G4DecayTable* decayTable, const G4String& nameParent, 1047 << 1054 G4double br, G4int iIso3, G4int iIso) 1048 { 1055 { 1049 G4VDecayChannel* mode; 1056 G4VDecayChannel* mode; 1050 1057 1051 // I =0 state 1058 // I =0 state 1052 // This mode is X(I=0,J=1) --> pi+,pi-,pi0 1059 // This mode is X(I=0,J=1) --> pi+,pi-,pi0 mode 1053 if (iIso == 0) { << 1060 if (iIso==0) { 1054 // pi+ + pi- 1061 // pi+ + pi- 1055 mode = new G4PhaseSpaceDecayChannel(nameP << 1062 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 3, >> 1063 "pi+","pi-","pi0"); 1056 decayTable->Insert(mode); 1064 decayTable->Insert(mode); 1057 } << 1065 } else if (iIso==2) { 1058 else if (iIso == 2) { << 1066 // This mode is X(I=1) --> pi + pipi(I=0) mode 1059 // This mode is X(I=1) --> pi + pipi(I=0) << 1067 if (iIso3==+2) { 1060 if (iIso3 == +2) { << 1068 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 3, 1061 mode = new G4PhaseSpaceDecayChannel(nam << 1069 "pi+","pi0","pi0"); 1062 decayTable->Insert(mode); 1070 decayTable->Insert(mode); 1063 mode = new G4PhaseSpaceDecayChannel(nam << 1071 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 3, >> 1072 "pi+","pi+","pi-"); 1064 decayTable->Insert(mode); 1073 decayTable->Insert(mode); 1065 } << 1074 } else if (iIso3==0) { 1066 else if (iIso3 == 0) { << 1075 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 3, 1067 mode = new G4PhaseSpaceDecayChannel(nam << 1076 "pi0","pi0","pi0"); 1068 decayTable->Insert(mode); 1077 decayTable->Insert(mode); 1069 mode = new G4PhaseSpaceDecayChannel(nam << 1078 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 3, >> 1079 "pi0","pi+","pi-"); 1070 decayTable->Insert(mode); 1080 decayTable->Insert(mode); 1071 } << 1081 } else if (iIso3==-2) { 1072 else if (iIso3 == -2) { << 1082 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 3, 1073 mode = new G4PhaseSpaceDecayChannel(nam << 1083 "pi-","pi0","pi0"); 1074 decayTable->Insert(mode); 1084 decayTable->Insert(mode); 1075 mode = new G4PhaseSpaceDecayChannel(nam << 1085 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 3, >> 1086 "pi-","pi+","pi-"); 1076 decayTable->Insert(mode); 1087 decayTable->Insert(mode); 1077 } 1088 } 1078 } << 1089 } 1079 return decayTable; 1090 return decayTable; 1080 } 1091 } 1081 1092 1082 G4DecayTable* G4ExcitedMesonConstructor::Add4 << 1093 G4DecayTable* G4ExcitedMesonConstructor::Add4PiMode( 1083 << 1094 G4DecayTable* decayTable, const G4String& nameParent, 1084 << 1095 G4double br, G4int iIso3, G4int ) 1085 { 1096 { 1086 G4VDecayChannel* mode; 1097 G4VDecayChannel* mode; 1087 1098 1088 if (iIso3 == 0) { << 1099 if (iIso3==0) { 1089 // 2pi+ + 2pi- 1100 // 2pi+ + 2pi- 1090 mode = new G4PhaseSpaceDecayChannel(nameP << 1101 mode = new G4PhaseSpaceDecayChannel(nameParent, br/2., 4, >> 1102 "pi+","pi-","pi+","pi-"); 1091 decayTable->Insert(mode); 1103 decayTable->Insert(mode); 1092 // pi+ + pi- + 2pi0 << 1104 // pi+ + pi- + 2pi0 1093 mode = new G4PhaseSpaceDecayChannel(nameP << 1105 mode = new G4PhaseSpaceDecayChannel(nameParent, br/2., 4, >> 1106 "pi+","pi-","pi0","pi0"); 1094 decayTable->Insert(mode); 1107 decayTable->Insert(mode); 1095 } << 1108 } else if (iIso3==+2) { 1096 else if (iIso3 == +2) { << 1097 // pi+ + 3pi0 1109 // pi+ + 3pi0 1098 mode = new G4PhaseSpaceDecayChannel(nameP << 1110 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 4, >> 1111 "pi+","pi0","pi0","pi0"); 1099 decayTable->Insert(mode); 1112 decayTable->Insert(mode); 1100 // 2pi+ + pi- + pi0 1113 // 2pi+ + pi- + pi0 1101 mode = new G4PhaseSpaceDecayChannel(nameP << 1114 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 4, >> 1115 "pi+","pi+","pi-","pi0"); 1102 decayTable->Insert(mode); 1116 decayTable->Insert(mode); 1103 } << 1117 } else if (iIso3==-2) { 1104 else if (iIso3 == -2) { << 1105 // pi- + 3pi0 1118 // pi- + 3pi0 1106 mode = new G4PhaseSpaceDecayChannel(nameP << 1119 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 4, >> 1120 "pi-","pi0","pi0","pi0"); 1107 decayTable->Insert(mode); 1121 decayTable->Insert(mode); 1108 // 2pi- + pi+ + pi0 1122 // 2pi- + pi+ + pi0 1109 mode = new G4PhaseSpaceDecayChannel(nameP << 1123 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 4, >> 1124 "pi-","pi-","pi+","pi0"); 1110 decayTable->Insert(mode); 1125 decayTable->Insert(mode); 1111 } 1126 } 1112 return decayTable; 1127 return decayTable; 1113 } 1128 } 1114 1129 1115 G4DecayTable* G4ExcitedMesonConstructor::Add2 << 1130 G4DecayTable* G4ExcitedMesonConstructor::Add2PiEtaMode( 1116 << 1131 G4DecayTable* decayTable, const G4String& nameParent, 1117 << 1132 G4double br, G4int , G4int iIso) 1118 { 1133 { 1119 // f1-->eta + pi + pi mode 1134 // f1-->eta + pi + pi mode 1120 1135 1121 if (iIso != 0) return decayTable; << 1136 if (iIso!=0) return decayTable; 1122 1137 1123 G4VDecayChannel* mode; 1138 G4VDecayChannel* mode; 1124 1139 1125 // eta pi+ pi- 1140 // eta pi+ pi- 1126 mode = new G4PhaseSpaceDecayChannel(namePar << 1141 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 3, >> 1142 "eta","pi+","pi-"); 1127 decayTable->Insert(mode); 1143 decayTable->Insert(mode); 1128 1144 1129 // eta pi+ pi- 1145 // eta pi+ pi- 1130 mode = new G4PhaseSpaceDecayChannel(namePar << 1146 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 3, >> 1147 "eta","pi0","pi0"); 1131 decayTable->Insert(mode); 1148 decayTable->Insert(mode); 1132 return decayTable; 1149 return decayTable; 1133 } 1150 } 1134 1151 1135 G4DecayTable* G4ExcitedMesonConstructor::Add2 << 1152 G4DecayTable* G4ExcitedMesonConstructor::Add2EtaMode( 1136 << 1153 G4DecayTable* decayTable, const G4String& nameParent, 1137 << 1154 G4double br, G4int , G4int iIso) 1138 { 1155 { 1139 if (iIso != 0) return decayTable; << 1156 if (iIso!=0) return decayTable; 1140 1157 1141 G4VDecayChannel* mode; 1158 G4VDecayChannel* mode; 1142 1159 1143 // eta eta 1160 // eta eta 1144 mode = new G4PhaseSpaceDecayChannel(namePar << 1161 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2, >> 1162 "eta","eta"); 1145 decayTable->Insert(mode); 1163 decayTable->Insert(mode); 1146 return decayTable; 1164 return decayTable; 1147 } 1165 } 1148 1166 1149 G4DecayTable* G4ExcitedMesonConstructor::Add2 << 1167 G4DecayTable* G4ExcitedMesonConstructor::Add2PiOmegaMode( 1150 << 1168 G4DecayTable* decayTable, const G4String& nameParent, 1151 << 1169 G4double br, G4int iIso3, G4int iIso) 1152 { 1170 { >> 1171 1153 G4VDecayChannel* mode; 1172 G4VDecayChannel* mode; 1154 if (iIso == 0) { << 1173 if (iIso==0) { 1155 // omega pi+ pi- 1174 // omega pi+ pi- 1156 mode = new G4PhaseSpaceDecayChannel(nameP << 1175 mode = new G4PhaseSpaceDecayChannel(nameParent, br*2./3., 3, >> 1176 "omega","pi+","pi-"); 1157 decayTable->Insert(mode); 1177 decayTable->Insert(mode); 1158 1178 1159 // omega pi+ pi- 1179 // omega pi+ pi- 1160 mode = new G4PhaseSpaceDecayChannel(nameP << 1180 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 3, >> 1181 "omega","pi0","pi0"); 1161 decayTable->Insert(mode); 1182 decayTable->Insert(mode); 1162 } << 1183 } else if (iIso==2) { 1163 else if (iIso == 2) { << 1184 if (iIso3==+2) { 1164 if (iIso3 == +2) { << 1165 // omega pi+ pi0 1185 // omega pi+ pi0 1166 mode = new G4PhaseSpaceDecayChannel(nam << 1186 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 3, >> 1187 "omega","pi+","pi0"); 1167 decayTable->Insert(mode); 1188 decayTable->Insert(mode); 1168 } << 1189 } else if (iIso3==0) { 1169 else if (iIso3 == 0) { << 1170 // omega pi+ pi- 1190 // omega pi+ pi- 1171 mode = new G4PhaseSpaceDecayChannel(nam << 1191 mode = new G4PhaseSpaceDecayChannel(nameParent, br/2., 3, >> 1192 "omega","pi-","pi+"); 1172 decayTable->Insert(mode); 1193 decayTable->Insert(mode); 1173 // omega pi0 pi0 1194 // omega pi0 pi0 1174 mode = new G4PhaseSpaceDecayChannel(nam << 1195 mode = new G4PhaseSpaceDecayChannel(nameParent, br/2., 3, >> 1196 "omega","pi0","pi0"); 1175 decayTable->Insert(mode); 1197 decayTable->Insert(mode); 1176 } << 1198 } else if (iIso3==-2) { 1177 else if (iIso3 == -2) { << 1178 // omega pi- pi0 1199 // omega pi- pi0 1179 mode = new G4PhaseSpaceDecayChannel(nam << 1200 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 3, >> 1201 "omega","pi-","pi0"); 1180 decayTable->Insert(mode); 1202 decayTable->Insert(mode); 1181 } << 1203 } 1182 } 1204 } 1183 return decayTable; 1205 return decayTable; 1184 } 1206 } >> 1207 >> 1208 1185 1209 1186 G4DecayTable* G4ExcitedMesonConstructor::Add2 << 1210 G4DecayTable* G4ExcitedMesonConstructor::Add2PiRhoMode( 1187 << 1211 G4DecayTable* decayTable, const G4String& nameParent, 1188 << 1212 G4double br, G4int iIso3, G4int iIso) 1189 { 1213 { 1190 G4VDecayChannel* mode; 1214 G4VDecayChannel* mode; 1191 1215 1192 if (iIso == 0) { << 1216 if (iIso==0) { 1193 // f1 --> rho0 + pi+ pi- 1217 // f1 --> rho0 + pi+ pi- 1194 // rho0 pi+ pi- 1218 // rho0 pi+ pi- 1195 mode = new G4PhaseSpaceDecayChannel(nameP << 1219 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3, >> 1220 "rho0","pi+","pi-"); 1196 decayTable->Insert(mode); 1221 decayTable->Insert(mode); 1197 } << 1222 } else if (iIso==2) { 1198 else if (iIso == 2) { << 1223 if (iIso3==+2) { 1199 if (iIso3 == +2) { << 1200 // rho+ pi0 pi0 1224 // rho+ pi0 pi0 1201 mode = new G4PhaseSpaceDecayChannel(nam << 1225 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3, >> 1226 "rho+","pi0","pi0"); 1202 decayTable->Insert(mode); 1227 decayTable->Insert(mode); 1203 // rho+ pi+ pi- 1228 // rho+ pi+ pi- 1204 mode = new G4PhaseSpaceDecayChannel(nam << 1229 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3, >> 1230 "rho+","pi+","pi-"); 1205 decayTable->Insert(mode); 1231 decayTable->Insert(mode); 1206 // rho0 pi+ pi0 1232 // rho0 pi+ pi0 1207 mode = new G4PhaseSpaceDecayChannel(nam << 1233 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3, >> 1234 "rho0","pi+","pi0"); 1208 decayTable->Insert(mode); 1235 decayTable->Insert(mode); 1209 // rho- pi+ pi+ 1236 // rho- pi+ pi+ 1210 mode = new G4PhaseSpaceDecayChannel(nam << 1237 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3, >> 1238 "rho-","pi+","pi+"); 1211 decayTable->Insert(mode); 1239 decayTable->Insert(mode); 1212 } << 1240 } else if (iIso3==-2) { 1213 else if (iIso3 == -2) { << 1214 // rho- pi0 pi0 1241 // rho- pi0 pi0 1215 mode = new G4PhaseSpaceDecayChannel(nam << 1242 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3, >> 1243 "rho-","pi0","pi0"); 1216 decayTable->Insert(mode); 1244 decayTable->Insert(mode); 1217 // rho- pi+ pi- 1245 // rho- pi+ pi- 1218 mode = new G4PhaseSpaceDecayChannel(nam << 1246 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3, >> 1247 "rho-","pi+","pi-"); 1219 decayTable->Insert(mode); 1248 decayTable->Insert(mode); 1220 // rho0 pi- pi0 1249 // rho0 pi- pi0 1221 mode = new G4PhaseSpaceDecayChannel(nam << 1250 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3, >> 1251 "rho0","pi-","pi0"); 1222 decayTable->Insert(mode); 1252 decayTable->Insert(mode); 1223 // rho+ pi- pi- 1253 // rho+ pi- pi- 1224 mode = new G4PhaseSpaceDecayChannel(nam << 1254 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3, >> 1255 "rho+","pi-","pi-"); 1225 decayTable->Insert(mode); 1256 decayTable->Insert(mode); 1226 } << 1257 } else if (iIso3==0) { 1227 else if (iIso3 == 0) { << 1228 // rho+ pi- pi0 1258 // rho+ pi- pi0 1229 mode = new G4PhaseSpaceDecayChannel(nam << 1259 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3, >> 1260 "rho+","pi-","pi0"); 1230 decayTable->Insert(mode); 1261 decayTable->Insert(mode); 1231 // rho0 pi+ pi- 1262 // rho0 pi+ pi- 1232 mode = new G4PhaseSpaceDecayChannel(nam << 1263 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3, >> 1264 "rho0","pi+","pi-"); 1233 decayTable->Insert(mode); 1265 decayTable->Insert(mode); 1234 // rho0 pi0 pi0 1266 // rho0 pi0 pi0 1235 mode = new G4PhaseSpaceDecayChannel(nam << 1267 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3, >> 1268 "rho0","pi0","pi0"); 1236 decayTable->Insert(mode); 1269 decayTable->Insert(mode); 1237 // rho- pi+ pi0 1270 // rho- pi+ pi0 1238 mode = new G4PhaseSpaceDecayChannel(nam << 1271 mode = new G4PhaseSpaceDecayChannel(nameParent, br/5., 3, >> 1272 "rho-","pi+","pi-"); 1239 decayTable->Insert(mode); 1273 decayTable->Insert(mode); 1240 } 1274 } 1241 } 1275 } 1242 return decayTable; 1276 return decayTable; 1243 } 1277 } 1244 1278 1245 G4DecayTable* G4ExcitedMesonConstructor::AddK << 1279 1246 << 1280 G4DecayTable* G4ExcitedMesonConstructor::AddKKStarMode( 1247 << 1281 G4DecayTable* decayTable, const G4String& nameParent, >> 1282 G4double br, G4int , G4int iIso) 1248 { 1283 { 1249 G4VDecayChannel* mode; << 1284 // X(I=0,J=1)-->K + Anti-K*, Anti_K + K* mode 1250 1285 1251 if (iIso3 == 0) { << 1286 if (iIso!=0) return decayTable; 1252 // X(I=0,J=1)-->K + Anti-K*, Anti_K + K* << 1253 // K+ + K*- << 1254 mode = new G4PhaseSpaceDecayChannel(nameP << 1255 decayTable->Insert(mode); << 1256 1287 1257 // K- + K*+ << 1288 G4VDecayChannel* mode; 1258 mode = new G4PhaseSpaceDecayChannel(nameP << 1259 decayTable->Insert(mode); << 1260 1289 1261 // K0 + Anti_K*0 << 1290 // K+ + K*- 1262 mode = new G4PhaseSpaceDecayChannel(nameP << 1291 mode = new G4PhaseSpaceDecayChannel(nameParent, br/4., 2, 1263 decayTable->Insert(mode); << 1292 "kaon+","k_star-"); >> 1293 decayTable->Insert(mode); 1264 1294 1265 // Anti_K0 + K*0 << 1295 // K- + K*+ 1266 mode = new G4PhaseSpaceDecayChannel(nameP << 1296 mode = new G4PhaseSpaceDecayChannel(nameParent, br/4., 2, 1267 decayTable->Insert(mode); << 1297 "kaon-","k_star0"); 1268 } << 1298 decayTable->Insert(mode); 1269 else if (iIso3 == 2) { << 1270 // K+ + Anti_K*0 << 1271 mode = new G4PhaseSpaceDecayChannel(nameP << 1272 decayTable->Insert(mode); << 1273 1299 1274 // K0 + K*+ << 1300 // K0 + Anti_K*0 1275 mode = new G4PhaseSpaceDecayChannel(nameP << 1301 mode = new G4PhaseSpaceDecayChannel(nameParent, br/4., 2, 1276 decayTable->Insert(mode); << 1302 "kaon0","anti_k_star0"); 1277 } << 1303 decayTable->Insert(mode); 1278 else if (iIso3 == -2) { << 1304 1279 // K- + K*0 << 1305 // Anti_K0 + K*0 1280 mode = new G4PhaseSpaceDecayChannel(nameP << 1306 mode = new G4PhaseSpaceDecayChannel(nameParent, br/4., 2, 1281 decayTable->Insert(mode); << 1307 "anti_kaon0","k_star0"); >> 1308 decayTable->Insert(mode); 1282 1309 1283 // K0 + K*- << 1284 mode = new G4PhaseSpaceDecayChannel(nameP << 1285 decayTable->Insert(mode); << 1286 } << 1287 1310 1288 return decayTable; 1311 return decayTable; 1289 } 1312 } 1290 1313 1291 G4DecayTable* G4ExcitedMesonConstructor::Add2 << 1314 G4DecayTable* G4ExcitedMesonConstructor::Add2KMode( 1292 << 1315 G4DecayTable* decayTable, const G4String& nameParent, 1293 << 1316 G4double br, G4int iIso3, G4int ) 1294 { 1317 { 1295 G4VDecayChannel* mode; 1318 G4VDecayChannel* mode; 1296 1319 1297 if (iIso3 == 0) { << 1320 if (iIso3==0) { 1298 // K+ + K- 1321 // K+ + K- 1299 mode = new G4PhaseSpaceDecayChannel(nameP << 1322 mode = new G4PhaseSpaceDecayChannel(nameParent, br/2., 2, >> 1323 "kaon+","kaon-"); 1300 decayTable->Insert(mode); 1324 decayTable->Insert(mode); 1301 << 1325 1302 // K0 + Anti_K0 1326 // K0 + Anti_K0 1303 mode = new G4PhaseSpaceDecayChannel(nameP << 1327 mode = new G4PhaseSpaceDecayChannel(nameParent, br/2., 2, >> 1328 "kaon0","anti_kaon0"); 1304 decayTable->Insert(mode); 1329 decayTable->Insert(mode); 1305 } << 1330 } else if (iIso3==+2) { 1306 else if (iIso3 == +2) { << 1307 // K+ + anti_K0 1331 // K+ + anti_K0 1308 mode = new G4PhaseSpaceDecayChannel(nameP << 1332 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2, >> 1333 "kaon+","anti_kaon0"); 1309 decayTable->Insert(mode); 1334 decayTable->Insert(mode); 1310 } << 1335 } else if (iIso3==-2) { 1311 else if (iIso3 == -2) { << 1312 // K- + K0 1336 // K- + K0 1313 mode = new G4PhaseSpaceDecayChannel(nameP << 1337 mode = new G4PhaseSpaceDecayChannel(nameParent, br, 2, >> 1338 "kaon-","kaon0"); 1314 decayTable->Insert(mode); 1339 decayTable->Insert(mode); 1315 } << 1340 } 1316 << 1341 1317 return decayTable; 1342 return decayTable; 1318 } 1343 } 1319 1344 1320 G4DecayTable* G4ExcitedMesonConstructor::Add2 << 1345 G4DecayTable* G4ExcitedMesonConstructor::Add2KPiMode( 1321 << 1346 G4DecayTable* decayTable, const G4String& nameParent, 1322 << 1347 G4double br, G4int , G4int iIso) 1323 { 1348 { 1324 // X(I=0)-->KKpi << 1349 1325 if (iIso != 0) return decayTable; << 1350 // X(I=0)-->KKpi >> 1351 if (iIso!=0) return decayTable; 1326 1352 1327 G4VDecayChannel* mode; 1353 G4VDecayChannel* mode; 1328 1354 1329 // K+ + K- + pi0 1355 // K+ + K- + pi0 1330 mode = new G4PhaseSpaceDecayChannel(namePar << 1356 mode = new G4PhaseSpaceDecayChannel(nameParent, br/6., 3, >> 1357 "kaon+","kaon-","pi0"); 1331 decayTable->Insert(mode); 1358 decayTable->Insert(mode); 1332 << 1359 1333 // K0 + Anti_K0 + pi0 1360 // K0 + Anti_K0 + pi0 1334 mode = new G4PhaseSpaceDecayChannel(namePar << 1361 mode = new G4PhaseSpaceDecayChannel(nameParent, br/6., 3, >> 1362 "kaon0","anti_kaon0","pi0"); 1335 decayTable->Insert(mode); 1363 decayTable->Insert(mode); 1336 << 1364 1337 // K+ + anti_K0 + pi- 1365 // K+ + anti_K0 + pi- 1338 mode = new G4PhaseSpaceDecayChannel(namePar << 1366 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 3, >> 1367 "kaon+","anti_kaon0","pi-"); 1339 decayTable->Insert(mode); 1368 decayTable->Insert(mode); 1340 << 1369 1341 // K- + K0 + pi+ 1370 // K- + K0 + pi+ 1342 mode = new G4PhaseSpaceDecayChannel(namePar << 1371 mode = new G4PhaseSpaceDecayChannel(nameParent, br/3., 3, >> 1372 "kaon-","kaon0","pi+"); 1343 decayTable->Insert(mode); 1373 decayTable->Insert(mode); 1344 << 1374 >> 1375 1345 return decayTable; 1376 return decayTable; 1346 } 1377 } 1347 1378 1348 // clang-format off << 1349 << 1350 // PDG2005 1379 // PDG2005 1351 // eta(1440) is renamed to eta(1475) << 1380 // eta(1440) is renamed to eta(1475) 1352 // omega(1600) is renamed to omega(1650) 1381 // omega(1600) is renamed to omega(1650) 1353 // 1382 // 1354 // 1383 // 1355 1384 1356 1385 1357 const char* G4ExcitedMesonConstructor::name[G 1386 const char* G4ExcitedMesonConstructor::name[G4ExcitedMesonConstructor::NMultiplets ][ G4ExcitedMesonConstructor::NMesonTypes ] = 1358 { 1387 { 1359 { "b1(1235)", "h1(1170)", "h1(1380)", 1388 { "b1(1235)", "h1(1170)", "h1(1380)", "k1(1270)", "k1(1270)" }, 1360 { "a0(1450)", "f0(1370)", "", " 1389 { "a0(1450)", "f0(1370)", "", "k0_star(1430)", "k0_star(1430)" }, 1361 { "a1(1260)", "f1(1285)", "f1(1420)", 1390 { "a1(1260)", "f1(1285)", "f1(1420)", "k1(1400)", "k1(1400)" }, 1362 { "a2(1320)", "f2(1270)","f2_prime(1525)" 1391 { "a2(1320)", "f2(1270)","f2_prime(1525)","k2_star(1430)","k2_star(1430)"}, 1363 {"pi2(1670)", "eta2(1645)", "eta2(1870)", 1392 {"pi2(1670)", "eta2(1645)", "eta2(1870)", "k2(1770)", "k2(1770)" }, 1364 {"rho(1700)", "omega(1650)", "", 1393 {"rho(1700)", "omega(1650)", "", "k_star(1680)", "k_star(1680)" }, 1365 {"rho3(1690)","omega3(1670)","phi3(1850)", << 1394 {"rho3(1690)","omega3(1670)","phi3(1850)", "k3_star(1780)", "k3_star(1780)" }, 1366 { "pi(1300)", "eta(1295)", "eta(1475)", 1395 { "pi(1300)", "eta(1295)", "eta(1475)", "k(1460)", "k(1460)" }, 1367 {"rho(1450)","omega(1420)", "phi(1680)", 1396 {"rho(1450)","omega(1420)", "phi(1680)", "k_star(1410)", "k_star(1410)" }, 1368 { "", "f2(1810)", "f2(2010)", " 1397 { "", "f2(1810)", "f2(2010)", "k2_star(1980)", "k2_star(1980)" } 1369 }; 1398 }; 1370 1399 1371 const G4double G4ExcitedMesonConstructor::mas << 1400 const G4double G4ExcitedMesonConstructor::mass[G4ExcitedMesonConstructor::NMultiplets ][ G4ExcitedMesonConstructor::NMesonTypes ] = 1372 { 1401 { 1373 { 1.2295*GeV, 1.166*GeV, 1.409*GeV, 1.253* << 1402 { 1.2295*GeV, 1.170*GeV, 1.386*GeV, 1.272*GeV, 1.272*GeV }, 1374 { 1.439*GeV, 1.350*GeV, 0.0, 1.425* << 1403 { 1.474*GeV, 1.350*GeV, 0.0, 1.430*GeV, 1.430*GeV }, 1375 { 1.230*GeV,1.2819*GeV,1.4263*GeV, 1.403* << 1404 { 1.230*GeV,1.2818*GeV,1.4264*GeV, 1.403*GeV, 1.403*GeV }, 1376 { 1.3182*GeV,1.2750*GeV,1.5174*GeV,1.4273* << 1405 { 1.3183*GeV,1.2751*GeV, 1.525*GeV,1.4256*GeV, 1.4256*GeV }, 1377 { 1.6706*GeV, 1.617*GeV, 1.842*GeV, 1.773* << 1406 { 1.6724*GeV, 1.617*GeV, 1.842*GeV, 1.773*GeV, 1.773*GeV }, 1378 { 1.729*GeV, 1.670*GeV, 0.0, 1.718* << 1407 { 1.720*GeV, 1.670*GeV, 0.0, 1.717*GeV, 1.717*GeV }, 1379 { 1.6888*GeV, 1.667*GeV, 1.854*GeV, 1.779* << 1408 { 1.6888*GeV, 1.667*GeV, 1.854*GeV, 1.776*GeV, 1.776*GeV }, 1380 { 1.300*GeV, 1.294*GeV, 1.475*GeV, 1.482* << 1409 { 1.300*GeV, 1.294*GeV, 1.476*GeV, 1.460*GeV, 1.460*GeV }, 1381 { 1.465*GeV, 1.410*GeV, 1.680*GeV, 1.414* << 1410 { 1.465*GeV, 1.425*GeV, 1.680*GeV, 1.414*GeV, 1.414*GeV }, 1382 { 0.0, 1.815*GeV, 2.011*GeV, 1.994* << 1411 { 0.0, 1.815*GeV, 2.010*GeV, 1.973*GeV, 1.973*GeV } 1383 }; 1412 }; 1384 1413 1385 const G4double G4ExcitedMesonConstructor::ma 1414 const G4double G4ExcitedMesonConstructor::massKdiff[ G4ExcitedMesonConstructor::NMultiplets ] = { 1386 0.0*MeV, 0.0*MeV, 0.0*MeV, 6.8*MeV, 0.0*Me << 1415 0.0*MeV, 0.0*MeV, 0.0*MeV, 6.8*MeV, 0.0*MeV, 1387 0.0*MeV, 0.0*MeV, 0.0*MeV, 0.0*MeV, 0.0* 1416 0.0*MeV, 0.0*MeV, 0.0*MeV, 0.0*MeV, 0.0*MeV 1388 }; 1417 }; 1389 1418 1390 const G4double G4ExcitedMesonConstructor::wi 1419 const G4double G4ExcitedMesonConstructor::widthKdiff[ G4ExcitedMesonConstructor::NMultiplets ] = { 1391 0.0*MeV, 0.0*MeV, 0.0*MeV, 10.5*MeV, 0.0*M << 1420 0.0*MeV, 0.0*MeV, 0.0*MeV, 10.5*MeV, 0.0*MeV, 1392 0.0*MeV, 0.0*MeV, 0.0*MeV, 0.0*MeV, 0.0* 1421 0.0*MeV, 0.0*MeV, 0.0*MeV, 0.0*MeV, 0.0*MeV 1393 }; 1422 }; 1394 1423 1395 const G4double G4ExcitedMesonConstructor::wid << 1424 const G4double G4ExcitedMesonConstructor::width[G4ExcitedMesonConstructor::NMultiplets ][ G4ExcitedMesonConstructor::NMesonTypes ] = 1396 { 1425 { 1397 { 142.0*MeV, 375.0*MeV, 78.0*MeV, 90.0*M << 1426 { 142.0*MeV, 360.0*MeV, 91.0*MeV, 90.0*MeV, 90.0*MeV }, 1398 { 258.0*MeV, 350.0*MeV, 0.0, 270.0*M << 1427 { 265.0*MeV, 350.0*MeV, 0.0, 270.0*MeV, 270.0*MeV }, 1399 { 420.0*MeV, 22.7*MeV, 54.5*MeV, 174.0*M << 1428 { 420.0*MeV, 24.3*MeV, 54.9*MeV, 174.0*MeV, 174.0*MeV }, 1400 { 107.0*MeV, 186.6*MeV, 86.0*MeV, 100.0*M << 1429 { 107.0*MeV, 185.1*MeV, 73.0*MeV, 98.5*MeV, 98.5*MeV }, 1401 { 258.0*MeV, 181.0*MeV, 225.0*MeV, 186.0*M << 1430 { 259.0*MeV, 181.0*MeV, 225.0*MeV, 186.0*MeV, 186.0*MeV }, 1402 { 250.0*MeV, 315.0*MeV, 0.0, 322.0*M << 1431 { 250.0*MeV, 315.0*MeV, 0.0, 320.0*MeV, 320.0*MeV }, 1403 { 161.0*MeV, 168.0*MeV, 87.0*MeV, 161.0*M << 1432 { 161.0*MeV, 168.0*MeV, 87.0*MeV, 159.0*MeV, 159.0*MeV }, 1404 { 400.0*MeV, 55.0*MeV, 90.0*MeV, 335.0*M << 1433 { 400.0*MeV, 55.0*MeV, 85.0*MeV, 260.0*MeV, 260.0*MeV }, 1405 { 400.0*MeV, 290.0*MeV, 150.0*MeV, 232.0*M << 1434 { 400.0*MeV, 215.0*MeV, 150.0*MeV, 232.0*MeV, 232.0*MeV }, 1406 { 0.0, 197.0*MeV, 202.0*MeV, 348.0*M << 1435 { 0.0, 197.0*MeV, 200.0*MeV, 373.0*MeV, 373.0*MeV } 1407 }; 1436 }; 1408 1437 1409 1438 1410 const G4int G4ExcitedMesonConstructor::iIs 1439 const G4int G4ExcitedMesonConstructor::iIsoSpin[] = 1411 { 1440 { 1412 // Tpi TEta TEtaPrime TK TAntiK 1441 // Tpi TEta TEtaPrime TK TAntiK 1413 2, 0, 0, 1, 1 1442 2, 0, 0, 1, 1 1414 }; 1443 }; 1415 1444 1416 const G4int G4ExcitedMesonConstructor::iSp 1445 const G4int G4ExcitedMesonConstructor::iSpin[] = 1417 { 1446 { 1418 //N 1 1 1 1 1 1 1 1447 //N 1 1 1 1 1 1 1 2 2 2 1419 // 1P1 3P0 3P1 3P2 1D2 3D1 3D3 1448 // 1P1 3P0 3P1 3P2 1D2 3D1 3D3 1S0 3S1 3P2 1420 2, 0, 2, 4, 4, 2, 6, 1449 2, 0, 2, 4, 4, 2, 6, 0, 2, 4 1421 }; 1450 }; 1422 1451 1423 const G4int G4ExcitedMesonConstructor::iPa 1452 const G4int G4ExcitedMesonConstructor::iParity[] = 1424 { 1453 { 1425 //N 1 1 1 1 1 1 1 1454 //N 1 1 1 1 1 1 1 2 2 2 1426 // 1P1 3P0 3P1 3P2 1D2 3D1 3D3 1455 // 1P1 3P0 3P1 3P2 1D2 3D1 3D3 1S0 3S1 3P2 1427 +1, +1, +1, +1, -1, -1, -1, 1456 +1, +1, +1, +1, -1, -1, -1, -1, -1, +1 1428 }; 1457 }; 1429 1458 1430 const G4int G4ExcitedMesonConstructor::iCh 1459 const G4int G4ExcitedMesonConstructor::iChargeConjugation[] = 1431 { 1460 { 1432 //N 1 1 1 1 1 1 1 1461 //N 1 1 1 1 1 1 1 2 2 2 1433 // 1P1 3P0 3P1 3P2 1D2 3D1 3D3 1462 // 1P1 3P0 3P1 3P2 1D2 3D1 3D3 1S0 3S1 3P2 1434 -1, +1, +1, +1, +1, -1, -1, 1463 -1, +1, +1, +1, +1, -1, -1, +1, -1, +1 1435 }; 1464 }; 1436 1465 1437 const G4int G4ExcitedMesonConstructor::iGP 1466 const G4int G4ExcitedMesonConstructor::iGParity[G4ExcitedMesonConstructor::NMultiplets ][ G4ExcitedMesonConstructor::NMesonTypes ]= 1438 { 1467 { 1439 { +1, -1, -1, 0, 0}, 1468 { +1, -1, -1, 0, 0}, 1440 { -1, +1, 0, 0, 0}, 1469 { -1, +1, 0, 0, 0}, 1441 { -1, +1, +1, 0, 0}, 1470 { -1, +1, +1, 0, 0}, 1442 { -1, +1, +1, 0, 0}, 1471 { -1, +1, +1, 0, 0}, 1443 { -1, +1, +1, 0, 0}, 1472 { -1, +1, +1, 0, 0}, 1444 { +1, -1, 0, 0, 0}, 1473 { +1, -1, 0, 0, 0}, 1445 { +1, -1, -1, 0, 0}, 1474 { +1, -1, -1, 0, 0}, 1446 { -1, +1, +1, 0, 0}, 1475 { -1, +1, +1, 0, 0}, 1447 { +1, -1, -1, 0, 0}, 1476 { +1, -1, -1, 0, 0}, 1448 { 0, +1, +1, 0, 0} 1477 { 0, +1, +1, 0, 0} 1449 }; 1478 }; 1450 1479 1451 1480 1452 const G4int G4ExcitedMesonConstructor::enc 1481 const G4int G4ExcitedMesonConstructor::encodingOffset[]= 1453 { 10000, 10000, 20000, 0, 10000, 30000, 1482 { 10000, 10000, 20000, 0, 10000, 30000, 0, 100000,100000,100000}; 1454 1483 1455 1484 1456 1485 1457 1486 1458 const G4double G4ExcitedMesonConstructor::bRa 1487 const G4double G4ExcitedMesonConstructor::bRatio[G4ExcitedMesonConstructor::NMultiplets][G4ExcitedMesonConstructor::NMesonTypes][G4ExcitedMesonConstructor::NumberOfDecayModes]= 1459 { 1488 { 1460 // 0 1 2 3 4 5 6 1489 // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1461 // "b1(1235)", "h1(1170)", "h1(1380)", << 1462 { 1490 { 1463 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 1491 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 1.00, 0.00, 0.00, 0.00 }, 1464 { 0.00, 0.00, 0.00, 0.90, 0.10, 0.00, 0.00 1492 { 0.00, 0.00, 0.00, 0.90, 0.10, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1465 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 1493 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 1.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1466 { 0.00, 0.47, 0.42, 0.11, 0.00, 0.00, 0.00 1494 { 0.00, 0.47, 0.42, 0.11, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1467 { 0.00, 0.47, 0.42, 0.11, 0.00, 0.00, 0.00 1495 { 0.00, 0.47, 0.42, 0.11, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 } 1468 }, 1496 }, 1469 // 0 1 2 3 4 5 6 1497 // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1470 // "a0(1450)", "f0(1370)", "", << 1471 { 1498 { 1472 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.90, 0.00 1499 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.90, 0.00, 0.00, 0.00, 0.10, 0.00, 0.00, 0.00, 0.10, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1473 { 0.00, 0.00, 0.10, 0.00, 0.00, 0.00, 0.70 1500 { 0.00, 0.00, 0.10, 0.00, 0.00, 0.00, 0.70, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.20, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1474 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 1501 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1475 { 1.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 1502 { 1.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1476 { 1.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 1503 { 1.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 } 1477 }, 1504 }, 1478 // 0 1 2 3 4 5 6 1505 // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1479 // "a1(1260)", "f1(1285)", "f1(1420)", << 1480 { 1506 { 1481 { 0.10, 0.00, 0.00, 0.90, 0.00, 0.00, 0.00 1507 { 0.10, 0.00, 0.00, 0.90, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1482 { 0.00, 0.07, 0.00, 0.00, 0.00, 0.00, 0.20 1508 { 0.00, 0.07, 0.00, 0.00, 0.00, 0.00, 0.20, 0.00, 0.54, 0.00, 0.10, 0.00, 0.00, 0.00, 0.09, 0.00, 0.00, 0.00, 0.00 }, 1483 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 1509 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.50, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.50, 0.00, 0.00, 0.00, 0.00 }, 1484 { 0.00, 0.96, 0.03, 0.01, 0.00, 0.00, 0.00 1510 { 0.00, 0.96, 0.03, 0.01, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1485 { 0.00, 0.96, 0.03, 0.01, 0.00, 0.00, 0.00 1511 { 0.00, 0.96, 0.03, 0.01, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 } 1486 }, 1512 }, 1487 // 0 1 2 3 4 5 6 1513 // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1488 //"a2(1320)", "f2(1270)","f2_prime(1525) << 1489 { 1514 { 1490 { 0.00, 0.00, 0.00, 0.70, 0.00, 0.14, 0.00 1515 { 0.00, 0.00, 0.00, 0.70, 0.00, 0.14, 0.00, 0.00, 0.00, 0.00, 0.00, 0.11, 0.00, 0.05, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1491 { 0.00, 0.00, 0.50, 0.00, 0.00, 0.00, 0.30 1516 { 0.00, 0.00, 0.50, 0.00, 0.00, 0.00, 0.30, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.20, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1492 { 0.00, 0.00, 0.01, 0.00, 0.00, 0.00, 0.00 1517 { 0.00, 0.00, 0.01, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.10, 0.89, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1493 { 0.50, 0.25, 0.09, 0.03, 0.13, 0.00, 0.00 1518 { 0.50, 0.25, 0.09, 0.03, 0.13, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1494 { 0.50, 0.25, 0.09, 0.03, 0.13, 0.00, 0.00 1519 { 0.50, 0.25, 0.09, 0.03, 0.13, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 } 1495 }, 1520 }, 1496 // 0 1 2 3 4 5 6 1521 // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1497 // "pi2(1670)", "eta2(1645)", "eta2(1870)" << 1498 { 1522 { 1499 { 0.00, 0.00, 0.00, 0.30, 0.00, 0.00, 0.00 1523 { 0.00, 0.00, 0.00, 0.30, 0.00, 0.00, 0.00, 0.04, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.56, 0.10, 0.00 }, 1500 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 1524 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.10, 0.00, 0.00, 0.00, 0.90 }, 1501 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.50 1525 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.50, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.50 }, 1502 { 0.00, 0.00, 0.00, 0.00, 0.00, 1.00, 0.00 1526 { 0.00, 0.00, 0.00, 0.00, 0.00, 1.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1503 { 0.00, 0.00, 0.00, 0.00, 0.00, 1.00, 0.00 1527 { 0.00, 0.00, 0.00, 0.00, 0.00, 1.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 } 1504 }, 1528 }, 1505 // 0 1 2 3 4 5 6 1529 // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1506 // "rho(1700)", "omega(1650)", "" << 1507 { 1530 { 1508 { 0.00, 0.00, 0.10, 0.00, 0.00, 0.20, 0.00 1531 { 0.00, 0.00, 0.10, 0.00, 0.00, 0.20, 0.00, 0.00, 0.00, 0.00, 0.70, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1509 { 0.00, 0.00, 0.00, 0.50, 0.00, 0.00, 0.00 1532 { 0.00, 0.00, 0.00, 0.50, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.50, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1510 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 1533 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1511 { 0.00, 0.40, 0.30, 0.30, 0.00, 0.00, 0.00 1534 { 0.00, 0.40, 0.30, 0.30, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1512 { 0.00, 0.40, 0.30, 0.30, 0.00, 0.00, 0.00 1535 { 0.00, 0.40, 0.30, 0.30, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 } 1513 }, 1536 }, 1514 // 0 1 2 3 4 5 6 1537 // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1515 // "rho3(1690)","omega3(1670)","phi3(1850) << 1516 { 1538 { 1517 { 0.00, 0.00, 0.24, 0.00, 0.00, 0.00, 0.60 1539 { 0.00, 0.00, 0.24, 0.00, 0.00, 0.00, 0.60, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.01, 0.04, 0.11, 0.00, 0.00, 0.00 }, 1518 { 0.00, 0.00, 0.00, 0.50, 0.00, 0.00, 0.00 1540 { 0.00, 0.00, 0.00, 0.50, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.50, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1519 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 1541 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.40, 0.00, 0.00, 0.00, 0.00, 0.00, 0.60, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1520 { 0.19, 0.20, 0.31, 0.00, 0.00, 0.00, 0.30 1542 { 0.19, 0.20, 0.31, 0.00, 0.00, 0.00, 0.30, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1521 { 0.19, 0.20, 0.31, 0.00, 0.00, 0.00, 0.30 1543 { 0.19, 0.20, 0.31, 0.00, 0.00, 0.00, 0.30, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 } 1522 }, 1544 }, 1523 // 0 1 2 3 4 5 6 1545 // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1524 // "pi(1300)", "eta(1295)", "eta(1475)", << 1525 { 1546 { 1526 { 0.00, 0.00, 0.00, 0.50, 0.50, 0.00, 0.00 1547 { 0.00, 0.00, 0.00, 0.50, 0.50, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1527 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 1548 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 1.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1528 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 1549 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.20, 0.20, 0.00, 0.00, 0.00, 0.00, 0.00, 0.60, 0.00, 0.00, 0.00, 0.00 }, 1529 { 0.00, 0.50, 0.50, 0.00, 0.00, 0.00, 0.00 1550 { 0.00, 0.50, 0.50, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1530 { 0.00, 0.50, 0.50, 0.00, 0.00, 0.00, 0.00 1551 { 0.00, 0.50, 0.50, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 } 1531 }, 1552 }, 1532 // 0 1 2 3 4 5 6 1553 // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1533 // "rho(1450)","omega(1420)", "phi(1680)" << 1534 { 1554 { 1535 { 0.00, 0.00, 0.50, 0.00, 0.00, 0.00, 0.50 1555 { 0.00, 0.00, 0.50, 0.00, 0.00, 0.00, 0.50, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1536 { 0.00, 0.00, 0.00, 1.00, 0.00, 0.00, 0.00 1556 { 0.00, 0.00, 0.00, 1.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1537 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 1557 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.80, 0.00, 0.00, 0.00, 0.00, 0.00, 0.10, 0.10, 0.00, 0.00, 0.00, 0.00 }, 1538 { 0.30, 0.65, 0.05, 0.00, 0.00, 0.00, 0.00 1558 { 0.30, 0.65, 0.05, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1539 { 0.30, 0.65, 0.05, 0.00, 0.00, 0.00, 0.00 1559 { 0.30, 0.65, 0.05, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 } 1540 }, 1560 }, 1541 // 0 1 2 3 4 5 6 1561 // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1542 // "", "f2(1810)", "f2(2010)", << 1543 { 1562 { 1544 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 1563 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1545 { 0.00, 0.00, 0.50, 0.00, 0.00, 0.00, 0.00 1564 { 0.00, 0.00, 0.50, 0.00, 0.00, 0.00, 0.00, 0.00, 0.30, 0.00, 0.00, 0.00, 0.00, 0.20, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1546 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 1565 { 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 1.00, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1547 { 0.00, 0.00, 0.60, 0.40, 0.00, 0.00, 0.00 1566 { 0.00, 0.00, 0.60, 0.40, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 }, 1548 { 0.00, 0.00, 0.60, 0.40, 0.00, 0.00, 0.00 1567 { 0.00, 0.00, 0.60, 0.40, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 } 1549 } 1568 } 1550 }; 1569 }; >> 1570 >> 1571 >> 1572 >> 1573 >> 1574 >> 1575 1551 1576