Geant4-11
G4NP2NPAngDst.cc
Go to the documentation of this file.
1//
2// ********************************************************************
3// * License and Disclaimer *
4// * *
5// * The Geant4 software is copyright of the Copyright Holders of *
6// * the Geant4 Collaboration. It is provided under the terms and *
7// * conditions of the Geant4 Software License, included in the file *
8// * LICENSE and available at http://cern.ch/geant4/license . These *
9// * include a list of copyright holders. *
10// * *
11// * Neither the authors of this software system, nor their employing *
12// * institutes,nor the agencies providing financial support for this *
13// * work make any representation or warranty, express or implied, *
14// * regarding this software system or assume any liability for its *
15// * use. Please see the license in the file LICENSE and URL above *
16// * for the full disclaimer and the limitation of liability. *
17// * *
18// * This code implementation is the result of the scientific and *
19// * technical work of the GEANT4 collaboration. *
20// * By using, copying, modifying or distributing the software (or *
21// * any work based on the software) you agree to acknowledge its *
22// * use in resulting scientific publications, and indicate your *
23// * acceptance of all terms of the Geant4 Software license. *
24// ********************************************************************
25//
26// Author: Dennis Wright (SLAC)
27// Date: 19 March 2013
28//
29// Description: implementation of numerically integrated angular distribution
30// class for n p -> n p reaction
31//
32
33#include "G4NP2NPAngDst.hh"
34
35namespace {
36 static const G4double eBins[11] =
37 { 0.000, 0.090, 0.200, 0.300, 0.542, 0.802, 1.240,
38 2.250, 4.250, 5.900, 10.00};
39
40 static const G4double angleBins[19] =
41 { -1.000, -0.985, -0.940, -0.866, -0.766, -0.643, -0.500, -0.342, -0.174,
42 0.000, 0.174, 0.342, 0.500, 0.643, 0.766, 0.866, 0.940, 0.985,
43 1.000 };
44
45 static const G4double integralTable[11][19] = {
46 {0.0000, 0.0075, 0.0300, 0.0670, 0.1170, 0.1785, 0.2500, 0.3290, 0.4130,
47 0.5000, 0.5870, 0.6710, 0.7500, 0.8215, 0.8830, 0.9330, 0.9700, 0.9925,
48 1.0000},
49 {0.0000, 0.0149, 0.0569, 0.1182, 0.1889, 0.2613, 0.3320, 0.3995, 0.4642,
50 0.5264, 0.5858, 0.6428, 0.6998, 0.7596, 0.8229, 0.8872, 0.9450, 0.9855,
51 1.0000},
52 {0.0000, 0.0235, 0.0876, 0.1746, 0.2638, 0.3428, 0.4101, 0.4702, 0.5288,
53 0.5873, 0.6421, 0.6897, 0.7313, 0.7731, 0.8219, 0.8795, 0.9384, 0.9833,
54 1.0000},
55 {0.0000, 0.0193, 0.0722, 0.1447, 0.2200, 0.2874, 0.3448, 0.3965, 0.4488,
56 0.5062, 0.5685, 0.6331, 0.6983, 0.7637, 0.8290, 0.8923, 0.9478, 0.9863,
57 1.0000},
58 {0.0000, 0.0295, 0.1003, 0.1749, 0.2291, 0.2670, 0.3030, 0.3400, 0.3710,
59 0.3959, 0.4280, 0.4811, 0.5543, 0.6352, 0.7165, 0.8028, 0.8942, 0.9700,
60 1.0000},
61 {0.0000, 0.0212, 0.0733, 0.1306, 0.1745, 0.2050, 0.2312, 0.2566, 0.2785,
62 0.2958, 0.3152, 0.3473, 0.4003, 0.4782, 0.5832, 0.7129, 0.8505, 0.9588,
63 1.0000},
64 {0.0000, 0.0245, 0.0785, 0.1255, 0.1514, 0.1692, 0.1889, 0.2050, 0.2130,
65 0.2204, 0.2342, 0.2512, 0.2745, 0.3292, 0.4451, 0.6201, 0.8090, 0.9493,
66 1.0000},
67 {0.0000, 0.0015, 0.0052, 0.0098, 0.0140, 0.0175, 0.0202, 0.0224, 0.0244,
68 0.0266, 0.0295, 0.0337, 0.0416, 0.0568, 0.0920, 0.1773, 0.3946, 0.7789,
69 1.0000},
70 {0.0000, 0.0002, 0.0008, 0.0014, 0.0021, 0.0026, 0.0030, 0.0033, 0.0036,
71 0.0040, 0.0044, 0.0050, 0.0061, 0.0082, 0.0135, 0.0372, 0.1874, 0.6556,
72 1.0000},
73 {0.0000, 0.000052, 0.00019, 0.00038, 0.00059, 0.00078, 0.00095, 0.0011,
74 0.0013, 0.0014, 0.0016, 0.0019, 0.0022, 0.0028, 0.0045, 0.0147,
75 0.1074, 0.5550, 1.0000},
76 {0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,
77 0.0000, 0.0000, 2.5e-22, 5.0e-17, 2.3e-12, 2.3e-08, 0.000043, 0.0111,
78 0.3243, 1.0000}
79 };
80}
81
82// Constructor passes arrays to templated base class
83
85 : G4NumIntTwoBodyAngDst<11,19>("G4NP2NPAngDst", eBins, angleBins,
86 integralTable, 8.0, verbose)
87{}
88
double G4double
Definition: G4Types.hh:83
int G4int
Definition: G4Types.hh:85
G4NP2NPAngDst(G4int verbose=0)
static const G4double angleBins[19]
static const G4double integralTable[11][19]
static const G4double eBins[11]