00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 #ifdef GNUPRAGMA
00012 #pragma implementation
00013 #endif
00014
00015 #include "CLHEP/Vector/LorentzVector.h"
00016
00017 namespace CLHEP {
00018
00019 HepLorentzVector & HepLorentzVector::rotate(double a, const Hep3Vector &v1) {
00020 pp.rotate(a,v1);
00021 return *this;
00022 }
00023
00024 HepLorentzVector & HepLorentzVector::rotate ( const Hep3Vector & aaxis,
00025 double ddelta ) {
00026 pp.rotate (aaxis, ddelta);
00027 return *this;
00028 }
00029
00030 HepLorentzVector & HepLorentzVector::rotate ( const HepAxisAngle & ax ) {
00031 pp.rotate (ax);
00032 return *this;
00033 }
00034
00035 HepLorentzVector & HepLorentzVector::rotate ( const HepEulerAngles & e1 ) {
00036 pp.rotate (e1);
00037 return *this;
00038 }
00039
00040 HepLorentzVector & HepLorentzVector::rotate ( double phi1,
00041 double theta1,
00042 double psi1 ) {
00043 pp.rotate (phi1, theta1, psi1);
00044 return *this;
00045 }
00046
00047 HepLorentzVector rotationOf (const HepLorentzVector & vec,
00048 const Hep3Vector & aaxis,
00049 double ddelta) {
00050 HepLorentzVector vv (vec);
00051 return vv.rotate (aaxis, ddelta);
00052 }
00053
00054 HepLorentzVector rotationOf
00055 (const HepLorentzVector & vec, const HepAxisAngle &ax ) {
00056 HepLorentzVector vv (vec);
00057 return vv.rotate (ax);
00058 }
00059
00060 HepLorentzVector rotationOf
00061 (const HepLorentzVector & vec, const HepEulerAngles &e1 ) {
00062 HepLorentzVector vv (vec);
00063 return vv.rotate (e1);
00064 }
00065
00066 HepLorentzVector rotationOf (const HepLorentzVector & vec,
00067 double phi1,
00068 double theta1,
00069 double psi1) {
00070 HepLorentzVector vv (vec);
00071 return vv.rotate (phi1, theta1, psi1);
00072 }
00073
00074 }