Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/processes/hadronic/models/fission/src/G4SmpNEngCf252.cc

Version: [ ReleaseNotes ] [ 1.0 ] [ 1.1 ] [ 2.0 ] [ 3.0 ] [ 3.1 ] [ 3.2 ] [ 4.0 ] [ 4.0.p1 ] [ 4.0.p2 ] [ 4.1 ] [ 4.1.p1 ] [ 5.0 ] [ 5.0.p1 ] [ 5.1 ] [ 5.1.p1 ] [ 5.2 ] [ 5.2.p1 ] [ 5.2.p2 ] [ 6.0 ] [ 6.0.p1 ] [ 6.1 ] [ 6.2 ] [ 6.2.p1 ] [ 6.2.p2 ] [ 7.0 ] [ 7.0.p1 ] [ 7.1 ] [ 7.1.p1 ] [ 8.0 ] [ 8.0.p1 ] [ 8.1 ] [ 8.1.p1 ] [ 8.1.p2 ] [ 8.2 ] [ 8.2.p1 ] [ 8.3 ] [ 8.3.p1 ] [ 8.3.p2 ] [ 9.0 ] [ 9.0.p1 ] [ 9.0.p2 ] [ 9.1 ] [ 9.1.p1 ] [ 9.1.p2 ] [ 9.1.p3 ] [ 9.2 ] [ 9.2.p1 ] [ 9.2.p2 ] [ 9.2.p3 ] [ 9.2.p4 ] [ 9.3 ] [ 9.3.p1 ] [ 9.3.p2 ] [ 9.4 ] [ 9.4.p1 ] [ 9.4.p2 ] [ 9.4.p3 ] [ 9.4.p4 ] [ 9.5 ] [ 9.5.p1 ] [ 9.5.p2 ] [ 9.6 ] [ 9.6.p1 ] [ 9.6.p2 ] [ 9.6.p3 ] [ 9.6.p4 ] [ 10.0 ] [ 10.0.p1 ] [ 10.0.p2 ] [ 10.0.p3 ] [ 10.0.p4 ] [ 10.1 ] [ 10.1.p1 ] [ 10.1.p2 ] [ 10.1.p3 ] [ 10.2 ] [ 10.2.p1 ] [ 10.2.p2 ] [ 10.2.p3 ] [ 10.3 ] [ 10.3.p1 ] [ 10.3.p2 ] [ 10.3.p3 ] [ 10.4 ] [ 10.4.p1 ] [ 10.4.p2 ] [ 10.4.p3 ] [ 10.5 ] [ 10.5.p1 ] [ 10.6 ] [ 10.6.p1 ] [ 10.6.p2 ] [ 10.6.p3 ] [ 10.7 ] [ 10.7.p1 ] [ 10.7.p2 ] [ 10.7.p3 ] [ 10.7.p4 ] [ 11.0 ] [ 11.0.p1 ] [ 11.0.p2 ] [ 11.0.p3, ] [ 11.0.p4 ] [ 11.1 ] [ 11.1.1 ] [ 11.1.2 ] [ 11.1.3 ] [ 11.2 ] [ 11.2.1 ] [ 11.2.2 ] [ 11.3.0 ]

Diff markup

