Fork me on GitHub

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

Last change on this file since 291 was 291, checked in by Xavier Rouby, 15 years ago

first attempt of corrections

File size: 3.9 KB
Line 
1#ifndef _BFIELD_PROP_H_
2#define _BFIELD_PROP_H_
3
4/***********************************************************************
5** **
6** /----------------------------------------------\ **
7** | Delphes, a framework for the fast simulation | **
8** | of a generic collider experiment | **
9** \----------------------------------------------/ **
10** **
11** **
12** This package uses: **
13** ------------------ **
14** FastJet algorithm: Phys. Lett. B641 (2006) [hep-ph/0512210] **
15** Hector: JINST 2:P09005 (2007) [physics.acc-ph:0707.1198v2] **
16** FROG: [hep-ex/0901.2718v1] **
17** **
18** ------------------------------------------------------------------ **
19** **
20** Main authors: **
21** ------------- **
22** **
23** Severine Ovyn Xavier Rouby **
24** severine.ovyn@uclouvain.be xavier.rouby@cern **
25** **
26** Center for Particle Physics and Phenomenology (CP3) **
27** Universite catholique de Louvain (UCL) **
28** Louvain-la-Neuve, Belgium **
29** **
30** Copyright (C) 2008-2009, **
31** All rights reserved. **
32** **
33***********************************************************************/
34
35#include "TLorentzVector.h"
36#include "SmearUtil.h"
37#include "BlockClasses.h"
38#include "TSimpleArray.h"
39
40using namespace std;
41
42class TrackPropagation {
43
44 public:
45 // Constructor
46 TrackPropagation();
47 TrackPropagation(const string& DetDatacard);
48 TrackPropagation(const RESOLution * DetDatacard);
49 TrackPropagation(const TrackPropagation & tp);
50 TrackPropagation& operator=(const TrackPropagation & tp);
51 ~TrackPropagation() {delete DET;};
52 void init(); // for constructors
53
54 // Propagation and bfield are very similar. At the end, after code cleaning,
55 // only bfield will remain in this class
56 void Propagation(const TRootGenParticle *Part,TLorentzVector &genMomentum);
57 void bfield(TRootGenParticle *Part); // fills in Part->EtaCalo and Part->PhiCalo
58
59
60 private:
61 unsigned int MAXITERATION;
62 RESOLution *DET;
63
64
65 /// radial/longitudinal extensions of magnetic field volume
66 double R_max, z_max;
67 /// magnetic field components
68 double B_x, B_y, B_z;
69 /// particle charge
70 double q;
71 /// initial coordinate
72 double phi_0;
73 /// relativistic gamma \times m
74 double gammam;
75 /// giration frequency and radius
76 double omega, r;
77 /// center of the helix in the transverse plane
78 double x_c, y_c, R_c, Phi_c;
79 // variable for an intermediate computing
80 double rr;
81 /// times for exiting the magnetic field volume
82 double t, t_z, t_T;
83 /// coordinates of the exit point
84 double x_t, y_t, z_t, R_t, Phi_t, Theta_t, Eta_t;
85 /// energy-momentum of the exit point [Gev] et c=1
86 double Px_t, Py_t, Pz_t, PT_t, p_t, E_t;
87
88 unsigned int loop_overflow_counter;
89 unsigned int aaa,bbb,ccc,ddd; // to be deleted
90
91};
92
93#endif
94
95
Note: See TracBrowser for help on using the repository browser.