source: trunk/WuerzburgSoft/Thomas/mphys/MElectron.h@ 1369

Last change on this file since 1369 was 1364, checked in by tbretz, 22 years ago
*** empty log message ***
File size: 1.4 KB
Line 
1#ifndef MARS_MElectron
2#define MARS_MElectron
3
4#ifndef MARS_MParticle
5#include "MParticle.h"
6#endif
7
8class MPhoton;
9
10class MElectron : public MParticle
11{
12public:
13 MElectron(Double_t e=0, Double_t z=0) : MParticle(MParticle::kEGamma)
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 MPhoton *DoInvCompton(Double_t theta);
42
43 // ----------------------------------------------------------------
44
45 static void DrawInteractionLength(Double_t z);
46 void DrawInteractionLength() const;
47
48 ClassDef(MElectron, 1)
49};
50
51#endif
Note: See TracBrowser for help on using the repository browser.