JetRecalibrator.h

Go to the documentation of this file.
00001 
00003 //                                                                      //
00004 // Reacalibrate jets following ATLFastSTL                               //
00005 //                                                                      //
00007 namespace Atlfast{
00008 
00010   class JetRecalibrator{
00011   public:
00012 
00014     JetRecalibrator(){}
00015 
00017     double bCalibrate(double pt){
00018 
00019       //Convert to GeV
00020       pt=pt/GeV;
00021 
00022       //b jets
00023       float core, a0, a1, a2, a3, a4, a5;
00024       
00025       if(pt < 10.){ return 0;
00026       } else if ( pt < 55.0) {    
00027         a0 =   1.2715;     
00028         a1 =   .12241;     
00029         a2 =  -.10480E-01;         
00030         a3 =  +.33310E-03;         
00031         a4 =  -.47454E-05;         
00032         a5 =   .25436E-07;         
00033         core =   a0 + a1*pt + a2*pt*pt + a3*pt*pt*pt 
00034           + a4*pt*pt*pt*pt + a5*pt*pt*pt*pt*pt;
00035         core =   core * 1.006;
00036         core = core * pt * GeV;
00037         return core;
00038       } else {
00039         a0 =   1.18;       
00040         a1 =   -.16672E-02;        
00041         a2 =    .44414E-05;        
00042         core = a0+a1*pt + a2*pt*pt;
00043 
00044         //convert back to original units
00045         core = core * pt* GeV;
00046         return core;
00047       }
00048     }
00049 
00051     double uCalibrate(float pt) {
00052 
00053       //Convert to GeV
00054       pt=pt/GeV;
00055 
00056 
00057       //  calibrate u-jets 
00058 
00059       float core, a0, a1, a2, a3, a4, a5;
00060       
00061       if(pt < 10.){ return 0;
00062       } else if ( pt < 45.0) {    
00063         a0 =  1.5085;      
00064         a1 =   .31468E-01;         
00065         a2 =  -.36973E-02;         
00066         a3 =  +.11220E-03;         
00067         a4 =  -.13921E-05;         
00068         a5 =   .61538E-08;         
00069         core =    a0 + a1*pt + a2*pt*pt + a3*pt*pt*pt 
00070           + a4*pt*pt*pt*pt + a5*pt*pt*pt*pt*pt;
00071         core = core * pt * GeV;
00072         return core;
00073        } else {
00074          a0 =   1.18;      
00075          a1 =   -.16672E-02;       
00076          a2 =    .44414E-05 ;      
00077          core =   a0 + a1*pt + a2*pt*pt;
00078          core =   core/1.25;
00079 
00080         //convert back to original units
00081          core = core * pt * GeV;
00082          return core;
00083        }
00084     }
00085   };
00086 }
00087 

Generated on Mon Sep 24 14:19:10 2007 for AtlfastAlgs by  doxygen 1.5.1