CLHEP VERSION Reference Documentation
CLHEP Home Page CLHEP Documentation CLHEP Bug Reports |
00001 // -*- C++ -*- 00002 // --------------------------------------------------------------------------- 00003 // 00004 // This file is a part of the CLHEP - a Class Library for High Energy Physics. 00005 // 00006 // This is part of the implementation of the HepLorentzVector class: 00007 // Those methods which might, if coded in LorentzVector.cc, force loading 00008 // of the Rotation.cc code module. 00009 // 00010 00011 #ifdef GNUPRAGMA 00012 #pragma implementation 00013 #endif 00014 00015 #include "CLHEP/Vector/defs.h" 00016 #include "CLHEP/Vector/LorentzVector.h" 00017 00018 namespace CLHEP { 00019 00020 HepLorentzVector & HepLorentzVector::rotate(double a, const Hep3Vector &v1) { 00021 pp.rotate(a,v1); 00022 return *this; 00023 } 00024 00025 HepLorentzVector & HepLorentzVector::rotate ( const Hep3Vector & aaxis, 00026 double ddelta ) { 00027 pp.rotate (aaxis, ddelta); 00028 return *this; 00029 } 00030 00031 HepLorentzVector & HepLorentzVector::rotate ( const HepAxisAngle & ax ) { 00032 pp.rotate (ax); 00033 return *this; 00034 } 00035 00036 HepLorentzVector & HepLorentzVector::rotate ( const HepEulerAngles & e1 ) { 00037 pp.rotate (e1); 00038 return *this; 00039 } 00040 00041 HepLorentzVector & HepLorentzVector::rotate ( double phi1, 00042 double theta1, 00043 double psi1 ) { 00044 pp.rotate (phi1, theta1, psi1); 00045 return *this; 00046 } 00047 00048 HepLorentzVector rotationOf (const HepLorentzVector & vec, 00049 const Hep3Vector & aaxis, 00050 double ddelta) { 00051 HepLorentzVector vv (vec); 00052 return vv.rotate (aaxis, ddelta); 00053 } 00054 00055 HepLorentzVector rotationOf 00056 (const HepLorentzVector & vec, const HepAxisAngle &ax ) { 00057 HepLorentzVector vv (vec); 00058 return vv.rotate (ax); 00059 } 00060 00061 HepLorentzVector rotationOf 00062 (const HepLorentzVector & vec, const HepEulerAngles &e1 ) { 00063 HepLorentzVector vv (vec); 00064 return vv.rotate (e1); 00065 } 00066 00067 HepLorentzVector rotationOf (const HepLorentzVector & vec, 00068 double phi1, 00069 double theta1, 00070 double psi1) { 00071 HepLorentzVector vv (vec); 00072 return vv.rotate (phi1, theta1, psi1); 00073 } 00074 00075 } // namespace CLHEP