Fork me on GitHub

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

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

new TrackPropagation::bfield function

File size: 2.0 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
[248]32
33 // Propagation and bfield are very similar. At the end, after code cleaning,
34 // onle bfield will remain in this class
[54]35 void Propagation(const TRootGenParticle *Part,TLorentzVector &genMomentum);
[248]36 void bfield(const TRootGenParticle *Part, float& etacalo, float& phicalo);
[54]37
[100]38
39 private:
[193]40 unsigned int MAXITERATION;
41 RESOLution *DET;
[100]42
[193]43
44 /// radial/longitudinal extensions of magnetic field volume
45 double R_max, z_max;
46 /// magnetic field components
47 double B_x, B_y, B_z;
48 /// particle charge
49 double q;
50 /// initial coordinate
51 double phi_0;
52 /// relativistic gamma \times m
53 double gammam;
54 /// giration frequency and radius
55 double omega, r;
56 /// center of the helix in the transverse plane
57 double x_c, y_c, R_c, Phi_c;
58 // variable for an intermediate computing
59 double rr;
60 /// times for exiting the magnetic field volume
61 double t, t_z, t_T;
62 /// coordinates of the exit point
63 double x_t, y_t, z_t, R_t, Phi_t, Theta_t, Eta_t;
[199]64 /// energy-momentum of the exit point [Gev] et c=1
65 double Px_t, Py_t, Pz_t, PT_t, p_t, E_t;
[193]66
67 unsigned int loop_overflow_counter;
[54]68};
69
70#endif
71
72
Note: See TracBrowser for help on using the repository browser.