Ignore:
Timestamp:
May 28, 2009, 4:26:57 PM (15 years ago)
Author:
garnier
Message:

maj sur la beta de geant 4.9.3

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/processes/hadronic/models/chiral_inv_phase_space/interface/src/G4QNuENuclearCrossSection.cc

    r1007 r1055  
    2525//
    2626//
    27 // $Id: G4QNuENuclearCrossSection.cc,v 1.2 2007/11/01 16:09:38 mkossov Exp $
    28 // GEANT4 tag $Name: geant4-09-02 $
     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 $
    2929//
    3030//
     
    3737// ******* DO NOT MAKE ANY CHANGE! With time it'll move back to photolepton...(M.K.) ******
    3838// ****************************************************************************************
    39 //===============================================================================================
     39//=========================================================================================
    4040
    4141//#define debug
     
    9090        <<"("<<lastN<<"),PDG="<<pPDG<<"("<<lastPDG<<"), T="<<pEn<<"("<<lastTH<<")"<<",Sz="
    9191        <<colN.size()<<G4endl;
    92                 //CalculateCrossSection(fCS,-27,j,lastPDG,lastZ,lastN,pMom); // DUMMY TEST
     92  //CalculateCrossSection(fCS,-27,j,lastPDG,lastZ,lastN,pMom); // DUMMY TEST
    9393#endif
    9494  if(pPDG!=12)
     
    111111    j  = 0;                            // A#0f records found in DB for this projectile
    112112    if(lastI) for(G4int i=0; i<lastI; i++) if(colPDG[i]==pPDG) // The partType is found
    113            {                                  // The nucleus with projPDG is found in AMDB
     113    {                                  // The nucleus with projPDG is found in AMDB
    114114      if(colN[i]==tgN && colZ[i]==tgZ)
    115                                                 {
     115      {
    116116        lastI=i;
    117117        lastTH =colTH[i];                // Last THreshold (A-dependent)
     
    163163#endif
    164164      j++;                             // Increment a#0f records found in DB for this pPDG
    165            }
    166            if(!in)                            // This nucleus has not been calculated previously
    167            {
     165    }
     166    if(!in)                            // This nucleus has not been calculated previously
     167    {
    168168#ifdef pdebug
    169169      G4cout<<"G4QNENCS::GetCrSec: CalcNew P="<<pMom<<",f="<<fCS<<",lastI="<<lastI<<G4endl;
     
    172172      lastCS=CalculateCrossSection(fCS,0,j,lastPDG,lastZ,lastN,pMom); //calculate & create
    173173      if(lastCS<=0.)
    174                                                 {
     174      {
    175175        lastTH = ThresholdEnergy(tgZ, tgN); // The Threshold Energy which is now the last
    176176#ifdef pdebug
     
    184184          lastTH=pEn;
    185185        }
    186                                                 }
     186      }
    187187#ifdef pdebug
    188188      G4cout<<"G4QNENCS::GetCrosSec:New CS="<<lastCS<<",lZ="<<lastN<<",lN="<<lastZ<<G4endl;
     
    200200#endif
    201201      return lastCS*millibarn;
    202            } // End of creation of the new set of parameters
     202    } // End of creation of the new set of parameters
    203203    else
    204                                 {
     204    {
    205205#ifdef pdebug
    206206      G4cout<<"G4QNENCS::GetCS: Update lastI="<<lastI<<",j="<<j<<G4endl;
     
    245245G4double G4QNuENuclearCrossSection::ThresholdEnergy(G4int Z, G4int N, G4int)
    246246{
    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.;
    250250  static const G4double mN=.931494043;// Nucleon mass (inside nucleus, AtomicMassUnit, GeV)
    251251  static const G4double dmN=mN+mN;    // Doubled nucleon mass (2*AtomicMassUnit, GeV)
     
    294294  {
    295295    if(F<0)                          // This isotope was found in DAMDB =========> RETRIEVE
    296                                 {
     296    {
    297297      lastTX =TX[I];                 // Pointer to the prepared TX function (same isotope)
    298298      lastQE =QE[I];                 // Pointer to the prepared QE function (same isotope)
    299           }
    300           else                              // This isotope wasn't calculated previously => CREATE
    301           {
     299   }
     300   else                              // This isotope wasn't calculated previously => CREATE
     301   {
    302302      if(first)
    303303      {
     
    315315      TX.push_back(lastTX);
    316316      QE.push_back(lastQE);
    317            } // End of creation of the new set of parameters
     317    } // End of creation of the new set of parameters
    318318  } // End of parameters udate
    319319  // ============================== NOW Calculate the Cross Section =====================
     
    330330    G4int sep=ran;  // as a result = an index of the left edge of the interval
    331331    while(ran>=2)
    332                                 {
     332    {
    333333      G4int newran=ran/2;
    334334      if(lastE<=lastEN[sep]) sep-=newran;
     
    382382  static const G4int nE=65; // !! If change this, change it in CalculateCrossSection() !!
    383383  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};
    392392  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};
    401401  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};
    410410
    411411  // --------------------------------
    412412  G4int first=0;
    413413  if(z<0.)
    414                 {
     414  {
    415415    first=1;
    416416    z=-z;
     
    431431    t[k]=TOTX[k]*nuEn[k]*(na+na)/ta+QELX[k]*(dn+dn-da)/ta; // TotalCrossSection
    432432    q[k]=QELX[k]*dn/a;                                     // QuasiElasticCrossSection
    433         }
     433  }
    434434  return first;
    435435}
     
    450450  // Reversed table
    451451  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};
    462462  // Direct table
    463463  static const G4double Xmax=Xl[lQ2];
     
    465465  static const G4double dX=(Xmax-Xmin)/lQ2;  // step in X(Q2, GeV^2)
    466466  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};
    477477  G4double Enu=lastE;                 // Get energy of the last calculated cross-section
    478478  G4double dEnu=Enu+Enu;              // doubled energy of nu/anu
     
    541541  // Reversed table
    542542  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};
    545545  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};
    548548  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};
    551551  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};
    554554  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};
    557557  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};
    560560  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};
    563563  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};
    566566  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};
    569569  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};
    572572  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};
    575575  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};
    578578  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};
    581581  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};
    584584  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};
    587587  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};
    590590  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};
    593593  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};
    596596  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};
    599599  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};
    602602  // Direct table
    603603  static const G4double Xmin[nE]={X0[0],X1[0],X2[0],X3[0],X4[0],X5[0],X6[0],X7[0],X8[0],
     
    612612                             {X0,X1,X2,X3,X4,X5,X6,X7,X8,X9,XA,XB,XC,XD,XE,XF,XG,XH,XI,XJ};
    613613  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};
    616616  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};
    619619  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};
    622622  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};
    625625  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};
    628628  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};
    631631  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};
    634634  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};
    637637  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};
    640640  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};
    643643  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};
    646646  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};
    649649  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};
    652652  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};
    655655  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};
    658658  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};
    661661  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};
    664664  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};
    667667  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};
    670670  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};
    673673  static const G4double* Il[nE]=
    674674                             {I0,I1,I2,I3,I4,I5,I6,I7,I8,I9,IA,IB,IC,ID,IE,IF,IG,IH,II,IJ};
    675675  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};
    678678  static const G4double lEmi=lE[0];
    679679  static const G4double lEma=lE[nE-1];
    680680  static const G4double dlE=(lEma-lEmi)/bE;
    681         //***************************************************************************************
     681  //***************************************************************************************
    682682  G4double Enu=lastE;                 // Get energy of the last calculated cross-section
    683683  G4double lEn=std::log(Enu);         // log(E) for interpolation
Note: See TracChangeset for help on using the changeset viewer.