Geant4 Cross Reference |
1 // 1 // 2 // ******************************************* 2 // ******************************************************************** 3 // * License and Disclaimer 3 // * License and Disclaimer * 4 // * 4 // * * 5 // * The Geant4 software is copyright of th 5 // * The Geant4 software is copyright of the Copyright Holders of * 6 // * the Geant4 Collaboration. It is provided 6 // * the Geant4 Collaboration. It is provided under the terms and * 7 // * conditions of the Geant4 Software License 7 // * conditions of the Geant4 Software License, included in the file * 8 // * LICENSE and available at http://cern.ch/ 8 // * LICENSE and available at http://cern.ch/geant4/license . These * 9 // * include a list of copyright holders. 9 // * include a list of copyright holders. * 10 // * 10 // * * 11 // * Neither the authors of this software syst 11 // * Neither the authors of this software system, nor their employing * 12 // * institutes,nor the agencies providing fin 12 // * institutes,nor the agencies providing financial support for this * 13 // * work make any representation or warran 13 // * work make any representation or warranty, express or implied, * 14 // * regarding this software system or assum 14 // * regarding this software system or assume any liability for its * 15 // * use. Please see the license in the file 15 // * use. Please see the license in the file LICENSE and URL above * 16 // * for the full disclaimer and the limitatio 16 // * for the full disclaimer and the limitation of liability. * 17 // * 17 // * * 18 // * This code implementation is the result 18 // * This code implementation is the result of the scientific and * 19 // * technical work of the GEANT4 collaboratio 19 // * technical work of the GEANT4 collaboration. * 20 // * By using, copying, modifying or distri 20 // * By using, copying, modifying or distributing the software (or * 21 // * any work based on the software) you ag 21 // * any work based on the software) you agree to acknowledge its * 22 // * use in resulting scientific publicati 22 // * use in resulting scientific publications, and indicate your * 23 // * acceptance of all terms of the Geant4 Sof 23 // * acceptance of all terms of the Geant4 Software license. * 24 // ******************************************* 24 // ******************************************************************** 25 // 25 // 26 // 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 // $Id: G4SmpSpNugDistData.cc 68799 2013-04-05 13:29:46Z gcosmo $ 56 // 57 // 57 58 58 #include "G4fissionEvent.hh" 59 #include "G4fissionEvent.hh" 59 60 60 #define nSPfissg 30 61 #define nSPfissg 30 61 62 62 G4int G4fissionEvent::G4SmpSpNugDistData(G4int 63 G4int G4fissionEvent::G4SmpSpNugDistData(G4int isotope) { 63 64 64 /* 65 /* 65 Description 66 Description 66 Sample Number of Photons from spontaneous 67 Sample Number of Photons from spontaneous fission in 67 (a) Cf-252 using the double Poisson model 68 (a) Cf-252 using the double Poisson model from Brunson; 68 (b) Th-232, 69 (b) Th-232, 69 U-232, U-233, U-234, U-235, U-236, U-2 70 U-232, U-233, U-234, U-235, U-236, U-238*, 70 Np-237, 71 Np-237, 71 Pu-238*, Pu-239, Pu-240*, Pu-241, Pu-2 72 Pu-238*, Pu-239, Pu-240*, Pu-241, Pu-242*, 72 Am-241, 73 Am-241, 73 Cm-242*, Cm-244*, 74 Cm-242*, Cm-244*, 74 Bk-249 75 Bk-249 75 using the negative binomial distributi 76 using the negative binomial distribution based on the 76 spontaneous fission neutron nubar from 77 spontaneous fission neutron nubar from Ensslin's 77 tabulated data or Holden and Zucker's 78 tabulated data or Holden and Zucker's tabulated data 78 (for isotopes denoted with asterix *). 79 (for isotopes denoted with asterix *). 79 */ 80 */ 80 81 81 /* 82 /* 82 Input 83 Input 83 iso - isotope 84 iso - isotope 84 Output 85 Output 85 G4SmpSpNugDistData - sampled multiplicity 86 G4SmpSpNugDistData - sampled multiplicity 86 -1 if there is no multi 87 -1 if there is no multiplicity data for that isotope 87 */ 88 */ 88 89 89 G4int i; 90 G4int i; 90 G4double sum, nubar; 91 G4double sum, nubar; 91 G4double r; 92 G4double r; 92 93 93 static G4double Cf252spdist [nSPfissg] = { 94 static G4double Cf252spdist [nSPfissg] = { 94 5.162699e-4,3.742057e-3,1.360482e-2,3 95 5.162699e-4,3.742057e-3,1.360482e-2,3.312786e-2,6.090540e-2, 95 9.043537e-2,1.133984e-1,1.240985e-1,1 96 9.043537e-2,1.133984e-1,1.240985e-1,1.216759e-1,1.092255e-1, 96 9.137106e-2,7.219960e-2,5.438060e-2,3 97 9.137106e-2,7.219960e-2,5.438060e-2,3.923091e-2,2.714690e-2, 97 1.800781e-2,1.143520e-2,6.942099e-3,4 98 1.800781e-2,1.143520e-2,6.942099e-3,4.025720e-3,2.229510e-3, 98 1.179602e-3,5.966936e-4,2.888766e-4,1 99 1.179602e-3,5.966936e-4,2.888766e-4,1.340137e-4,5.965291e-5, 99 2.551191e-5,1.049692e-5,4.160575e-6,1 100 2.551191e-5,1.049692e-5,4.160575e-6,1.590596e-6,0.000000e+0 100 }; 101 }; 101 102 102 /* 103 /* 103 sample the spontaneous fission photon number 104 sample the spontaneous fission photon number distribution 104 */ 105 */ 105 nubar=0.; 106 nubar=0.; 106 if (isotope == 98252) { 107 if (isotope == 98252) { 107 // Cf-252 using the G4double Poisson model fr 108 // Cf-252 using the G4double Poisson model from Brunson; 108 r=fisslibrng(); 109 r=fisslibrng(); 109 110 110 sum = 0.; 111 sum = 0.; 111 for (i = 0; i < nSPfissg-1; i++) { 112 for (i = 0; i < nSPfissg-1; i++) { 112 sum = sum + Cf252spdist[i]; 113 sum = sum + Cf252spdist[i]; 113 if (r <= sum || Cf252spdist[i+1] == 0.) 114 if (r <= sum || Cf252spdist[i+1] == 0.) return i; 114 } 115 } 115 } else if (isotope == 92238) { 116 } else if (isotope == 92238) { 116 /* 117 /* 117 using the spontaneous fission nubar from 118 using the spontaneous fission nubar from 118 Holden and Zucker's tabulated data 119 Holden and Zucker's tabulated data 119 */ 120 */ 120 nubar = 1.9900002; 121 nubar = 1.9900002; 121 } else if (isotope == 94240) { 122 } else if (isotope == 94240) { 122 nubar = 2.1540006; 123 nubar = 2.1540006; 123 } else if (isotope == 94242) { 124 } else if (isotope == 94242) { 124 nubar = 2.1489998; 125 nubar = 2.1489998; 125 } else if (isotope == 96242) { 126 } else if (isotope == 96242) { 126 nubar = 2.54; 127 nubar = 2.54; 127 } else if (isotope == 96244) { 128 } else if (isotope == 96244) { 128 nubar = 2.7200005; 129 nubar = 2.7200005; 129 } else if (isotope == 94238) { 130 } else if (isotope == 94238) { 130 nubar = 2.2100301; 131 nubar = 2.2100301; 131 } 132 } 132 133 133 if (nubar != 0.) { 134 if (nubar != 0.) { 134 return G4SmpNugDist(isotope, nubar); 135 return G4SmpNugDist(isotope, nubar); 135 } else { 136 } else { 136 /* 137 /* 137 using the spontaneous fission nubar from 138 using the spontaneous fission nubar from 138 N. Ensslin, et.al., "Application Guide to 139 N. Ensslin, et.al., "Application Guide to Neutron 139 Multiplicity Counting," LA-13422-M (Novemb 140 Multiplicity Counting," LA-13422-M (November 1998) 140 */ 141 */ 141 nubar = G4SmpSpNubarData(isotope); 142 nubar = G4SmpSpNubarData(isotope); 142 if (nubar != -1.) { 143 if (nubar != -1.) { 143 return G4SmpNugDist(isotope, nubar); 144 return G4SmpNugDist(isotope, nubar); 144 } else { 145 } else { 145 // There is no nubar information for that isot 146 // There is no nubar information for that isotope, return -1, 146 // meaning no data available for that isotope 147 // meaning no data available for that isotope 147 return -1; 148 return -1; 148 } 149 } 149 } 150 } 150 } 151 } 151 152