ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/IPHCalignment2/TrackingTools/TrajectoryState/test/testTSOS.cpp
Revision: 1.1
Committed: Fri Nov 25 16:38:28 2011 UTC (13 years, 5 months ago) by econte
Branch: MAIN
CVS Tags: TBD2011, TBD_2011, HEAD
Log Message:
new IPHC alignment

File Contents

# User Rev Content
1 econte 1.1 #include "TrackingTools/TrajectoryState/interface/TrajectoryStateOnSurface.h"
2     #include "TrackingTools/TrajectoryState/interface/TrajectoryStateAccessor.h"
3     #include "DataFormats/GeometrySurface/interface/Surface.h"
4     #include "DataFormats/GeometrySurface/interface/BoundPlane.h"
5     #include "MagneticField/Engine/interface/MagneticField.h"
6    
7     #include "TrackingTools/TrajectoryState/interface/BasicSingleTrajectoryState.h"
8     #include "TrackingTools/TrajectoryState/interface/FreeTrajectoryState.h"
9    
10    
11     #include <iostream>
12    
13     class ConstMagneticField : public MagneticField {
14     public:
15    
16     virtual GlobalVector inTesla ( const GlobalPoint& ) const {
17     return GlobalVector(0,0,4);
18     }
19    
20     };
21    
22     int main() {
23    
24     std::cout << "sizes tsos, bsts, fts" << std::endl;
25     std::cout << sizeof( TrajectoryStateOnSurface) << std::endl;
26     std::cout << sizeof(BasicSingleTrajectoryState) << std::endl;
27     std::cout << sizeof(FreeTrajectoryState) << std::endl;
28    
29    
30     using namespace std;
31    
32     MagneticField * field = new ConstMagneticField;
33     GlobalPoint gp(0,0,0);
34     GlobalVector gv(1,1,1);
35     GlobalTrajectoryParameters gtp(gp,gv,1,field);
36     double v[15] = {0.01,-0.01,0. ,0.,0.,
37     0.01,0. ,0.,0.,
38     0.01,0.,0.,
39     1.,0.,
40     1.};
41     AlgebraicSymMatrix55 gerr(v,15);
42     BoundPlane* plane = new BoundPlane( gp, Surface::RotationType());
43    
44     TrajectoryStateOnSurface ts(gtp,gerr,*plane);
45    
46     cout << "ts.globalMomentum() " << ts.globalMomentum() << endl;
47     cout << "ts.localMomentum() " << ts.localMomentum() << endl;
48     cout << "ts.transverseCurvature() " << ts.transverseCurvature() << endl;
49     cout << "ts inversePtErr " << TrajectoryStateAccessor(*ts.freeState()).inversePtError() << std::endl;
50    
51    
52     LocalPoint lp(0,0,0);
53     LocalVector lv(1,1,1);
54     LocalTrajectoryParameters ltp(lp,lv,1);
55     LocalTrajectoryError lerr(1.,1.,0.1,0.1,0.1);
56     TrajectoryStateOnSurface ts2(ltp,lerr, *plane, field);
57     cout << "ts2.globalMomentum() " << ts2.globalMomentum() << endl;
58     cout << "ts2.localMomentum() " << ts2.localMomentum() << endl;
59     cout << "ts2.transverseCurvature() " << ts2.transverseCurvature() << endl;
60     cout << "ts2 inversePtErr " << TrajectoryStateAccessor(*ts2.freeState()).inversePtError() << std::endl;
61     }