Garfield++
v2r0
A toolkit for the detailed simulation of particle detectors based on ionisation measurement in gases and semiconductors
Loading...
Searching...
No Matches
HeedParticle.h
Go to the documentation of this file.
1
#ifndef HEEDPARTICLE_H
2
#define HEEDPARTICLE_H
3
4
#include <vector>
5
#include "
wcpplib/particle/eparticle.h
"
6
#include "
HeedCluster.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
/// Also the definition of cluster (energy transfer), and particle bank.
13
///
14
/// 2003, I. Smirnov
15
16
class
HeedParticle
:
public
eparticle
{
17
public
:
18
/// Default constructor
19
HeedParticle
() :
eparticle
() {}
20
/// Constructor.
21
/// If fs_loss_only == false only transferred energy
22
/// is simulated: no deposition of clusters,
23
/// no generation of virtual photons.
24
HeedParticle
(
manip_absvol
* primvol,
const
point
& pt,
const
vec
& vel,
25
vfloat
time,
particle_def
* fpardef,
HeedFieldMap
* fieldmap,
26
const
bool
fs_loss_only =
false
,
27
const
bool
fs_print_listing =
false
);
28
/// Destructor
29
virtual
~HeedParticle
() {}
30
31
virtual
void
physics
(std::vector<gparticle*>& secondaries);
32
virtual
HeedParticle
*
copy
()
const
{
return
new
HeedParticle
(*
this
); }
33
virtual
void
print
(std::ostream& file,
int
l)
const
;
34
35
private
:
36
bool
s_print_listing;
37
long
particle_number;
38
39
bool
s_loss_only;
40
std::vector<double> etransf;
41
std::vector<long> natom;
42
std::vector<long> nshell;
43
44
bool
s_store_clusters;
45
std::vector<HeedCluster> m_clusterBank;
46
};
47
}
48
49
#endif
HeedCluster.h
Heed::HeedFieldMap
Retrieve electric and magnetic field from Sensor.
Definition:
HeedFieldMap.h:15
Heed::HeedParticle
Definition:
HeedParticle.h:16
Heed::HeedParticle::HeedParticle
HeedParticle()
Default constructor.
Definition:
HeedParticle.h:19
Heed::HeedParticle::copy
virtual HeedParticle * copy() const
Definition:
HeedParticle.h:32
Heed::HeedParticle::print
virtual void print(std::ostream &file, int l) const
Definition:
HeedParticle.cpp:137
Heed::HeedParticle::physics
virtual void physics(std::vector< gparticle * > &secondaries)
Definition:
HeedParticle.cpp:38
Heed::HeedParticle::~HeedParticle
virtual ~HeedParticle()
Destructor.
Definition:
HeedParticle.h:29
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.h
Generated by
1.9.6