Geant4
9.6.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4ecpssrBaseKxsModel.hh
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
27
#ifndef G4ecpssrBaseKxsModel_hh
28
#define G4ecpssrBaseKxsModel_hh 1
29
30
#include "
G4VecpssrKModel.hh
"
31
#include "
globals.hh
"
32
#include <map>
33
#include <vector>
34
35
#include "
G4CrossSectionDataSet.hh
"
36
37
38
class
G4ecpssrBaseKxsModel
:
public
G4VecpssrKModel
39
{
40
public
:
41
42
G4ecpssrBaseKxsModel
();
43
44
~G4ecpssrBaseKxsModel
();
45
46
47
G4double
CalculateCrossSection
(
G4int
,
G4double
,
G4double
);
//according to W.Brandt and G.Lapicki, Phys.Rev.A23(1981)
48
49
G4double
ExpIntFunction
(
G4int
n,
G4double
x);
//Exponential Integral Function
50
51
private
:
52
53
G4ecpssrBaseKxsModel
(
const
G4ecpssrBaseKxsModel
&);
54
G4ecpssrBaseKxsModel
& operator = (
const
G4ecpssrBaseKxsModel
&right);
55
56
G4double
FunctionFK(
G4double
k,
G4double
theta);
57
58
G4double
LogLogInterpolate(
G4double
e1,
G4double
e2,
G4double
e,
G4double
xs1,
G4double
xs2);
59
60
G4double
LinLogInterpolate(
G4double
e1,
G4double
e2,
G4double
e,
G4double
xs1,
G4double
xs2);
61
62
G4double
QuadInterpolator(
G4double
e11,
63
G4double
e12,
64
G4double
e21,
65
G4double
e22,
66
G4double
x11,
67
G4double
x12,
68
G4double
x21,
69
G4double
x22,
70
G4double
t1,
71
G4double
t2,
72
G4double
t,
73
G4double
e);
74
75
typedef
std::map<double, std::map<double, double> > TriDimensionMap;
76
77
TriDimensionMap FKData;
78
std::vector<double> dummyVec;
79
80
typedef
std::map<double, std::vector<double> > VecMap;
81
VecMap aVecMap;
82
83
G4int
verboseLevel;
84
85
G4CrossSectionDataSet
* tableC1;
86
G4CrossSectionDataSet
* tableC2;
87
G4CrossSectionDataSet
* tableC3;
88
};
89
90
#endif
G4CrossSectionDataSet.hh
G4double
double G4double
Definition:
G4Types.hh:64
G4int
int G4int
Definition:
G4Types.hh:66
G4VecpssrKModel.hh
G4CrossSectionDataSet
Definition:
G4CrossSectionDataSet.hh:56
G4VecpssrKModel
Definition:
G4VecpssrKModel.hh:49
G4ecpssrBaseKxsModel
Definition:
G4ecpssrBaseKxsModel.hh:39
G4ecpssrBaseKxsModel::~G4ecpssrBaseKxsModel
~G4ecpssrBaseKxsModel()
Definition:
G4ecpssrBaseKxsModel.cc:113
G4ecpssrBaseKxsModel::CalculateCrossSection
G4double CalculateCrossSection(G4int, G4double, G4double)
Definition:
G4ecpssrBaseKxsModel.cc:196
G4ecpssrBaseKxsModel::ExpIntFunction
G4double ExpIntFunction(G4int n, G4double x)
Definition:
G4ecpssrBaseKxsModel.cc:124
G4ecpssrBaseKxsModel::G4ecpssrBaseKxsModel
G4ecpssrBaseKxsModel()
Definition:
G4ecpssrBaseKxsModel.cc:45
globals.hh
geant4-v9.6.0
source
processes
electromagnetic
lowenergy
include
G4ecpssrBaseKxsModel.hh
Generated by
1.9.6