Fork me on GitHub

source: svn/trunk/interface/BFieldProp.h@ 244

Last change on this file since 244 was 223, checked in by Xavier Rouby, 16 years ago

include statements have been cleaned ; copy-constructor ; operator= ; destructor

File size: 1.8 KB
RevLine 
[54]1#ifndef _BFIELD_PROP_H_
2#define _BFIELD_PROP_H_
3
4/*
5 * ---- Delphes ----
6 * A Fast Simulator for general purpose LHC detector
7 * S. Ovyn ~~~~ severine.ovyn@uclouvain.be
8 *
9 * Center for Particle Physics and Phenomenology (CP3)
10 * Universite Catholique de Louvain (UCL)
11 * Louvain-la-Neuve, Belgium
12 * */
13
14#include "TLorentzVector.h"
[223]15#include "SmearUtil.h"
16#include "BlockClasses.h"
17#include "TSimpleArray.h"
[54]18
19using namespace std;
20
[100]21class TrackPropagation {
[54]22
23 public:
24 // Constructor
[223]25 TrackPropagation();
26 TrackPropagation(const string& DetDatacard);
27 TrackPropagation(const RESOLution * DetDatacard);
28 TrackPropagation(const TrackPropagation & tp);
29 TrackPropagation& operator=(const TrackPropagation & tp);
30 ~TrackPropagation() {delete DET;};
31 void init(); // for constructors
[54]32
33 void Propagation(const TRootGenParticle *Part,TLorentzVector &genMomentum);
34
[100]35
36 private:
[193]37 unsigned int MAXITERATION;
38 RESOLution *DET;
[100]39
[193]40
41 /// radial/longitudinal extensions of magnetic field volume
42 double R_max, z_max;
43 /// magnetic field components
44 double B_x, B_y, B_z;
45 /// particle charge
46 double q;
47 /// initial coordinate
48 double phi_0;
49 /// relativistic gamma \times m
50 double gammam;
51 /// giration frequency and radius
52 double omega, r;
53 /// center of the helix in the transverse plane
54 double x_c, y_c, R_c, Phi_c;
55 // variable for an intermediate computing
56 double rr;
57 /// times for exiting the magnetic field volume
58 double t, t_z, t_T;
59 /// coordinates of the exit point
60 double x_t, y_t, z_t, R_t, Phi_t, Theta_t, Eta_t;
[199]61 /// energy-momentum of the exit point [Gev] et c=1
62 double Px_t, Py_t, Pz_t, PT_t, p_t, E_t;
[193]63
64 unsigned int loop_overflow_counter;
[54]65};
66
67#endif
68
69
Note: See TracBrowser for help on using the repository browser.