Garfield++ v1r0
A toolkit for the detailed simulation of particle detectors based on ionisation measurement in gases and semiconductors
Loading...
Searching...
No Matches
eiparticle.h
Go to the documentation of this file.
1#ifndef EIPARTICLE_H
2#define EIPARTICLE_H
5
6/*
7Charged ionizing particle.
8Very simple and crude class - for start and for debug (comparison with more
9accurate but complicted future classes).
10
111999 - 2002 I. Smirnov.
12*/
13
14namespace Heed {
15
16class eiparticle : public eparticle {
17 public:
18 /// Constructors
19 eiparticle(void) : eparticle() { ; }
20 eiparticle(manip_absvol* primvol, const point& pt, const vec& vel,
21 vfloat time, particle_def* fpardef, int fs_add_loss = 0)
22 : eparticle(primvol, pt, vel, time, fpardef),
23 s_add_loss(fs_add_loss),
24 total_loss(0.0) {}
26 /// Destructor
27 virtual ~eiparticle() {}
28 virtual void print(std::ostream& file, int l) const;
29
30 /// Energy loss per unit length
31 double Bethe_Bloch_en_loss(void);
32 virtual void physics_after_new_speed(void);
33
34 /// Flag for handling energy loss
35 /// 0 - loss is subtracted from current particle energy
36 /// 1 - loss is added (simulation of particle passage to opposite
37 // direction at intergation of field equations).
38 // Do not forget to assign opposite charge.
40 double total_loss;
41
42};
43
44}
45
46#endif
double Bethe_Bloch_en_loss(void)
Energy loss per unit length.
Definition: eiparticle.cpp:14
AnyType_copy(eiparticle, gparticle)
virtual ~eiparticle()
Destructor.
Definition: eiparticle.h:27
eiparticle(manip_absvol *primvol, const point &pt, const vec &vel, vfloat time, particle_def *fpardef, int fs_add_loss=0)
Definition: eiparticle.h:20
eiparticle(void)
Constructors.
Definition: eiparticle.h:19
virtual void print(std::ostream &file, int l) const
Definition: eiparticle.cpp:54
virtual void physics_after_new_speed(void)
Definition: eiparticle.cpp:29
double total_loss
Definition: eiparticle.h:40
Definition: vec.h:477
Definition: vec.h:248
Definition: BGMesh.cpp:3
double vfloat
Definition: vfloat.h:15