00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef PHIHELPER_H
00011 #define PHIHELPER_H
00012
00013 namespace HLT {
00014
00015 inline double wrapPhi( double phi ) {
00016 static const double M_2PI = 2*M_PI;
00017 while (phi> M_PI) phi -= M_2PI;
00018 while (phi<-M_PI) phi += M_2PI;
00019 return phi;
00020 }
00021
00022
00023 inline double phiMean( double phimin, double phimax) {
00024 double phi = 0.5*(phimin+phimax);
00025 if ( phimin>phimax ) phi += M_PI;
00026 return wrapPhi(phi);
00027 }
00028
00029
00030 inline double deltaPhi( double phimax, double phimin) {
00031 return wrapPhi(phimax-phimin);
00032 }
00033
00034 }
00035
00036
00037 #endif // __PHIHELPER_H