Garfield++
v2r0
A toolkit for the detailed simulation of particle detectors based on ionisation measurement in gases and semiconductors
Loading...
Searching...
No Matches
HeedParticle_BGM.h
Go to the documentation of this file.
1
#ifndef HEEDPARTICLE_BGM_H
2
#define HEEDPARTICLE_BGM_H
3
4
#include <vector>
5
#include "
HeedCluster.h
"
6
#include "
wcpplib/particle/eparticle.h
"
7
8
namespace
Heed
{
9
extern
long
last_particle_number
;
10
11
/// Definition of the particle which can be traced through the geometry.
12
/// 2003, I. Smirnov
13
14
class
HeedParticle_BGM
:
public
eparticle
{
15
public
:
16
/// Default constructor.
17
HeedParticle_BGM
() :
eparticle
() {}
18
/// Constructor.
19
/// if fs_loss_only == 1 - only transfer energy and
20
/// no other physics: no deposition of clusters,
21
/// no generation of virtual photons.
22
/// Thus it is just a PAI without even clusters
23
HeedParticle_BGM
(
manip_absvol
* primvol,
const
point
& pt,
const
vec
& vel,
24
vfloat
time,
particle_def
* fpardef,
HeedFieldMap
* fieldmap,
25
bool
fs_loss_only =
false
,
bool
fs_print_listing =
false
);
26
/// Destructor
27
virtual
~HeedParticle_BGM
() {}
28
29
virtual
void
physics
(std::vector<gparticle*>& secondaries);
30
virtual
void
print
(std::ostream& file,
int
l)
const
;
31
virtual
HeedParticle_BGM
*
copy
()
const
{
return
new
HeedParticle_BGM
(*
this
); }
32
33
private
:
34
bool
s_print_listing;
35
long
particle_number;
36
37
bool
s_loss_only;
38
std::vector<double> etransf;
39
std::vector<long> natom;
40
std::vector<long> nshell;
41
42
std::vector<HeedCluster> m_clusterBank;
43
};
44
}
45
46
#endif
HeedCluster.h
Heed::HeedFieldMap
Retrieve electric and magnetic field from Sensor.
Definition:
HeedFieldMap.h:15
Heed::HeedParticle_BGM
Definition:
HeedParticle_BGM.h:14
Heed::HeedParticle_BGM::HeedParticle_BGM
HeedParticle_BGM()
Default constructor.
Definition:
HeedParticle_BGM.h:17
Heed::HeedParticle_BGM::~HeedParticle_BGM
virtual ~HeedParticle_BGM()
Destructor.
Definition:
HeedParticle_BGM.h:27
Heed::HeedParticle_BGM::physics
virtual void physics(std::vector< gparticle * > &secondaries)
Definition:
HeedParticle_BGM.cpp:39
Heed::HeedParticle_BGM::copy
virtual HeedParticle_BGM * copy() const
Definition:
HeedParticle_BGM.h:31
Heed::HeedParticle_BGM::print
virtual void print(std::ostream &file, int l) const
Definition:
HeedParticle_BGM.cpp:167
Heed::eparticle
Definition:
eparticle.h:15
Heed::manip_absvol
Abstract base classs for volume "manipulators".
Definition:
volume.h:178
Heed::particle_def
Definition:
particle_def.h:45
Heed::point
Point.
Definition:
vec.h:374
Heed::vec
Definition:
vec.h:186
eparticle.h
Heed
Definition:
BGMesh.cpp:5
Heed::last_particle_number
long last_particle_number
Definition:
HeedParticle.h:9
Heed::vfloat
double vfloat
Definition:
vfloat.h:16
garfieldpp-v2r0
Heed
heed++
code
HeedParticle_BGM.h
Generated by
1.9.6