Garfield++ 5.0
A toolkit for the detailed simulation of particle detectors based on ionisation measurement in gases and semiconductors
Loading...
Searching...
No Matches
eparticle.h
Go to the documentation of this file.
1#ifndef EPARTICLE_H
2#define EPARTICLE_H
5#include "HeedFieldMap.h"
6
7// 1998 - 2004, I. Smirnov.
8
9namespace Heed {
10
11/// Charged particle. Combination of features of massive geometrical
12/// particle and specification of concrete particle as one of types
13/// known by science.
14
15class eparticle : public mparticle /*, public particle_type*/ {
16 public:
17 /// Default constructor
18 eparticle() = default;
19 /// Constructor using velocity vector.
20 eparticle(manip_absvol* primvol, const point& pt, const vec& vel, vfloat time,
21 particle_def* fpardef, HeedFieldMap* fieldmap);
22 /// Destructor
23 virtual ~eparticle() {}
24
25 eparticle* copy() const override { return new eparticle(*this); }
26 void print(std::ostream& file, int l) const override;
27
28 protected:
29 /// Calculate force components.
30 int force(const point& pt, vec& f, vec& f_perp, vfloat& mrange) override;
31 // mrange - distance at which the force should not change much
33 /// Pointer to field map.
35};
36}
37
38#endif
Retrieve electric and magnetic field from Sensor.
void print(std::ostream &file, int l) const override
Print-out.
Definition eparticle.cpp:26
particle_def * m_pardef
Definition eparticle.h:32
eparticle()=default
Default constructor.
eparticle * copy() const override
Clone the particle.
Definition eparticle.h:25
HeedFieldMap * m_fieldMap
Pointer to field map.
Definition eparticle.h:34
virtual ~eparticle()
Destructor.
Definition eparticle.h:23
int force(const point &pt, vec &f, vec &f_perp, vfloat &mrange) override
Calculate force components.
Definition eparticle.cpp:13
vfloat time() const
Get the current time of the particle.
Definition gparticle.h:191
Abstract base classs for volume "manipulators".
Definition volume.h:128
mparticle()=default
Default constructor.
Point.
Definition vec.h:368
Definition BGMesh.cpp:6
double vfloat
Definition vfloat.h:16