Changeset 1055 for trunk/source/processes/hadronic/models/chiral_inv_phase_space/interface/src/G4QNuENuclearCrossSection.cc
- Timestamp:
- May 28, 2009, 4:26:57 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/processes/hadronic/models/chiral_inv_phase_space/interface/src/G4QNuENuclearCrossSection.cc
r1007 r1055 25 25 // 26 26 // 27 // $Id: G4QNuENuclearCrossSection.cc,v 1. 2 2007/11/01 16:09:38mkossov Exp $28 // GEANT4 tag $Name: geant4-09-0 2$27 // $Id: G4QNuENuclearCrossSection.cc,v 1.4 2009/05/08 15:16:26 mkossov Exp $ 28 // GEANT4 tag $Name: geant4-09-03-beta-cand-01 $ 29 29 // 30 30 // … … 37 37 // ******* DO NOT MAKE ANY CHANGE! With time it'll move back to photolepton...(M.K.) ****** 38 38 // **************************************************************************************** 39 //========================================================================================= ======39 //========================================================================================= 40 40 41 41 //#define debug … … 90 90 <<"("<<lastN<<"),PDG="<<pPDG<<"("<<lastPDG<<"), T="<<pEn<<"("<<lastTH<<")"<<",Sz=" 91 91 <<colN.size()<<G4endl; 92 92 //CalculateCrossSection(fCS,-27,j,lastPDG,lastZ,lastN,pMom); // DUMMY TEST 93 93 #endif 94 94 if(pPDG!=12) … … 111 111 j = 0; // A#0f records found in DB for this projectile 112 112 if(lastI) for(G4int i=0; i<lastI; i++) if(colPDG[i]==pPDG) // The partType is found 113 113 { // The nucleus with projPDG is found in AMDB 114 114 if(colN[i]==tgN && colZ[i]==tgZ) 115 115 { 116 116 lastI=i; 117 117 lastTH =colTH[i]; // Last THreshold (A-dependent) … … 163 163 #endif 164 164 j++; // Increment a#0f records found in DB for this pPDG 165 166 167 165 } 166 if(!in) // This nucleus has not been calculated previously 167 { 168 168 #ifdef pdebug 169 169 G4cout<<"G4QNENCS::GetCrSec: CalcNew P="<<pMom<<",f="<<fCS<<",lastI="<<lastI<<G4endl; … … 172 172 lastCS=CalculateCrossSection(fCS,0,j,lastPDG,lastZ,lastN,pMom); //calculate & create 173 173 if(lastCS<=0.) 174 174 { 175 175 lastTH = ThresholdEnergy(tgZ, tgN); // The Threshold Energy which is now the last 176 176 #ifdef pdebug … … 184 184 lastTH=pEn; 185 185 } 186 186 } 187 187 #ifdef pdebug 188 188 G4cout<<"G4QNENCS::GetCrosSec:New CS="<<lastCS<<",lZ="<<lastN<<",lN="<<lastZ<<G4endl; … … 200 200 #endif 201 201 return lastCS*millibarn; 202 202 } // End of creation of the new set of parameters 203 203 else 204 204 { 205 205 #ifdef pdebug 206 206 G4cout<<"G4QNENCS::GetCS: Update lastI="<<lastI<<",j="<<j<<G4endl; … … 245 245 G4double G4QNuENuclearCrossSection::ThresholdEnergy(G4int Z, G4int N, G4int) 246 246 { 247 //static const G4double mNeut = G4NucleiProperties::GetNuclearMass(1 .,0.)/GeV;248 //static const G4double mProt = G4NucleiProperties::GetNuclearMass(1 .,1.)/GeV;249 //static const G4double mDeut = G4NucleiProperties::GetNuclearMass(2 .,1.)/GeV/2.;247 //static const G4double mNeut = G4NucleiProperties::GetNuclearMass(1,0)/GeV; 248 //static const G4double mProt = G4NucleiProperties::GetNuclearMass(1,1)/GeV; 249 //static const G4double mDeut = G4NucleiProperties::GetNuclearMass(2,1)/GeV/2.; 250 250 static const G4double mN=.931494043;// Nucleon mass (inside nucleus, AtomicMassUnit, GeV) 251 251 static const G4double dmN=mN+mN; // Doubled nucleon mass (2*AtomicMassUnit, GeV) … … 294 294 { 295 295 if(F<0) // This isotope was found in DAMDB =========> RETRIEVE 296 296 { 297 297 lastTX =TX[I]; // Pointer to the prepared TX function (same isotope) 298 298 lastQE =QE[I]; // Pointer to the prepared QE function (same isotope) 299 300 301 299 } 300 else // This isotope wasn't calculated previously => CREATE 301 { 302 302 if(first) 303 303 { … … 315 315 TX.push_back(lastTX); 316 316 QE.push_back(lastQE); 317 317 } // End of creation of the new set of parameters 318 318 } // End of parameters udate 319 319 // ============================== NOW Calculate the Cross Section ===================== … … 330 330 G4int sep=ran; // as a result = an index of the left edge of the interval 331 331 while(ran>=2) 332 332 { 333 333 G4int newran=ran/2; 334 334 if(lastE<=lastEN[sep]) sep-=newran; … … 382 382 static const G4int nE=65; // !! If change this, change it in CalculateCrossSection() !! 383 383 static const G4double nuEn[nE]={thresh, 384 .00051331,.00053602,.00056078,.00058783,.00061743,.00064990,.00068559,.00072492,385 .00076834,.00081641,.00086975,.00092912,.00099536,.00106950,.00115273,.00124646,386 .00135235,.00147241,.00160901,.00176503,.00194392,.00214986,.00238797,.00266448,387 .00298709,.00336531,.00381094,.00433879,.00496745,.00572047,.00662785,.00772806,388 .00907075,.01072050,.01276190,.01530660,.01850330,.02255110,.02771990,.03437780,389 .04303240,.05438970,.06944210,.08959920,.11688400,.15423600,.20597200,.27851200,390 .38153100,.52979600,.74616300,1.0665200,1.5480900,2.2834800,3.4251100,5.2281000,391 8.1270200,12.875900,20.808500,34.331200,57.877800,99.796200,176.16300,318.68200};384 .00051331,.00053602,.00056078,.00058783,.00061743,.00064990,.00068559,.00072492, 385 .00076834,.00081641,.00086975,.00092912,.00099536,.00106950,.00115273,.00124646, 386 .00135235,.00147241,.00160901,.00176503,.00194392,.00214986,.00238797,.00266448, 387 .00298709,.00336531,.00381094,.00433879,.00496745,.00572047,.00662785,.00772806, 388 .00907075,.01072050,.01276190,.01530660,.01850330,.02255110,.02771990,.03437780, 389 .04303240,.05438970,.06944210,.08959920,.11688400,.15423600,.20597200,.27851200, 390 .38153100,.52979600,.74616300,1.0665200,1.5480900,2.2834800,3.4251100,5.2281000, 391 8.1270200,12.875900,20.808500,34.331200,57.877800,99.796200,176.16300,318.68200}; 392 392 static const G4double TOTX[nE]={0., 393 .00047551,.00162896,.00232785,.00292938,.00349456,.00404939,.00460908,.00518455,394 .00578488,.00641848,.00709376,.00781964,.00860585,.00946334,.01040460,.01144420,395 .01259910,.01388920,.01533830,.01697480,.01883260,.02095280,.02338500,.02618960,396 .02944060,.03322870,.03766580,.04289050,.04907540,.06123530,.07521120,.09034730,397 .10803800,.12856800,.15277600,.18174900,.21764300,.26083100,.31424900,.37935600,398 .45871900,.55375100,.66506600,.79039400,.92276600,1.0489000,1.1500300,1.2071700,399 1.2096800,1.1612200,1.0782900,.98251100,.89137400,.81472700,.75500100,.71061200,400 .67873900,.65619000,.64098400,.63085100,.62389900,.61664900,.61261000,.60635700};393 .00047551,.00162896,.00232785,.00292938,.00349456,.00404939,.00460908,.00518455, 394 .00578488,.00641848,.00709376,.00781964,.00860585,.00946334,.01040460,.01144420, 395 .01259910,.01388920,.01533830,.01697480,.01883260,.02095280,.02338500,.02618960, 396 .02944060,.03322870,.03766580,.04289050,.04907540,.06123530,.07521120,.09034730, 397 .10803800,.12856800,.15277600,.18174900,.21764300,.26083100,.31424900,.37935600, 398 .45871900,.55375100,.66506600,.79039400,.92276600,1.0489000,1.1500300,1.2071700, 399 1.2096800,1.1612200,1.0782900,.98251100,.89137400,.81472700,.75500100,.71061200, 400 .67873900,.65619000,.64098400,.63085100,.62389900,.61664900,.61261000,.60635700}; 401 401 static const G4double QELX[nE]={0., 402 2.44084e-7,8.73147e-7,1.30540e-6,1.72196e-6,2.15765e-6,2.63171e-6,3.15996e-6,3.75836e-6,403 4.44474e-6,5.24008e-6,6.16982e-6,7.26537e-6,8.56595e-6,1.01211e-5,1.19937e-5,1.42647e-5,404 1.70384e-5,2.04506e-5,2.46796e-5,2.99611e-5,3.66090e-5,4.50456e-5,5.58425e-5,6.97817e-5,405 8.79417e-5,.000111825,.000143542,.000186093,.000243780,.000350295,.000498489,.000698209,406 .000979989,.001378320,.001949710,.002781960,.004027110,.005882030,.008710940,.013041400,407 .019739800,.030118300,.046183600,.070818700,.107857000,.161778000,.236873000,.336212000,408 .455841000,.565128000,.647837000,.701208000,.729735000,.742062000,.746495000,.748182000,409 .749481000,.750637000,.751471000,.752237000,.752763000,.753103000,.753159000,.753315000};402 2.44084e-7,8.73147e-7,1.30540e-6,1.72196e-6,2.15765e-6,2.63171e-6,3.15996e-6,3.75836e-6, 403 4.44474e-6,5.24008e-6,6.16982e-6,7.26537e-6,8.56595e-6,1.01211e-5,1.19937e-5,1.42647e-5, 404 1.70384e-5,2.04506e-5,2.46796e-5,2.99611e-5,3.66090e-5,4.50456e-5,5.58425e-5,6.97817e-5, 405 8.79417e-5,.000111825,.000143542,.000186093,.000243780,.000350295,.000498489,.000698209, 406 .000979989,.001378320,.001949710,.002781960,.004027110,.005882030,.008710940,.013041400, 407 .019739800,.030118300,.046183600,.070818700,.107857000,.161778000,.236873000,.336212000, 408 .455841000,.565128000,.647837000,.701208000,.729735000,.742062000,.746495000,.748182000, 409 .749481000,.750637000,.751471000,.752237000,.752763000,.753103000,.753159000,.753315000}; 410 410 411 411 // -------------------------------- 412 412 G4int first=0; 413 413 if(z<0.) 414 414 { 415 415 first=1; 416 416 z=-z; … … 431 431 t[k]=TOTX[k]*nuEn[k]*(na+na)/ta+QELX[k]*(dn+dn-da)/ta; // TotalCrossSection 432 432 q[k]=QELX[k]*dn/a; // QuasiElasticCrossSection 433 433 } 434 434 return first; 435 435 } … … 450 450 // Reversed table 451 451 static const G4double Xl[nQ2]={1.87905e-10, 452 .005231, .010602, .016192, .022038, .028146, .034513, .041130, .047986, .055071,.062374,453 .069883, .077587, .085475, .093539, .101766, .110150, .118680, .127348, .136147,.145069,454 .154107, .163255, .172506, .181855, .191296, .200825, .210435, .220124, .229886,.239718,455 .249617, .259578, .269598, .279675, .289805, .299986, .310215, .320490, .330808,.341169,456 .351568, .362006, .372479, .382987, .393527, .404099, .414700, .425330, .435987,.446670,457 .457379, .468111, .478866, .489643, .500441, .511260, .522097, .532954, .543828,.554720,458 .565628, .576553, .587492, .598447, .609416, .620398, .631394, .642403, .653424,.664457,459 .675502, .686557, .697624, .708701, .719788, .730886, .741992, .753108, .764233,.775366,460 .786508, .797658, .808816, .819982, .831155, .842336, .853524, .864718, .875920,.887128,461 .898342, .909563, .920790, .932023, .943261, .954506, .965755, .977011, .988271,.999539};452 .005231, .010602, .016192, .022038, .028146, .034513, .041130, .047986, .055071, .062374, 453 .069883, .077587, .085475, .093539, .101766, .110150, .118680, .127348, .136147, .145069, 454 .154107, .163255, .172506, .181855, .191296, .200825, .210435, .220124, .229886, .239718, 455 .249617, .259578, .269598, .279675, .289805, .299986, .310215, .320490, .330808, .341169, 456 .351568, .362006, .372479, .382987, .393527, .404099, .414700, .425330, .435987, .446670, 457 .457379, .468111, .478866, .489643, .500441, .511260, .522097, .532954, .543828, .554720, 458 .565628, .576553, .587492, .598447, .609416, .620398, .631394, .642403, .653424, .664457, 459 .675502, .686557, .697624, .708701, .719788, .730886, .741992, .753108, .764233, .775366, 460 .786508, .797658, .808816, .819982, .831155, .842336, .853524, .864718, .875920, .887128, 461 .898342, .909563, .920790, .932023, .943261, .954506, .965755, .977011, .988271, .999539}; 462 462 // Direct table 463 463 static const G4double Xmax=Xl[lQ2]; … … 465 465 static const G4double dX=(Xmax-Xmin)/lQ2; // step in X(Q2, GeV^2) 466 466 static const G4double inl[nQ2]={0, 467 1.88843, 3.65455, 5.29282, 6.82878, 8.28390, 9.67403, 11.0109, 12.3034, 13.5583,14.7811,468 15.9760, 17.1466, 18.2958, 19.4260, 20.5392, 21.6372, 22.7215, 23.7933, 24.8538,25.9039,469 26.9446, 27.9766, 29.0006, 30.0171, 31.0268, 32.0301, 33.0274, 34.0192, 35.0058,35.9876,470 36.9649, 37.9379, 38.9069, 39.8721, 40.8337, 41.7920, 42.7471, 43.6992, 44.6484,45.5950,471 46.5390, 47.4805, 48.4197, 49.3567, 50.2916, 51.2245, 52.1554, 53.0846, 54.0120,54.9377,472 55.8617, 56.7843, 57.7054, 58.6250, 59.5433, 60.4603, 61.3761, 62.2906, 63.2040,64.1162,473 65.0274, 65.9375, 66.8467, 67.7548, 68.6621, 69.5684, 70.4738, 71.3784, 72.2822,73.1852,474 74.0875, 74.9889, 75.8897, 76.7898, 77.6892, 78.5879, 79.4860, 80.3835, 81.2804,82.1767,475 83.0724, 83.9676, 84.8622, 85.7563, 86.6499, 87.5430, 88.4356, 89.3277, 90.2194,91.1106,476 92.0013, 92.8917, 93.7816, 94.6711, 95.5602, 96.4489, 97.3372, 98.2252, 99.1128,100.000};467 1.88843, 3.65455, 5.29282, 6.82878, 8.28390, 9.67403, 11.0109, 12.3034, 13.5583, 14.7811, 468 15.9760, 17.1466, 18.2958, 19.4260, 20.5392, 21.6372, 22.7215, 23.7933, 24.8538, 25.9039, 469 26.9446, 27.9766, 29.0006, 30.0171, 31.0268, 32.0301, 33.0274, 34.0192, 35.0058, 35.9876, 470 36.9649, 37.9379, 38.9069, 39.8721, 40.8337, 41.7920, 42.7471, 43.6992, 44.6484, 45.5950, 471 46.5390, 47.4805, 48.4197, 49.3567, 50.2916, 51.2245, 52.1554, 53.0846, 54.0120, 54.9377, 472 55.8617, 56.7843, 57.7054, 58.6250, 59.5433, 60.4603, 61.3761, 62.2906, 63.2040, 64.1162, 473 65.0274, 65.9375, 66.8467, 67.7548, 68.6621, 69.5684, 70.4738, 71.3784, 72.2822, 73.1852, 474 74.0875, 74.9889, 75.8897, 76.7898, 77.6892, 78.5879, 79.4860, 80.3835, 81.2804, 82.1767, 475 83.0724, 83.9676, 84.8622, 85.7563, 86.6499, 87.5430, 88.4356, 89.3277, 90.2194, 91.1106, 476 92.0013, 92.8917, 93.7816, 94.6711, 95.5602, 96.4489, 97.3372, 98.2252, 99.1128, 100.000}; 477 477 G4double Enu=lastE; // Get energy of the last calculated cross-section 478 478 G4double dEnu=Enu+Enu; // doubled energy of nu/anu … … 541 541 // Reversed table 542 542 static const G4double X0[nX]={6.14081e-05, 543 .413394, .644455, .843199, 1.02623, 1.20032, 1.36916, 1.53516, 1.70008, 1.86539,2.03244,544 2.20256, 2.37723, 2.55818, 2.74762, 2.94857, 3.16550, 3.40582, 3.68379, 4.03589,4.77419};543 .413394, .644455, .843199, 1.02623, 1.20032, 1.36916, 1.53516, 1.70008, 1.86539, 2.03244, 544 2.20256, 2.37723, 2.55818, 2.74762, 2.94857, 3.16550, 3.40582, 3.68379, 4.03589, 4.77419}; 545 545 static const G4double X1[nX]={.00125268, 546 .861178, 1.34230, 1.75605, 2.13704, 2.49936, 2.85072, 3.19611, 3.53921, 3.88308,4.23049,547 4.58423, 4.94735, 5.32342, 5.71700, 6.13428, 6.58447, 7.08267, 7.65782, 8.38299,9.77330};546 .861178, 1.34230, 1.75605, 2.13704, 2.49936, 2.85072, 3.19611, 3.53921, 3.88308, 4.23049, 547 4.58423, 4.94735, 5.32342, 5.71700, 6.13428, 6.58447, 7.08267, 7.65782, 8.38299, 9.77330}; 548 548 static const G4double X2[nX]={.015694, 549 1.97690, 3.07976, 4.02770, 4.90021, 5.72963, 6.53363, 7.32363, 8.10805, 8.89384,9.68728,550 10.4947, 11.3228, 12.1797, 13.0753, 14.0234, 15.0439, 16.1692, 17.4599, 19.0626,21.7276};549 1.97690, 3.07976, 4.02770, 4.90021, 5.72963, 6.53363, 7.32363, 8.10805, 8.89384, 9.68728, 550 10.4947, 11.3228, 12.1797, 13.0753, 14.0234, 15.0439, 16.1692, 17.4599, 19.0626, 21.7276}; 551 551 static const G4double X3[nX]={.0866877, 552 4.03498, 6.27651, 8.20056, 9.96931, 11.6487, 13.2747, 14.8704, 16.4526, 18.0351,19.6302,553 21.2501, 22.9075, 24.6174, 26.3979, 28.2730, 30.2770, 32.4631, 34.9243, 37.8590,41.9115};552 4.03498, 6.27651, 8.20056, 9.96931, 11.6487, 13.2747, 14.8704, 16.4526, 18.0351, 19.6302, 553 21.2501, 22.9075, 24.6174, 26.3979, 28.2730, 30.2770, 32.4631, 34.9243, 37.8590, 41.9115}; 554 554 static const G4double X4[nX]={.160483, 555 5.73111, 8.88884, 11.5893, 14.0636, 16.4054, 18.6651, 20.8749, 23.0578, 25.2318,27.4127,556 29.6152, 31.8540, 34.1452, 36.5074, 38.9635, 41.5435, 44.2892, 47.2638, 50.5732,54.4265};555 5.73111, 8.88884, 11.5893, 14.0636, 16.4054, 18.6651, 20.8749, 23.0578, 25.2318, 27.4127, 556 29.6152, 31.8540, 34.1452, 36.5074, 38.9635, 41.5435, 44.2892, 47.2638, 50.5732, 54.4265}; 557 557 static const G4double X5[nX]={.0999307, 558 5.25720, 8.11389, 10.5375, 12.7425, 14.8152, 16.8015, 18.7296, 20.6194, 22.4855,24.3398,559 26.1924, 28.0527, 29.9295, 31.8320, 33.7699, 35.7541, 37.7975, 39.9158, 42.1290,44.4649};558 5.25720, 8.11389, 10.5375, 12.7425, 14.8152, 16.8015, 18.7296, 20.6194, 22.4855, 24.3398, 559 26.1924, 28.0527, 29.9295, 31.8320, 33.7699, 35.7541, 37.7975, 39.9158, 42.1290, 44.4649}; 560 560 static const G4double X6[nX]={.0276367, 561 3.53378, 5.41553, 6.99413, 8.41629, 9.74057, 10.9978, 12.2066, 13.3796, 14.5257,15.6519,562 16.7636, 17.8651, 18.9603, 20.0527, 21.1453, 22.2411, 23.3430, 24.4538, 25.5765,26.7148};561 3.53378, 5.41553, 6.99413, 8.41629, 9.74057, 10.9978, 12.2066, 13.3796, 14.5257, 15.6519, 562 16.7636, 17.8651, 18.9603, 20.0527, 21.1453, 22.2411, 23.3430, 24.4538, 25.5765, 26.7148}; 563 563 static const G4double X7[nX]={.00472383, 564 2.08253, 3.16946, 4.07178, 4.87742, 5.62140, 6.32202, 6.99034, 7.63368, 8.25720,8.86473,565 9.45921, 10.0430, 10.6179, 11.1856, 11.7475, 12.3046, 12.8581, 13.4089, 13.9577,14.5057};564 2.08253, 3.16946, 4.07178, 4.87742, 5.62140, 6.32202, 6.99034, 7.63368, 8.25720, 8.86473, 565 9.45921, 10.0430, 10.6179, 11.1856, 11.7475, 12.3046, 12.8581, 13.4089, 13.9577, 14.5057}; 566 566 static const G4double X8[nX]={.000630783, 567 1.22723, 1.85845, 2.37862, 2.84022, 3.26412, 3.66122, 4.03811, 4.39910, 4.74725,5.08480,568 5.41346, 5.73457, 6.04921, 6.35828, 6.66250, 6.96250, 7.25884, 7.55197, 7.84232,8.13037};567 1.22723, 1.85845, 2.37862, 2.84022, 3.26412, 3.66122, 4.03811, 4.39910, 4.74725, 5.08480, 568 5.41346, 5.73457, 6.04921, 6.35828, 6.66250, 6.96250, 7.25884, 7.55197, 7.84232, 8.13037}; 569 569 static const G4double X9[nX]={7.49179e-05, 570 .772574, 1.16623, 1.48914, 1.77460, 2.03586, 2.27983, 2.51069, 2.73118, 2.94322,3.14823,571 3.34728, 3.54123, 3.73075, 3.91638, 4.09860, 4.27779, 4.45428, 4.62835, 4.80025,4.97028};570 .772574, 1.16623, 1.48914, 1.77460, 2.03586, 2.27983, 2.51069, 2.73118, 2.94322, 3.14823, 571 3.34728, 3.54123, 3.73075, 3.91638, 4.09860, 4.27779, 4.45428, 4.62835, 4.80025, 4.97028}; 572 572 static const G4double XA[nX]={8.43437e-06, 573 .530035, .798454, 1.01797, 1.21156, 1.38836, 1.55313, 1.70876, 1.85712, 1.99956,2.13704,574 2.27031, 2.39994, 2.52640, 2.65007, 2.77127, 2.89026, 3.00726, 3.12248,3.23607, 3.34823};573 .530035, .798454, 1.01797, 1.21156, 1.38836, 1.55313, 1.70876, 1.85712, 1.99956, 2.13704, 574 2.27031, 2.39994, 2.52640, 2.65007, 2.77127, 2.89026, 3.00726, 3.12248, 3.23607, 3.34823}; 575 575 static const G4double XB[nX]={9.27028e-07, 576 .395058, .594211, .756726, .899794, 1.03025, 1.15167, 1.26619, 1.37523, 1.47979,1.58059,577 1.67819, 1.77302, 1.86543, 1.95571, 2.04408, 2.13074, 2.21587, 2.29960,2.38206, 2.46341};576 .395058, .594211, .756726, .899794, 1.03025, 1.15167, 1.26619, 1.37523, 1.47979, 1.58059, 577 1.67819, 1.77302, 1.86543, 1.95571, 2.04408, 2.13074, 2.21587, 2.29960, 2.38206, 2.46341}; 578 578 static const G4double XC[nX]={1.00807e-07, 579 .316195, .474948, .604251, .717911, .821417, .917635, 1.00829, 1.09452, 1.17712,1.25668,580 1.33364, 1.40835, 1.48108, 1.55207, 1.62150, 1.68954, 1.75631, 1.82193,1.88650, 1.95014};579 .316195, .474948, .604251, .717911, .821417, .917635, 1.00829, 1.09452, 1.17712, 1.25668, 580 1.33364, 1.40835, 1.48108, 1.55207, 1.62150, 1.68954, 1.75631, 1.82193, 1.88650, 1.95014}; 581 581 static const G4double XD[nX]={1.09102e-08, 582 .268227, .402318, .511324, .606997, .694011, .774803, .850843, .923097, .992243,1.05878,583 1.12309, 1.18546, 1.24613, 1.30530, 1.36313, 1.41974, 1.47526, 1.52978, 1.58338,1.63617};582 .268227, .402318, .511324, .606997, .694011, .774803, .850843, .923097, .992243, 1.05878, 583 1.12309, 1.18546, 1.24613, 1.30530, 1.36313, 1.41974, 1.47526, 1.52978, 1.58338, 1.63617}; 584 584 static const G4double XE[nX]={1.17831e-09, 585 .238351, .356890, .453036, .537277, .613780, .684719, .751405, .814699, .875208,.933374,586 .989535, 1.04396, 1.09685, 1.14838, 1.19870, 1.24792, 1.29615, 1.34347,1.38996, 1.43571};585 .238351, .356890, .453036, .537277, .613780, .684719, .751405, .814699, .875208, .933374, 586 .989535, 1.04396, 1.09685, 1.14838, 1.19870, 1.24792, 1.29615, 1.34347, 1.38996, 1.43571}; 587 587 static const G4double XF[nX]={1.27141e-10, 588 .219778, .328346, .416158, .492931, .562525, .626955, .687434, .744761, .799494,.852046,589 .902729, .951786, .999414, 1.04577, 1.09099, 1.13518, 1.17844, 1.22084, 1.26246,1.30338};588 .219778, .328346, .416158, .492931, .562525, .626955, .687434, .744761, .799494, .852046, 589 .902729, .951786, .999414, 1.04577, 1.09099, 1.13518, 1.17844, 1.22084, 1.26246, 1.30338}; 590 590 static const G4double XG[nX]={1.3713e-11, 591 .208748, .310948, .393310, .465121, .530069, .590078, .646306, .699515, .750239,.798870,592 .845707, .890982, .934882, .977559, 1.01914, 1.05973, 1.09941, 1.13827,1.17637, 1.21379};591 .208748, .310948, .393310, .465121, .530069, .590078, .646306, .699515, .750239, .798870, 592 .845707, .890982, .934882, .977559, 1.01914, 1.05973, 1.09941, 1.13827, 1.17637, 1.21379}; 593 593 static const G4double XH[nX]={1.47877e-12, 594 .203089, .301345, .380162, .448646, .510409, .567335, .620557, .670820, .718647,.764421,595 .808434, .850914, .892042, .931967, .970812, 1.00868, 1.04566, 1.08182,1.11724, 1.15197};594 .203089, .301345, .380162, .448646, .510409, .567335, .620557, .670820, .718647, .764421, 595 .808434, .850914, .892042, .931967, .970812, 1.00868, 1.04566, 1.08182, 1.11724, 1.15197}; 596 596 static const G4double XI[nX]={1.59454e-13, 597 .201466, .297453, .374007, .440245, .499779, .554489, .605506, .653573, .699213,.742806,598 .784643, .824952, .863912, .901672, .938353, .974060, 1.00888, 1.04288, 1.07614,1.10872};597 .201466, .297453, .374007, .440245, .499779, .554489, .605506, .653573, .699213, .742806, 598 .784643, .824952, .863912, .901672, .938353, .974060, 1.00888, 1.04288, 1.07614, 1.10872}; 599 599 static const G4double XJ[nX]={1.71931e-14, 600 .202988, .297870, .373025, .437731, .495658, .548713, .598041, .644395, .688302,.730147,601 .770224, .808762, .845943, .881916, .916805, .950713, .983728, 1.01592,1.04737, 1.07813};600 .202988, .297870, .373025, .437731, .495658, .548713, .598041, .644395, .688302, .730147, 601 .770224, .808762, .845943, .881916, .916805, .950713, .983728, 1.01592, 1.04737, 1.07813}; 602 602 // Direct table 603 603 static const G4double Xmin[nE]={X0[0],X1[0],X2[0],X3[0],X4[0],X5[0],X6[0],X7[0],X8[0], … … 612 612 {X0,X1,X2,X3,X4,X5,X6,X7,X8,X9,XA,XB,XC,XD,XE,XF,XG,XH,XI,XJ}; 613 613 static const G4double I0[nX]={0, 614 .411893, 1.25559, 2.34836, 3.60264, 4.96046, 6.37874, 7.82342, 9.26643, 10.6840,12.0555,615 13.3628, 14.5898, 15.7219, 16.7458, 17.6495, 18.4217, 19.0523, 19.5314,19.8501, 20.0000};614 .411893, 1.25559, 2.34836, 3.60264, 4.96046, 6.37874, 7.82342, 9.26643, 10.6840, 12.0555, 615 13.3628, 14.5898, 15.7219, 16.7458, 17.6495, 18.4217, 19.0523, 19.5314, 19.8501, 20.0000}; 616 616 static const G4double I1[nX]={0, 617 .401573, 1.22364, 2.28998, 3.51592, 4.84533, 6.23651, 7.65645, 9.07796, 10.4780,11.8365,618 13.1360, 14.3608, 15.4967, 16.5309, 17.4516, 18.2481, 18.9102, 19.4286,19.7946, 20.0000};617 .401573, 1.22364, 2.28998, 3.51592, 4.84533, 6.23651, 7.65645, 9.07796, 10.4780, 11.8365, 618 13.1360, 14.3608, 15.4967, 16.5309, 17.4516, 18.2481, 18.9102, 19.4286, 19.7946, 20.0000}; 619 619 static const G4double I2[nX]={0, 620 .387599, 1.17339, 2.19424, 3.37090, 4.65066, 5.99429, 7.37071, 8.75427, 10.1232,11.4586,621 12.7440, 13.9644, 15.1065, 16.1582, 17.1083, 17.9465, 18.6634, 19.2501,19.6982, 20.0000};620 .387599, 1.17339, 2.19424, 3.37090, 4.65066, 5.99429, 7.37071, 8.75427, 10.1232, 11.4586, 621 12.7440, 13.9644, 15.1065, 16.1582, 17.1083, 17.9465, 18.6634, 19.2501, 19.6982, 20.0000}; 622 622 static const G4double I3[nX]={0, 623 .366444, 1.09391, 2.04109, 3.13769, 4.33668, 5.60291, 6.90843, 8.23014, 9.54840,10.8461,624 12.1083, 13.3216, 14.4737, 15.5536, 16.5512, 17.4573, 18.2630, 18.9603,19.5417, 20.0000};623 .366444, 1.09391, 2.04109, 3.13769, 4.33668, 5.60291, 6.90843, 8.23014, 9.54840, 10.8461, 624 12.1083, 13.3216, 14.4737, 15.5536, 16.5512, 17.4573, 18.2630, 18.9603, 19.5417, 20.0000}; 625 625 static const G4double I4[nX]={0, 626 .321962, .959681, 1.79769, 2.77753, 3.85979, 5.01487, 6.21916, 7.45307, 8.69991,9.94515,627 11.1759, 12.3808, 13.5493, 14.6720, 15.7402, 16.7458, 17.6813, 18.5398,19.3148, 20.0000};626 .321962, .959681, 1.79769, 2.77753, 3.85979, 5.01487, 6.21916, 7.45307, 8.69991, 9.94515, 627 11.1759, 12.3808, 13.5493, 14.6720, 15.7402, 16.7458, 17.6813, 18.5398, 19.3148, 20.0000}; 628 628 static const G4double I5[nX]={0, 629 .257215, .786302, 1.49611, 2.34049, 3.28823, 4.31581, 5.40439, 6.53832, 7.70422,8.89040,630 10.0865, 11.2833, 12.4723, 13.6459, 14.7969, 15.9189, 17.0058, 18.0517,19.0515, 20.0000};629 .257215, .786302, 1.49611, 2.34049, 3.28823, 4.31581, 5.40439, 6.53832, 7.70422, 8.89040, 630 10.0865, 11.2833, 12.4723, 13.6459, 14.7969, 15.9189, 17.0058, 18.0517, 19.0515, 20.0000}; 631 631 static const G4double I6[nX]={0, 632 .201608, .638914, 1.24035, 1.97000, 2.80354, 3.72260, 4.71247, 5.76086, 6.85724,7.99243,633 9.15826, 10.3474, 11.5532, 12.7695, 13.9907, 15.2117, 16.4275, 17.6337,18.8258, 20.0000};632 .201608, .638914, 1.24035, 1.97000, 2.80354, 3.72260, 4.71247, 5.76086, 6.85724, 7.99243, 633 9.15826, 10.3474, 11.5532, 12.7695, 13.9907, 15.2117, 16.4275, 17.6337, 18.8258, 20.0000}; 634 634 static const G4double I7[nX]={0, 635 .168110, .547208, 1.07889, 1.73403, 2.49292, 3.34065, 4.26525, 5.25674, 6.30654,7.40717,636 8.55196, 9.73492, 10.9506, 12.1940, 13.4606, 14.7460, 16.0462, 17.3576,18.6767, 20.0000};635 .168110, .547208, 1.07889, 1.73403, 2.49292, 3.34065, 4.26525, 5.25674, 6.30654, 7.40717, 636 8.55196, 9.73492, 10.9506, 12.1940, 13.4606, 14.7460, 16.0462, 17.3576, 18.6767, 20.0000}; 637 637 static const G4double I8[nX]={0, 638 .150652, .497557, .990048, 1.60296, 2.31924, 3.12602, 4.01295, 4.97139, 5.99395,7.07415,639 8.20621, 9.38495, 10.6057, 11.8641, 13.1561, 14.4781, 15.8267, 17.1985,18.5906, 20.0000};638 .150652, .497557, .990048, 1.60296, 2.31924, 3.12602, 4.01295, 4.97139, 5.99395, 7.07415, 639 8.20621, 9.38495, 10.6057, 11.8641, 13.1561, 14.4781, 15.8267, 17.1985, 18.5906, 20.0000}; 640 640 static const G4double I9[nX]={0, 641 .141449, .470633, .941304, 1.53053, 2.22280, 3.00639, 3.87189, 4.81146, 5.81837,6.88672,642 8.01128, 9.18734, 10.4106, 11.6772, 12.9835, 14.3261, 15.7019, 17.1080,18.5415, 20.0000};641 .141449, .470633, .941304, 1.53053, 2.22280, 3.00639, 3.87189, 4.81146, 5.81837, 6.88672, 642 8.01128, 9.18734, 10.4106, 11.6772, 12.9835, 14.3261, 15.7019, 17.1080, 18.5415, 20.0000}; 643 643 static const G4double IA[nX]={0, 644 .136048, .454593, .912075, 1.48693, 2.16457, 2.93400, 3.78639, 4.71437, 5.71163,6.77265,645 7.89252, 9.06683, 10.2916, 11.5631, 12.8780, 14.2331, .625500, 17.0525,18.5115, 20.0000};644 .136048, .454593, .912075, 1.48693, 2.16457, 2.93400, 3.78639, 4.71437, 5.71163, 6.77265, 645 7.89252, 9.06683, 10.2916, 11.5631, 12.8780, 14.2331, .625500, 17.0525, 18.5115, 20.0000}; 646 646 static const G4double IB[nX]={0, 647 .132316, .443455, .891741, 1.45656, 2.12399, 2.88352, 3.72674, 4.64660, 5.63711,6.69298,648 7.80955, 8.98262, 10.2084, 11.4833, 12.8042, 14.1681, 15.5721, 17.0137,18.4905, 20.0000};647 .132316, .443455, .891741, 1.45656, 2.12399, 2.88352, 3.72674, 4.64660, 5.63711, 6.69298, 648 7.80955, 8.98262, 10.2084, 11.4833, 12.8042, 14.1681, 15.5721, 17.0137, 18.4905, 20.0000}; 649 649 static const G4double IC[nX]={0, 650 .129197, .434161, .874795, 1.43128, 2.09024, 2.84158, 3.67721, 4.59038, 5.57531,6.62696,651 7.74084, 8.91291, 10.1395, 11.4173, 12.7432, 14.1143, 15.5280, 16.9817,18.4731, 20.0000};650 .129197, .434161, .874795, 1.43128, 2.09024, 2.84158, 3.67721, 4.59038, 5.57531, 6.62696, 651 7.74084, 8.91291, 10.1395, 11.4173, 12.7432, 14.1143, 15.5280, 16.9817, 18.4731, 20.0000}; 652 652 static const G4double ID[nX]={0, 653 .126079, .424911, .857980, 1.40626, 2.05689, 2.80020, 3.62840, 4.53504, 5.51456,6.56212,654 7.67342, 8.84458, 10.0721, 11.3527, 12.6836, 14.0618, 15.4849, 16.9504,18.4562, 20.0000};653 .126079, .424911, .857980, 1.40626, 2.05689, 2.80020, 3.62840, 4.53504, 5.51456, 6.56212, 654 7.67342, 8.84458, 10.0721, 11.3527, 12.6836, 14.0618, 15.4849, 16.9504, 18.4562, 20.0000}; 655 655 static const G4double IE[nX]={0, 656 .122530, .414424, .838964, 1.37801, 2.01931, 2.75363, 3.57356, 4.47293, 5.44644,6.48949,657 7.59795, 8.76815, 9.99673, 11.2806, 12.6170, 14.0032, 15.4369, 16.9156,18.4374, 20.0000};656 .122530, .414424, .838964, 1.37801, 2.01931, 2.75363, 3.57356, 4.47293, 5.44644, 6.48949, 657 7.59795, 8.76815, 9.99673, 11.2806, 12.6170, 14.0032, 15.4369, 16.9156, 18.4374, 20.0000}; 658 658 static const G4double IF[nX]={0, 659 .118199, .401651, .815838, 1.34370, 1.97370, 2.69716, 3.50710, 4.39771, 5.36401,6.40164,660 7.50673, 8.67581, 9.90572, 11.1936, 12.5367, 13.9326, 15.3790, 16.8737,18.4146, 20.0000};659 .118199, .401651, .815838, 1.34370, 1.97370, 2.69716, 3.50710, 4.39771, 5.36401, 6.40164, 660 7.50673, 8.67581, 9.90572, 11.1936, 12.5367, 13.9326, 15.3790, 16.8737, 18.4146, 20.0000}; 661 661 static const G4double IG[nX]={0, 662 .112809, .385761, .787075, 1.30103, 1.91700, 2.62697, 3.42451, 4.30424, 5.26158,6.29249,663 7.39341, 8.56112, 9.79269, 11.0855, 12.4369, 13.8449, 15.3071, 16.8216,18.3865, 20.0000};662 .112809, .385761, .787075, 1.30103, 1.91700, 2.62697, 3.42451, 4.30424, 5.26158, 6.29249, 663 7.39341, 8.56112, 9.79269, 11.0855, 12.4369, 13.8449, 15.3071, 16.8216, 18.3865, 20.0000}; 664 664 static const G4double IH[nX]={0, 665 .106206, .366267, .751753, 1.24859, 1.84728, 2.54062, 3.32285, .189160, 5.13543,6.15804,666 7.25377, 8.41975, 9.65334, 10.9521, 12.3139, 13.7367, 15.2184, 16.7573,18.3517, 20.0000};665 .106206, .366267, .751753, 1.24859, 1.84728, 2.54062, 3.32285, .189160, 5.13543, 6.15804, 666 7.25377, 8.41975, 9.65334, 10.9521, 12.3139, 13.7367, 15.2184, 16.7573, 18.3517, 20.0000}; 667 667 static const G4double II[nX]={0, 668 .098419, .343194, .709850, 1.18628, 1.76430, 2.43772, 3.20159, 4.05176, 4.98467,5.99722,669 7.08663, 8.25043, 9.48633, 10.7923, 12.1663, 13.6067, 15.1118, 16.6800, 18.3099,20.0000};668 .098419, .343194, .709850, 1.18628, 1.76430, 2.43772, 3.20159, 4.05176, 4.98467, 5.99722, 669 7.08663, 8.25043, 9.48633, 10.7923, 12.1663, 13.6067, 15.1118, 16.6800, 18.3099, 20.0000}; 670 670 static const G4double IJ[nX]={0, 671 .089681, .317135, .662319, 1.11536, 1.66960, 2.32002, 3.06260, 3.89397, 4.81126,5.81196,672 6.89382, 8.05483, 9.29317, 10.6072, 11.9952, 13.4560, 14.9881, 16.5902,18.2612, 20.0000};671 .089681, .317135, .662319, 1.11536, 1.66960, 2.32002, 3.06260, 3.89397, 4.81126, 5.81196, 672 6.89382, 8.05483, 9.29317, 10.6072, 11.9952, 13.4560, 14.9881, 16.5902, 18.2612, 20.0000}; 673 673 static const G4double* Il[nE]= 674 674 {I0,I1,I2,I3,I4,I5,I6,I7,I8,I9,IA,IB,IC,ID,IE,IF,IG,IH,II,IJ}; 675 675 static const G4double lE[nE]={ 676 -1.98842,-1.58049,-1.17256,-.764638,-.356711, .051215, .459141, .867068, 1.27499,1.68292,677 2.09085, 2.49877, 2.90670, 3.31463, 3.72255, 4.13048, 4.53840, 4.94633, 5.35426,5.76218};676 -1.98842,-1.58049,-1.17256,-.764638,-.356711, .051215, .459141, .867068, 1.27499, 1.68292, 677 2.09085, 2.49877, 2.90670, 3.31463, 3.72255, 4.13048, 4.53840, 4.94633, 5.35426, 5.76218}; 678 678 static const G4double lEmi=lE[0]; 679 679 static const G4double lEma=lE[nE-1]; 680 680 static const G4double dlE=(lEma-lEmi)/bE; 681 681 //*************************************************************************************** 682 682 G4double Enu=lastE; // Get energy of the last calculated cross-section 683 683 G4double lEn=std::log(Enu); // log(E) for interpolation
Note: See TracChangeset
for help on using the changeset viewer.