ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
Home page
Related Pages
Modules
Namespaces
Classes
Files
External Links
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
G4TransitionRadiation.hh
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file G4TransitionRadiation.hh
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
// G4TransitionRadiation -- header file
28
//
29
// Class for description of transition radiation generated
30
// by charged particle crossed interface between material 1
31
// and material 2 (1 -> 2). Transition radiation could be of kind:
32
// - optical back
33
// - optical forward
34
// - X-ray forward (for relativistic case Tkin/mass >= 10^2)
35
//
36
// GEANT 4 class header file --- Copyright CERN 1995
37
// CERB Geneva Switzerland
38
//
39
// for information related to this code, please, contact
40
// CERN, CN Division, ASD Group
41
// History:
42
// 18.12.97, V. Grichine (Vladimir.Grichine@cern.ch)
43
// 02.02.00, V.Grichine, new data fEnergy and fVarAngle for double
44
// numerical integration in inherited classes
45
// 03.06.03, V.Ivanchenko fix compilation warnings
46
// 28.07.05, P.Gumplinger add G4ProcessType to constructor
47
48
#ifndef G4TransitionRadiation_h
49
#define G4TransitionRadiation_h
50
51
52
#include "
G4VDiscreteProcess.hh
"
53
#include "
G4Material.hh
"
54
55
class
G4TransitionRadiation
:
public
G4VDiscreteProcess
56
{
57
public
:
58
59
explicit
G4TransitionRadiation
(
const
G4String
& processName =
"TR"
,
60
G4ProcessType
type =
fElectromagnetic
) ;
61
62
virtual
~G4TransitionRadiation
() ;
63
64
// Methods
65
66
G4bool
IsApplicable
(
const
G4ParticleDefinition
& aParticleType)
override
;
67
68
virtual
G4double
GetMeanFreePath
(
const
G4Track
&,
G4double
,
69
G4ForceCondition
*
condition
)
override
;
70
71
virtual
G4VParticleChange
*
PostStepDoIt
(
const
G4Track
&,
72
const
G4Step
&)
override
;
73
74
virtual
75
G4double
SpectralAngleTRdensity
(
G4double
energy
,
76
G4double
varAngle )
const
= 0 ;
77
78
G4double
IntegralOverEnergy
(
G4double
energy1,
79
G4double
energy2,
80
G4double
varAngle )
const
;
81
82
G4double
IntegralOverAngle
(
G4double
energy,
83
G4double
varAngle1,
84
G4double
varAngle2 )
const
;
85
86
G4double
AngleIntegralDistribution
(
G4double
varAngle1,
87
G4double
varAngle2 )
const
;
88
89
G4double
EnergyIntegralDistribution
(
G4double
energy1,
90
G4double
energy2 )
const
;
91
92
93
94
// Access functions
95
96
protected
:
97
98
G4int
fMatIndex1
;
// index of the 1st material
99
G4int
fMatIndex2
;
// index of the 2nd material
100
101
// private :
102
103
G4double
fGamma
;
104
G4double
fEnergy
;
105
G4double
fVarAngle
;
106
107
// Local constants
108
static
const
G4int
fSympsonNumber
;
// Accuracy of Sympson integration 10
109
static
const
G4int
fGammaNumber
;
// = 15
110
static
const
G4int
fPointNumber
;
// = 100
111
112
G4double
fMinEnergy
;
// min TR energy
113
G4double
fMaxEnergy
;
// max TR energy
114
G4double
fMaxTheta
;
// max theta of TR quanta
115
116
G4double
fSigma1
;
// plasma energy Sq of matter1
117
G4double
fSigma2
;
// plasma energy Sq of matter2
118
119
private
:
120
121
// Operators
122
G4TransitionRadiation
(
const
G4TransitionRadiation
&
right
) =
delete
;
123
G4TransitionRadiation
&
124
operator=
(
const
G4TransitionRadiation
&
right
) =
delete
;
125
126
};
127
128
#endif // G4TransitionRadiation_h
geant4
tree
geant4-10.6-release
source
processes
electromagnetic
xrays
include
G4TransitionRadiation.hh
Built by
Jin Huang
. updated:
Wed Jun 29 2022 17:25:36
using
1.8.2 with
ECCE GitHub integration