00001 #ifndef ENERGYCORRECTIONS_H 00002 #define ENERGYCORRECTIONS_H 00003 00004 // 00005 // EnergyCorrections.h 00006 // 00007 // Corrections to energy based quantities 00008 // 00009 // Created: M. Kordosky -- December, 2005 00010 // 00011 // $Author: rhatcher $ 00012 // 00013 // $Revision: 1.2 $ 00014 // 00015 // $Name: $ 00016 // 00017 // $Id: EnergyCorrections.h,v 1.2 2009/05/26 22:04:51 rhatcher Exp $ 00018 // 00019 // $Log: EnergyCorrections.h,v $ 00020 // Revision 1.2 2009/05/26 22:04:51 rhatcher 00021 // Use Detector:: rather than DetectorType:: (synonym) everywhere, so we can 00022 // someday eliminate the deprecated DetectorType::. 00023 // 00024 // Add #include <cmath> in enough places sufficient for resolving random 00025 // use of fabs() when compiled w/ gcc 4.x 00026 // 00027 // Revision 1.1 2009/03/23 09:28:27 rbpatter 00028 // initial import of new singleton MCNN package 00029 // 00030 // Revision 1.8 2006/02/15 15:57:30 kordosky 00031 // add correction from for momentum via curvature as advocated in 1430-v2. Only modifies momenta of positively charged tracks. 00032 // 00033 // Revision 1.7 2006/02/13 00:20:02 kordosky 00034 // correction of +1.8% to FD data shower energy 00035 // 00036 // Revision 1.6 2006/02/12 22:09:58 kordosky 00037 // Update momentum correction to account for new density and thickness measurements. 00038 // 00039 // Revision 1.5 2005/12/16 03:38:51 kordosky 00040 // place implementation in a cxx file 00041 // 00042 // Revision 1.4 2005/12/16 02:52:43 kordosky 00043 // Forgot the include guards. Thansk Niki. 00044 // 00045 // Revision 1.3 2005/12/15 22:44:31 kordosky 00046 // retweaked A Culling formulae in reaction to his presentation this morning 00047 // 00048 // Revision 1.2 2005/12/15 22:26:19 kordosky 00049 // E=sqrt(p*p+m*m) != p (almost negligible) 00050 // 00051 // Revision 1.1 2005/12/15 21:57:09 kordosky 00052 // moved from Mad 00053 // 00054 // Revision 1.2 2005/12/14 20:35:59 kordosky 00055 // Updated energy corrections. 00056 // 00057 // Revision 1.1 2005/12/13 19:41:35 kordosky 00058 // Standalone routines to correct the momentum via range to to groom et al range tables. Also, correct data to 7.755 g/cc which is our current best estimate of the detector density. 00059 // 00060 00061 #include "Conventions/DetectorType.h" 00062 #include "RecoBase/CandShowerHandle.h" 00063 00064 float CorrectMomentumFromRange(float p, bool isdata=true, Detector::Detector_t det=Detector::kNear); 00065 00066 float CorrectSignedMomentumFromCurvature(float p, bool isdata=true, Detector::Detector_t det=Detector::kNear); 00067 00068 float CorrectEnergyFromRange(float E, bool isdata=true, Detector::Detector_t det=Detector::kNear); 00069 00070 float CorrectShowerEnergyNear(float E, const CandShowerHandle::ShowerType_t& st, int mode=1, bool isdata=true); 00071 00072 float CorrectShowerEnergyFar(float E, const CandShowerHandle::ShowerType_t& st, int mode=1, bool isdata=true); 00073 00074 float CorrectShowerEnergy(float E, const Detector::Detector_t& det, 00075 const CandShowerHandle::ShowerType_t& st, 00076 int mode=1, bool isdata=true); 00077 #endif
1.3.9.1