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