Garfield++
v1r0
A toolkit for the detailed simulation of particle detectors based on ionisation measurement in gases and semiconductors
Loading...
Searching...
No Matches
HeedPhoton.h
Go to the documentation of this file.
1
#ifndef HEEDPHOTON_H
2
#define HEEDPHOTON_H
3
4
#include "
heed++/code/HeedMatterDef.h
"
5
#include "
wcpplib/geometry/gparticle.h
"
6
/*
7
Definition of the photon which can be emitted at atomic relaxation cascades
8
and traced through the geometry.
9
10
2003, I. Smirnov
11
*/
12
13
//#define SFER_PHOTOEL // make direction of photoelectron absolutely random
14
15
namespace
Heed
{
16
17
class
HeedPhoton
:
public
gparticle
{
18
public
:
19
long
particle_number
;
20
long
parent_particle_number
;
21
int
s_print_listing
;
// convenient to print internal algorithms
22
// of a selected event
23
24
double
energy
;
// MeV
25
int
s_photon_absorbed
;
// used in physics_after_new_speed
26
long
na_absorbing
;
// number of absorbing atom
27
long
ns_absorbing
;
// number of absorbing shell
28
#ifdef SFER_PHOTOEL
29
int
s_sfer_photoel;
30
#endif
31
// sign that delta-electrons are already generated (or cannot be created)
32
int
s_delta_generated
;
33
34
HeedPhoton
(
manip_absvol
* primvol,
const
point
& pt,
const
vec
& vel,
35
vfloat
time,
long
fparent_particle_number,
36
double
fenergy,
int
fs_print_listing = 0);
37
void
physics_after_new_speed
(
void
);
38
virtual
void
physics
(
void
);
39
HeedPhoton
(
void
) :
gparticle
() { ; }
40
virtual
void
print
(std::ostream& file,
int
l)
const
;
41
macro_copy_total
(
HeedPhoton
);
42
virtual
~HeedPhoton
() { ; }
43
44
};
45
46
}
47
48
#endif
HeedMatterDef.h
Heed::HeedPhoton
Definition:
HeedPhoton.h:17
Heed::HeedPhoton::energy
double energy
Definition:
HeedPhoton.h:24
Heed::HeedPhoton::macro_copy_total
macro_copy_total(HeedPhoton)
Heed::HeedPhoton::s_delta_generated
int s_delta_generated
Definition:
HeedPhoton.h:32
Heed::HeedPhoton::~HeedPhoton
virtual ~HeedPhoton()
Definition:
HeedPhoton.h:42
Heed::HeedPhoton::physics
virtual void physics(void)
Definition:
HeedPhoton.cpp:39
Heed::HeedPhoton::particle_number
long particle_number
Definition:
HeedPhoton.h:19
Heed::HeedPhoton::print
virtual void print(std::ostream &file, int l) const
Definition:
HeedPhoton.cpp:223
Heed::HeedPhoton::s_photon_absorbed
int s_photon_absorbed
Definition:
HeedPhoton.h:25
Heed::HeedPhoton::ns_absorbing
long ns_absorbing
Definition:
HeedPhoton.h:27
Heed::HeedPhoton::HeedPhoton
HeedPhoton(void)
Definition:
HeedPhoton.h:39
Heed::HeedPhoton::physics_after_new_speed
void physics_after_new_speed(void)
Definition:
HeedPhoton.cpp:137
Heed::HeedPhoton::parent_particle_number
long parent_particle_number
Definition:
HeedPhoton.h:20
Heed::HeedPhoton::na_absorbing
long na_absorbing
Definition:
HeedPhoton.h:26
Heed::HeedPhoton::s_print_listing
int s_print_listing
Definition:
HeedPhoton.h:21
gparticle
Definition:
gparticle.h:178
manip_absvol
Definition:
volume.h:195
point
Definition:
vec.h:477
vec
Definition:
vec.h:248
gparticle.h
Heed
Definition:
BGMesh.cpp:3
vfloat
double vfloat
Definition:
vfloat.h:15
garfieldpp-v1r0
Heed
heed++
code
HeedPhoton.h
Generated by
1.9.6