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>
6#include "HeedCluster.h"
7
8namespace Heed {
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
16class HeedParticle : public eparticle {
17 public:
18 /// Default constructor
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
Retrieve electric and magnetic field from Sensor.
Definition: HeedFieldMap.h:15
HeedParticle()
Default constructor.
Definition: HeedParticle.h:19
virtual HeedParticle * copy() const
Definition: HeedParticle.h:32
virtual void print(std::ostream &file, int l) const
virtual void physics(std::vector< gparticle * > &secondaries)
virtual ~HeedParticle()
Destructor.
Definition: HeedParticle.h:29
Abstract base classs for volume "manipulators".
Definition: volume.h:178
Point.
Definition: vec.h:374
Definition: vec.h:186
Definition: BGMesh.cpp:5
long last_particle_number
Definition: HeedParticle.h:9
double vfloat
Definition: vfloat.h:16