Differences between /processes/hadronic/models/fission/src/G4SmpNEngCf252.cc (Version 11.3.0) and /processes/hadronic/models/fission/src/G4SmpNEngCf252.cc (Version 11.2.2)


  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 //                                                 26 //
 27 // This software was developed by Lawrence Liv     27 // This software was developed by Lawrence Livermore National Laboratory.
 28 //                                                 28 //
 29 // Redistribution and use in source and binary     29 // Redistribution and use in source and binary forms, with or without
 30 // modification, are permitted provided that t     30 // modification, are permitted provided that the following conditions are met:
 31 //                                                 31 //
 32 // 1. Redistributions of source code must reta     32 // 1. Redistributions of source code must retain the above copyright notice,
 33 //   this list of conditions and the following     33 //   this list of conditions and the following disclaimer.
 34 // 2. Redistributions in binary form must repr     34 // 2. Redistributions in binary form must reproduce the above copyright notice,
 35 //   this list of conditions and the following     35 //   this list of conditions and the following disclaimer in the documentation
 36 //   and/or other materials provided with the      36 //   and/or other materials provided with the distribution.
 37 // 3. The name of the author may not be used t     37 // 3. The name of the author may not be used to endorse or promote products
 38 //   derived from this software without specif     38 //   derived from this software without specific prior written permission.
 39 //                                                 39 //
 40 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``A     40 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
 41 // WARRANTIES, INCLUDING, BUT NOT LIMITED TO,      41 // WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
 42 // MERCHANTABILITY AND FITNESS FOR A PARTICULA     42 // MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
 43 // EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DI     43 // EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 44 // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGE     44 // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
 45 // PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES     45 // PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
 46 // OR BUSINESS INTERRUPTION) HOWEVER CAUSED AN     46 // OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
 47 // WHETHER IN CONTRACT, STRICT LIABILITY, OR T     47 // WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
 48 // OTHERWISE) ARISING IN ANY WAY OUT OF THE US     48 // OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
 49 // ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.      49 // ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 50 //                                                 50 //
 51 // Copyright (c) 2006 The Regents of the Unive     51 // Copyright (c) 2006 The Regents of the University of California.
 52 // All rights reserved.                            52 // All rights reserved.
 53 // UCRL-CODE-224807                                53 // UCRL-CODE-224807
 54 //                                                 54 //
 55 //                                                 55 //
 56 //                                                 56 //
 57                                                    57 
 58 #include <cmath>                                   58 #include <cmath>
 59 #include "G4Log.hh"                                59 #include "G4Log.hh"
 60 #include "G4Pow.hh"                                60 #include "G4Pow.hh"
 61 #include "G4fissionEvent.hh"                       61 #include "G4fissionEvent.hh"
 62                                                    62 
 63 G4double G4fissionEvent::G4SmpNEngCf252(G4int      63 G4double G4fissionEvent::G4SmpNEngCf252(G4int option) {
 64                                                    64 
 65 /*                                                 65 /*
 66   Description                                      66   Description
 67     Sample energy spectrum for Cf-252.             67     Sample energy spectrum for Cf-252. 
 68 */                                                 68 */
 69                                                    69 
 70 /*                                                 70 /*
 71   Input                                            71   Input
 72     option    - 0 Mannhart corrected Maxwellia     72     option    - 0 Mannhart corrected Maxwellian spectrum
 73                 1 Madland-Nix theoretical spec     73                 1 Madland-Nix theoretical spectrum
 74                 2 Froehner Watt spectrum           74                 2 Froehner Watt spectrum
 75   Return                                           75   Return
 76     energy of neutron emitted by spontaneous f     76     energy of neutron emitted by spontaneous fission
 77 */                                                 77 */
 78                                                    78 
 79   G4Pow* Pow=G4Pow::GetInstance();                 79   G4Pow* Pow=G4Pow::GetInstance();
 80                                                    80 
 81   G4double a,b;                                    81   G4double a,b;
 82   G4double gpar;                                   82   G4double gpar;
 83   G4double g2;                                     83   G4double g2;
 84   G4double ferg;                                   84   G4double ferg;
 85   G4double r;                                      85   G4double r;
 86                                                    86 
 87   r = fisslibrng();                                87   r = fisslibrng();
 88                                                    88 
 89 /*                                                 89 /*
 90    Mannhart Corrected Spectrum                     90    Mannhart Corrected Spectrum
 91 */                                                 91 */
 92   if(option == 0) {                                92   if(option == 0) {
 93     if(r == 0) return 0.000001;                    93     if(r == 0) return 0.000001;
 94     if (r > 0.0 && r <= 0.0005)                    94     if (r > 0.0 && r <= 0.0005)
 95       return 0.00003 + 0.04992*(r/0.0005) - 0.     95       return 0.00003 + 0.04992*(r/0.0005) - 0.59473*Pow->powN(r/0.0005,2) 
 96            + 5.44877*Pow->powN(r/0.0005,3) - 2     96            + 5.44877*Pow->powN(r/0.0005,3) - 29.38086*Pow->powN(r/0.0005,4)
 97            + 97.14014*Pow->powN(r/0.0005,5) -      97            + 97.14014*Pow->powN(r/0.0005,5) - 202.82112*Pow->powN(r/0.0005,6)
 98            + 268.2301*Pow->powN(r/0.0005,7) -      98            + 268.2301*Pow->powN(r/0.0005,7) - 217.75316*Pow->powN(r/0.0005,8)
 99            + 98.96285*Pow->powN(r/0.0005,9) -      99            + 98.96285*Pow->powN(r/0.0005,9) - 19.27077*Pow->powN(r/0.0005,10);
100                                                   100 
101     if (r > 0.0005 && r <= 0.005)                 101     if (r > 0.0005 && r <= 0.005)
102       return 0.01118 + 0.06715*((r-.0005)/.004    102       return 0.01118 + 0.06715*((r-.0005)/.0045)
103            - 0.09236*Pow->powN((r-.0005)/.0045    103            - 0.09236*Pow->powN((r-.0005)/.0045,2) + 0.26224*Pow->powN((r-.0005)/.0045,3)
104            - 0.64784*Pow->powN((r-.0005)/.0045    104            - 0.64784*Pow->powN((r-.0005)/.0045,4) + 1.16830*Pow->powN((r-.0005)/.0045,5)
105            - 1.43858*Pow->powN((r-.0005)/.0045    105            - 1.43858*Pow->powN((r-.0005)/.0045,6) + 1.13771*Pow->powN((r-.0005)/.0045,7)
106            - 0.51839*Pow->powN((r-.0005)/.0045    106            - 0.51839*Pow->powN((r-.0005)/.0045,8) + 0.10302*Pow->powN((r-.0005)/.0045,9);
107                                                   107 
108     if (r > 0.005 && r <= 0.05)                   108     if (r > 0.005 && r <= 0.05)
109       return 0.05244+0.32101*((r-.005)/.045)      109       return 0.05244+0.32101*((r-.005)/.045)
110            -  0.52574*Pow->powN((r-.005)/.045,    110            -  0.52574*Pow->powN((r-.005)/.045,2) +   2.80540*Pow->powN((r-.005)/.045,3)
111            - 14.88036*Pow->powN((r-.005)/.045,    111            - 14.88036*Pow->powN((r-.005)/.045,4) +  55.46869*Pow->powN((r-.005)/.045,5)
112            -133.64517*Pow->powN((r-.005)/.045,    112            -133.64517*Pow->powN((r-.005)/.045,6) + 202.88434*Pow->powN((r-.005)/.045,7)
113            -186.86758*Pow->powN((r-.005)/.045,    113            -186.86758*Pow->powN((r-.005)/.045,8) +  95.19530*Pow->powN((r-.005)/.045,9)
114            - 20.55275*Pow->powN((r-.005)/.045,    114            - 20.55275*Pow->powN((r-.005)/.045,10);
115                                                   115 
116     if(r > 0.05 && r <= 0.25) return 0.25585+0    116     if(r > 0.05 && r <= 0.25) return 0.25585+0.75532*((r-.05)/.2)-0.73676*Pow->powN((r-.05)/.2,2)+3.65653*Pow->powN((r-.05)/.2,3)-13.80528*Pow->powN((r-.05)/.2,4)+33.35932*Pow->powN((r-.05)/.2,5)-50.0410*Pow->powN((r-.05)/.2,6)+45.13793*Pow->powN((r-.05)/.2,7)-22.4072*Pow->powN((r-.05)/.2,8)+4.70141*Pow->powN((r-.05)/.2,9);
117                                                   117 
118     if(r > 0.25 && r <= 0.50) return 0.87609+0    118     if(r > 0.25 && r <= 0.50) return 0.87609+0.74687*((r-.25)/.25)+0.02849*Pow->powN((r-.25)/.25,2)+0.06145*Pow->powN((r-.25)/.25,3)-0.09589*Pow->powN((r-.25)/.25,4)+0.29798*Pow->powN((r-.25)/.25,5)-0.57707*Pow->powN((r-.25)/.25,6)+0.66181*Pow->powN((r-.25)/.25,7)-0.40720*Pow->powN((r-.25)/.25,8)+0.10370*Pow->powN((r-.25)/.25,9);
119                                                   119 
120     if(r > 0.5 && r <= 0.75) return 1.69622+0.    120     if(r > 0.5 && r <= 0.75) return 1.69622+0.93896*((r-.5)/.25)+0.16428*Pow->powN((r-.5)/.25,2)+0.21761*Pow->powN((r-.5)/.25,3)-0.96904*Pow->powN((r-.5)/.25,4)+3.34951*Pow->powN((r-.5)/.25,5)-6.35177*Pow->powN((r-.5)/.25,6)+6.90120*Pow->powN((r-.5)/.25,7)-3.98682*Pow->powN((r-.5)/.25,8)+0.95276*Pow->powN((r-.5)/.25,9);
121                                                   121 
122     if(r > 0.75 && r <= 0.95) return 2.91217+1    122     if(r > 0.75 && r <= 0.95) return 2.91217+1.52474*((r-.75)/.2)-4.99340*Pow->powN((r-.75)/.2,2)+58.72977*Pow->powN((r-.75)/.2,3)-313.30984*Pow->powN((r-.75)/.2,4)+946.0791*Pow->powN((r-.75)/.2,5)-1679.85559*Pow->powN((r-.75)/.2,6)+1740.83984*Pow->powN((r-.75)/.2,7)-973.51886*Pow->powN((r-.75)/.2,8)+227.06831*Pow->powN((r-.75)/.2,9);
123      if(r > 0.95 && r <= 0.975) return 5.50137    123      if(r > 0.95 && r <= 0.975) return 5.50137-0.99765*((r-.95)/.025)+27.57678*Pow->powN((r-.95)/.025,2)-218.47931*Pow->powN((r-.95)/.025,3)+1024.0426*Pow->powN((r-.95)/.025,4)-3005.86182*Pow->powN((r-.95)/.025,5)+5684.52295*Pow->powN((r-.95)/.025,6)-6919.36182*Pow->powN((r-.95)/.025,7)+5235.71777*Pow->powN((r-.95)/.025,8)-2240.06934*Pow->powN((r-.95)/.025,9)+413.9299*Pow->powN((r-.95)/.025,10);
124                                                   124 
125      if(r > 0.975 && r <= 0.995) return 6.5217    125      if(r > 0.975 && r <= 0.995) return 6.52172+1.21273*((r-.975)/.02)+0.69998*Pow->powN((r-.975)/.02,2)-1.78886*Pow->powN((r-.975)/.02,3)+11.57883*Pow->powN((r-.975)/.02,4)-39.41592*Pow->powN((r-.975)/.02,5)+88.32992*Pow->powN((r-.975)/.02,6)-127.68685*Pow->powN((r-.975)/.02,7)+115.97678*Pow->powN((r-.975)/.02,8)-60.09069*Pow->powN((r-.975)/.02,9)+13.66798*Pow->powN((r-.975)/.02,10);
126      if(r > 0.995 && r <= 0.999) return 9.0050    126      if(r > 0.995 && r <= 0.999) return 9.00502+1.31798*((r-.995)/.004)-1.17448*Pow->powN((r-.995)/.004,2)+20.15941*Pow->powN((r-.995)/.004,3)-114.27763*Pow->powN((r-.995)/.004,4)+370.04855*Pow->powN((r-.995)/.004,5)-701.888*Pow->powN((r-.995)/.004,6)+776.28204*Pow->powN((r-.995)/.004,7)-462.68823*Pow->powN((r-.995)/.004,8)+115.05296*Pow->powN((r-.995)/.004,9);
127      if(r > 0.999 && r <= 0.9997) return 11.83    127      if(r > 0.999 && r <= 0.9997) return 11.83792-1.8952*((r-.999)/.0007)+50.30901*Pow->powN((r-.999)/.0007,2)-239.56978*Pow->powN((r-.999)/.0007,3)+514.90747*Pow->powN((r-.999)/.0007,4)-508.73672*Pow->powN((r-.999)/.0007,5)+191.09637*Pow->powN((r-.999)/.0007,6);
128      if(r > 0.9997) return 20.;                   128      if(r > 0.9997) return 20.;
129   }                                               129   }
130 /*                                                130 /*
131    Madland-Nix Spectrum                           131    Madland-Nix Spectrum
132 */                                                132 */
133   if(option == 1) {                               133   if(option == 1) {
134      if(r <= 1.001065092e-03) return 1.9463138    134      if(r <= 1.001065092e-03) return 1.946313876*Pow->powA(r,0.6667261950);
135      else if(r > 1.001065092e-03 && r <= 1.001    135      else if(r > 1.001065092e-03 && r <= 1.001389105e-02) return 2.00504119*Pow->powA(r,0.6709990736);
136      else if(r > 1.001389105e-02 && r <= 5.022    136      else if(r > 1.001389105e-02 && r <= 5.022359145e-02) return 2.107978578*Pow->powA(r,0.7077041191);
137      else if(r > 5.022359145e-02 && r <= 1.000    137      else if(r > 5.022359145e-02 && r <= 1.000989427e-01) return 2.280517358*Pow->powA(r,0.7077041191);
138      else if(r > 1.000989427e-01 && r <= 1.500    138      else if(r > 1.000989427e-01 && r <= 1.500872491e-01) return 2.444108408*Pow->powA(r,0.73764526215);
139      else if(r > 1.500872491e-01 && r <= 2.002    139      else if(r > 1.500872491e-01 && r <= 2.002079974e-01) return 2.621855634*Pow->powA(r,0.7745779546);
140      else if(r > 2.002079974e-01 && r <= 2.252    140      else if(r > 2.002079974e-01 && r <= 2.25221648e-01) return 2.753099265*Pow->powA(r,0.8044994010);
141      else if(r > 2.25221648e-01 && r <= 2.5015    141      else if(r > 2.25221648e-01 && r <= 2.501564538e-01) return 2.834010751*Pow->powA(r,0.8239187384);
142      else if(r > 2.501564538e-01 && r <= 2.752    142      else if(r > 2.501564538e-01 && r <= 2.752546770e-01) return 2.911676280*Pow->powA(r,0.8434235719);
143      else if(r > 2.752546770e-01 && r <= 3.000    143      else if(r > 2.752546770e-01 && r <= 3.000964724e-01) return 2.988430135*Pow->powA(r,0.8635883266);
144      else if(r > 3.000964724e-01 && r <= 3.500    144      else if(r > 3.000964724e-01 && r <= 3.500470095e-01) return 3.099471293*Pow->powA(r,0.8942289512);
145      else if(r > 3.500470095e-01 && r <= 4.001    145      else if(r > 3.500470095e-01 && r <= 4.001118970e-01) return 3.244686176*Pow->powA(r,0.9378302608);
146      else if(r > 4.001118970e-01 && r <= 5.000    146      else if(r > 4.001118970e-01 && r <= 5.000461778e-01) return 3.543403932*Pow->powA(r,1.0411008510);
147      else if(r > 5.000461778e-01 && r <= 5.501    147      else if(r > 5.000461778e-01 && r <= 5.501318506e-01) return 3.708358099*Pow->powA(r,1.1068317830);
148      else if(r > 5.501318506e-01 && r <= 6.000    148      else if(r > 5.501318506e-01 && r <= 6.000655433e-01) return 3.889805304*Pow->powA(r,1.1868908770);
149      else if(r > 6.000655433e-01 && r <= 6.500    149      else if(r > 6.000655433e-01 && r <= 6.500147305e-01) return 4.092497225*Pow->powA(r,1.2865658570);
150      else if(r > 6.500147305e-01 && r <= 7.000    150      else if(r > 6.500147305e-01 && r <= 7.000271284e-01) return 4.322906068*Pow->powA(r,1.4140909190);
151      else if(r > 7.000271284e-01 && r <= 7.501    151      else if(r > 7.000271284e-01 && r <= 7.501159110e-01) return 4.589909069*Pow->powA(r,1.5828217210);
152      else if(r > 7.501159110e-01 && r <= 8.000    152      else if(r > 7.501159110e-01 && r <= 8.000662513e-01) return 4.906598744*Pow->powA(r,1.8162034790);
153      else if(r > 8.000662513e-01 && r <= 8.500    153      else if(r > 8.000662513e-01 && r <= 8.500772033e-01) return 5.297053797*Pow->powA(r,2.1626825870);
154      else if(r > 8.500772033e-01 && r <= 8.750    154      else if(r > 8.500772033e-01 && r <= 8.750123088e-01) return 5.650277904*Pow->powA(r,2.5517142900);
155      else if(r > 8.750123088e-01 && r <= 9.000    155      else if(r > 8.750123088e-01 && r <= 9.000106866e-01) return 5.947741976*Pow->powA(r,2.9383159800);
156      else if(r > 9.000106866e-01 && r <= 9.250    156      else if(r > 9.000106866e-01 && r <= 9.250286977e-01) return 6.317014169*Pow->powA(r,3.5155713570);
157      else if(r > 9.250286977e-01 && r <= 9.350    157      else if(r > 9.250286977e-01 && r <= 9.350074655e-01) return 6.625757778*Pow->powA(r,4.1118364020);
158      else if(r > 9.350074655e-01 && r <= 9.400    158      else if(r > 9.350074655e-01 && r <= 9.400070002e-01) return 6.784126941*Pow->powA(r,4.4594479870);
159      else if(r > 9.400070002e-01 && r <= 9.500    159      else if(r > 9.400070002e-01 && r <= 9.500026229e-01) return 6.969180156*Pow->powA(r,4.9019105900);
160      else if(r > 9.500026229e-01 && r <= 9.600    160      else if(r > 9.500026229e-01 && r <= 9.600065896e-01) return 7.254643542*Pow->powA(r,5.6894827520);
161      else if(r > 9.600065896e-01 && r <= 9.700    161      else if(r > 9.600065896e-01 && r <= 9.700165577e-01) return 7.613500497*Pow->powA(r,6.8841593900);
162      else if(r > 9.700165577e-01 && r <= 9.750    162      else if(r > 9.700165577e-01 && r <= 9.750157135e-01) return 7.944100103*Pow->powA(r,8.2544400860);
163      else if(r > 9.750157135e-01 && r <= 9.800    163      else if(r > 9.750157135e-01 && r <= 9.800101585e-01) return 8.228439642*Pow->powA(r,9.6531190300);
164      else if(r > 9.800101585e-01 && r <= 9.850    164      else if(r > 9.800101585e-01 && r <= 9.850018119e-01) return 8.586524083*Pow->powA(r,11.783756400);
165      else if(r > 9.850018119e-01 && r <= 9.875    165      else if(r > 9.850018119e-01 && r <= 9.875072929e-01) return 8.917364901*Pow->powA(r,14.240137310);
166      else if(r > 9.875072929e-01 && r <= 9.900    166      else if(r > 9.875072929e-01 && r <= 9.900006975e-01) return 9.202675761*Pow->powA(r,16.76089029);
167      else if(r > 9.900006975e-01 && r <= 9.925    167      else if(r > 9.900006975e-01 && r <= 9.925048152e-01) return 9.562781386*Pow->powA(r,20.61962568);
168      else if(r > 9.925048152e-01 && r <= 9.935    168      else if(r > 9.925048152e-01 && r <= 9.935030103e-01) return 9.867915664*Pow->powA(r,24.69147261);
169      else if(r > 9.935030103e-01 && r <= 9.945    169      else if(r > 9.935030103e-01 && r <= 9.945000177e-01) return 10.08727342*Pow->powA(r,28.07701487);
170      else if(r > 9.945000177e-01 && r <= 9.950    170      else if(r > 9.945000177e-01 && r <= 9.950025127e-01) return 10.27382614*Pow->powA(r,31.36001051);
171      else if(r > 9.950025127e-01 && r <= 9.955    171      else if(r > 9.950025127e-01 && r <= 9.955029368e-01) return 10.41724243*Pow->powA(r,34.13127669);
172      else if(r > 9.955029368e-01 && r <= 9.960    172      else if(r > 9.955029368e-01 && r <= 9.960005970e-01) return 10.57636221*Pow->powA(r,37.50088614);
173      else if(r > 9.960005970e-01 && r <= 9.965    173      else if(r > 9.960005970e-01 && r <= 9.965016080e-01) return 10.75639015*Pow->powA(r,41.72354164);
174      else if(r > 9.965016080e-01 && r <= 9.970    174      else if(r > 9.965016080e-01 && r <= 9.970001795e-01) return 10.96366661*Pow->powA(r,47.18729543);
175      else if(r > 9.970001795e-01 && r <= 9.975    175      else if(r > 9.970001795e-01 && r <= 9.975004375e-01) return 11.20771170*Pow->powA(r,54.54899604);
176      else if(r > 9.975004375e-01 && r <= 9.978    176      else if(r > 9.975004375e-01 && r <= 9.978504408e-01) return 11.45202216*Pow->powA(r,63.11906699);
177      else if(r > 9.978504408e-01 && r <= 9.989    177      else if(r > 9.978504408e-01 && r <= 9.989524675e-01)
178        return 2.72756636666e5-5.47258138432e5*    178        return 2.72756636666e5-5.47258138432e5*r+2.74514044871e5*Pow->powN(r,2);
179      else if(r > 9.989524675e-01 && r <= 9.994    179      else if(r > 9.989524675e-01 && r <= 9.994929298e-01)
180        return 1.14946879661e6-2.30252188973e6*    180        return 1.14946879661e6-2.30252188973e6*r+1.15306661788e6*Pow->powN(r,2);
181      else if(r > 9.994929298e-01 && r <= 9.997    181      else if(r > 9.994929298e-01 && r <= 9.997558922e-01)
182        return 4.90621526236e6-9.81982943883e6*    182        return 4.90621526236e6-9.81982943883e6*r+4.91362868673e6*Pow->powN(r,2);
183      else if(r > 9.997558922e-01 && r <= 9.998    183      else if(r > 9.997558922e-01 && r <= 9.998830120e-01)
184        return 2.11365688795184e7-4.22884732250    184        return 2.11365688795184e7-4.22884732250404e7*r+2.11519198434219e7*Pow->powN(r,2);
185      else if(r > 9.998830120e-01 && r <= 9.999    185      else if(r > 9.998830120e-01 && r <= 9.999441620e-01)
186        return 9.18987945911229e7-1.83829506875    186        return 9.18987945911229e7-1.83829506875257e8*r+9.19307287711182e7*Pow->powN(r,2);
187      else if(r > 9.999441620e-01 && r <= 9.999    187      else if(r > 9.999441620e-01 && r <= 9.999734440e-01)
188        return 4.02781481130433e8-8.05629656768    188        return 4.02781481130433e8-8.05629656768407e8*r+4.02848193115356e8*Pow->powN(r,2);
189      else if(r > 9.999734440e-01 && r <= 9.999    189      else if(r > 9.999734440e-01 && r <= 9.999874120e-01)
190        return 1.77804635135775e9-3.55623257045    190        return 1.77804635135775e9-3.55623257045546e9*r+1.77818623756641e9*Pow->powN(r,2);
191      else if(r > 9.999874120e-01 && r <= 9.999    191      else if(r > 9.999874120e-01 && r <= 9.999940510e-01)
192        return 7.90099032702915e9-1.58022749659    192        return 7.90099032702915e9-1.58022749659903e10*r+7.90128465842187e9*Pow->powN(r,2);
193      else if(r > 9.999940510e-01 && r <= 9.999    193      else if(r > 9.999940510e-01 && r <= 9.999971960e-01)
194        return 3.53223507413091e10-7.0645322716    194        return 3.53223507413091e10-7.06453227162775e10*r+3.53229719954219e10*Pow->powN(r,2);
195      else if(r > 9.999971960e-01 && r <= 9.999    195      else if(r > 9.999971960e-01 && r <= 9.999986820e-01)
196        return 1.58786475903785e11-3.1757426684    196        return 1.58786475903785e11-3.17574266841213e11*r+1.58787790958875e11*Pow->powN(r,2);
197      else if(r > 9.999986820e-01 && r <= 9.999    197      else if(r > 9.999986820e-01 && r <= 9.999993820e-01)
198        return 7.17433904438156e11-1.4348705997    198        return 7.17433904438156e11-1.43487059972047e12*r+7.17436695304750e11*Pow->powN(r,2);
199      else if(r > 9.999993820e-01 && r <= 9.999    199      else if(r > 9.999993820e-01 && r <= 9.999997110e-01)
200        return 3.257374123945330e12-6.514754184    200        return 3.257374123945330e12-6.514754184993900e12*r+3.257380061072000e12*Pow->powN(r,2);
201      else if(r > 9.999997110e-01 && r <= 9.999    201      else if(r > 9.999997110e-01 && r <= 9.999998650e-01)
202        return 1.48641255466171e13-2.9728263753    202        return 1.48641255466171e13-2.97282637539286e13*r+1.48641382073360e13*Pow->powN(r,2);
203      else if(r > 9.999998650e-01 && r <= 9.999    203      else if(r > 9.999998650e-01 && r <= 9.999999370e-01)
204        return 6.82056055248876e13-1.3641123811    204        return 6.82056055248876e13-1.36411238119518e14*r+6.82056325946560e13*Pow->powN(r,2);
205      else if(r > 9.999999370e-01 && r <= 1.000    205      else if(r > 9.999999370e-01 && r <= 1.000000000e00)
206        return 3.14919363013517e14-6.2983878407    206        return 3.14919363013517e14-6.29838784079090e14*r+3.14919421065600e14*Pow->powN(r,2);
207   }                                               207   }
208 /*                                                208 /*
209    Frohner Watt Spectrum                          209    Frohner Watt Spectrum
210 */                                                210 */
211   if (option == 2) {                              211   if (option == 2) {
212     a=1.175;                                      212     a=1.175;
213     b=1.040;                                      213     b=1.040;
214                                                   214 
215     G4int icounter=0;                             215     G4int icounter=0;
216     G4int icounter_max=1024;                      216     G4int icounter_max=1024;
217     do {                                          217     do {
218       gpar = std::sqrt(Pow->powA(1+0.125*a*b,2    218       gpar = std::sqrt(Pow->powA(1+0.125*a*b,2.)-1)+(1+0.125*a*b);
219       g2=-G4Log(fisslibrng());                    219       g2=-G4Log(fisslibrng());
220       ferg=a*gpar*g2;                             220       ferg=a*gpar*g2;
221                                                   221       
222       icounter++;                                 222       icounter++;
223       if ( icounter > icounter_max ) {            223       if ( icounter > icounter_max ) { 
224    G4cout << "Loop-counter exceeded the thresh    224    G4cout << "Loop-counter exceeded the threshold value at " << __LINE__ << "th line of " << __FILE__ << "." << G4endl;
225          break;                                   225          break;
226       }                                           226       }
227                                                   227 
228     } while (Pow->powA((1-gpar)*(1+g2)-G4Log(f    228     } while (Pow->powA((1-gpar)*(1+g2)-G4Log(fisslibrng()),2.) > b*ferg);
229     // Loop checking, 11.03.2015, T. Koi          229     // Loop checking, 11.03.2015, T. Koi
230     return ferg;                                  230     return ferg;
231   }                                               231   }
232                                                   232 
233   //                                              233   //
234   // Fall through                                 234   // Fall through
235   //                                              235   //
236                                                   236    
237   G4cout << " SmpNEngCf252: unrecognized optio    237   G4cout << " SmpNEngCf252: unrecognized option = " << option << G4endl;
238   return -1.0;                                    238   return -1.0;
239 }                                                 239 }
240                                                   240