1 | #ifndef MARS_MElectron
|
---|
2 | #define MARS_MElectron
|
---|
3 |
|
---|
4 | #ifndef MARS_MParticle
|
---|
5 | #include "MParticle.h"
|
---|
6 | #endif
|
---|
7 |
|
---|
8 | class MPhoton;
|
---|
9 |
|
---|
10 | class MElectron : public MParticle
|
---|
11 | {
|
---|
12 | public:
|
---|
13 | MElectron(Double_t e=0, Double_t z=0, Bool_t type=kFALSE) : MParticle(type?MParticle::kEPositron:MParticle::kEElectron)
|
---|
14 | {
|
---|
15 | fEnergy = e;
|
---|
16 | fZ = z;
|
---|
17 | }
|
---|
18 |
|
---|
19 | void operator=(MParticle &p) { MParticle::operator=(p); }
|
---|
20 |
|
---|
21 | // ----------------------------------------------------------------
|
---|
22 |
|
---|
23 | static Double_t Li(Double_t *x, Double_t *k);
|
---|
24 | static Double_t Li2(Double_t *x, Double_t *k=NULL);
|
---|
25 | static Double_t Flim(Double_t *x, Double_t *k=NULL);
|
---|
26 | static Double_t Compton(Double_t *x, Double_t *k);
|
---|
27 | static Double_t InteractionLength(Double_t *E, Double_t *k=NULL);
|
---|
28 | static Double_t GetInteractionLength(Double_t E, Double_t z=0);
|
---|
29 |
|
---|
30 | Double_t GetInteractionLength() const;
|
---|
31 |
|
---|
32 | // ----------------------------------------------------------------
|
---|
33 |
|
---|
34 | static Double_t p_e(Double_t *x, Double_t *k);
|
---|
35 | static Double_t G_q(Double_t *x, Double_t *k);
|
---|
36 | static Double_t EnergyLoss(Double_t *E, Double_t *z=NULL, Double_t *ep=NULL);
|
---|
37 | static Double_t GetEnergyLoss(Double_t E, Double_t z=0, Double_t *ep=NULL);
|
---|
38 |
|
---|
39 | Double_t GetEnergyLoss(Double_t *ep) const;
|
---|
40 |
|
---|
41 | // ----------------------------------------------------------------
|
---|
42 |
|
---|
43 | MPhoton *DoInvCompton(Double_t theta);
|
---|
44 | Bool_t SetNewPositionB(Double_t B);
|
---|
45 |
|
---|
46 | // ----------------------------------------------------------------
|
---|
47 |
|
---|
48 | static void DrawInteractionLength(Double_t z);
|
---|
49 | void DrawInteractionLength() const;
|
---|
50 |
|
---|
51 | ClassDef(MElectron, 1)
|
---|
52 | };
|
---|
53 |
|
---|
54 | #endif
|
---|