#include <DifVector.h>
Inheritance diagram for DifVector:
Public Member Functions | |
DifVector () | |
DifVector (const DifNumber &x, const DifNumber &y, const DifNumber &z) | |
DifVector (double x, double y, double z) | |
DifVector (const Hep3Vector &v) | |
DifVector (const DifVector &v) | |
~DifVector () | |
HepSymMatrix | errorMatrix (const HepSymMatrix &e) const |
HepMatrix | jacobian () const |
DifVector & | operator+= (const DifVector &v) |
DifVector & | operator-= (const DifVector &v) |
DifVector & | operator *= (const DifNumber &n) |
DifVector & | operator *= (const double &n) |
DifVector & | operator/= (const DifNumber &n) |
DifVector & | operator/= (const double &n) |
DifVector & | operator= (const DifVector &v) |
DifVector | operator- () const |
int | nPar () const |
void | print () const |
DifVector & | flipsign () |
DifVector & | normalize () |
DifVector & | zeroDerivatives () |
DifVector & | rotate (const DifVector &axis, const DifNumber &angle) |
DifVector & | rotate (const DifVector &axis, const DifNumber &cosine, const DifNumber &sine) |
DifVector & | rotate (const DifNumber &alpha, const DifNumber &beta, const DifNumber &gamma) |
DifVector & | rotate (const DifRotation &r) |
DifVector & | rotateX (const DifNumber &angle) |
DifVector & | rotateX (const DifNumber &cosine, const DifNumber &sine) |
DifVector & | rotateY (const DifNumber &angle) |
DifVector & | rotateY (const DifNumber &cosine, const DifNumber &sine) |
DifVector & | rotateZ (const DifNumber &angle) |
DifVector & | rotateZ (const DifNumber &cosine, const DifNumber &sine) |
DifVector & | rotate (const DifVector &axis, const double &angle) |
DifVector & | rotate (const DifVector &axis, const double &cosine, const double &sine) |
DifVector & | rotate (const double &alpha, const double &beta, const double &gamma) |
DifVector & | rotateX (const double &angle) |
DifVector & | rotateX (const double &cosine, const double &sine) |
DifVector & | rotateY (const double &angle) |
DifVector & | rotateY (const double &cosine, const double &sine) |
DifVector & | rotateZ (const double &angle) |
DifVector & | rotateZ (const double &cosine, const double &sine) |
DifVector | transverse (const DifVector &v) const |
DifNumber | dot (const DifVector &v) const |
DifNumber | length () const |
DifNumber | lengthSq () const |
DifVector | unit () const |
DifNumber | perp () const |
DifNumber | perpSq () const |
DifNumber | r () const |
DifNumber | phi () const |
DifNumber | theta () const |
DifNumber | cosTheta () const |
Public Attributes | |
DifNumber | x |
DifNumber | y |
DifNumber | z |
Friends | |
DifVector | operator+ (const DifVector &a, const DifVector &b) |
DifVector | operator- (const DifVector &a, const DifVector &b) |
DifNumber | operator * (const DifVector &a, const DifVector &b) |
DifVector | operator * (const DifVector &v, const DifNumber &n) |
DifVector | operator * (const DifNumber &n, const DifVector &v) |
DifVector | operator/ (const DifVector &v, const DifNumber &n) |
DifVector | operator * (const DifVector &v, const double &n) |
DifVector | operator * (const double &n, const DifVector &v) |
DifVector | operator/ (const DifVector &v, const double &n) |
DifVector | cross (const DifVector &a, const DifVector &b) |
Definition at line 32 of file DifVector.h.
DifVector::DifVector | ( | ) |
DifVector::DifVector | ( | double | x, | |
double | y, | |||
double | z | |||
) |
DifVector::DifVector | ( | const Hep3Vector & | v | ) |
DifVector::DifVector | ( | const DifVector & | v | ) |
DifVector::~DifVector | ( | ) | [inline] |
DifNumber DifVector::cosTheta | ( | ) | const |
Referenced by TrkDifPoca::calcDist().
HepSymMatrix DifVector::errorMatrix | ( | const HepSymMatrix & | e | ) | const |
Definition at line 54 of file DifVector.cxx.
References correlation(), subSeperate::temp, x, y, and z.
Referenced by TrkMomCalculator::calcCurvAllCovsOLD(), TrkMomCalculator::calcCurvErrMom(), TrkMomCalculator::calcNeutAllCovs(), TrkMomCalculator::calcNeutErrMom(), TrkRep::directionErr(), TrkCompTrk::directionErr(), TrkRep::positionErr(), and TrkCompTrk::positionErr().
00054 { 00055 HepSymMatrix temp(3); 00056 temp(1,1)=correlation(x,x,e); 00057 temp(1,2)=correlation(x,y,e); 00058 temp(1,3)=correlation(x,z,e); 00059 temp(2,2)=correlation(y,y,e); 00060 temp(2,3)=correlation(y,z,e); 00061 temp(3,3)=correlation(z,z,e); 00062 return temp; 00063 }
DifVector& DifVector::flipsign | ( | ) | [inline] |
HepMatrix DifVector::jacobian | ( | ) | const |
Definition at line 65 of file DifVector.cxx.
References DifNumber::derivative(), genRecEmupikp::i, DifNumber::nPar(), subSeperate::temp, x, y, and z.
Referenced by TrkMomCalculator::calcCurvAllWeightsOLD(), and TrkMomCalculator::calcNeutAllWeights().
00065 { 00066 int npar=x.nPar(); 00067 HepMatrix temp(3,npar); 00068 for(int i=1; i<=npar; i++){ 00069 temp(1,i)=x.derivative(i); 00070 temp(2,i)=y.derivative(i); 00071 temp(3,i)=z.derivative(i); 00072 } // (int i=1; i<=npar; i++) 00073 return temp; 00074 }
DifNumber DifVector::length | ( | ) | const [inline] |
DifNumber DifVector::lengthSq | ( | ) | const [inline] |
Referenced by DifFourVector::boostFromMe(), and DifFourVector::boostToMe().
DifVector& DifVector::normalize | ( | ) | [inline] |
int DifVector::nPar | ( | ) | const [inline] |
DifVector& DifVector::operator *= | ( | const double & | n | ) | [inline] |
DifVector DifVector::operator- | ( | ) | const [inline] |
DifVector& DifVector::operator/= | ( | const double & | n | ) |
DifNumber DifVector::perp | ( | ) | const [inline] |
DifNumber DifVector::perpSq | ( | ) | const [inline] |
DifNumber DifVector::phi | ( | ) | const |
void DifVector::print | ( | ) | const |
Definition at line 85 of file DifVector.cxx.
00085 { 00086 /*SKIP 00087 cout << "x:" << x; 00088 cout << "y:" << y; 00089 cout << "z:" << z; 00090 */ 00091 //yzhang TEMP 00092 cout << "Yzhang::DifVector::print x,y,z SKIPED!\n"; 00093 }
DifVector& DifVector::rotate | ( | const double & | alpha, | |
const double & | beta, | |||
const double & | gamma | |||
) |
DifVector& DifVector::rotate | ( | const DifVector & | axis, | |
const double & | cosine, | |||
const double & | sine | |||
) | [inline] |
DifVector & DifVector::rotate | ( | const DifRotation & | r | ) |
Definition at line 76 of file DifVector.cxx.
References r().
00076 { 00077 r.rotate(*this); return *this; 00078 }
DifVector & DifVector::rotate | ( | const DifNumber & | alpha, | |
const DifNumber & | beta, | |||
const DifNumber & | gamma | |||
) |
Definition at line 80 of file DifVector.cxx.
References rotate().
00080 { 00081 DifRotation(a,b,g).rotate(*this); 00082 return *this; 00083 }
DifVector& DifVector::rotate | ( | const DifVector & | axis, | |
const DifNumber & | cosine, | |||
const DifNumber & | sine | |||
) | [inline] |
Referenced by rotate().
DifVector& DifVector::rotateX | ( | const double & | cosine, | |
const double & | sine | |||
) | [inline] |
DifVector& DifVector::rotateX | ( | const double & | angle | ) | [inline] |
DifVector& DifVector::rotateY | ( | const double & | cosine, | |
const double & | sine | |||
) | [inline] |
DifVector& DifVector::rotateY | ( | const double & | angle | ) | [inline] |
DifVector& DifVector::rotateZ | ( | const double & | cosine, | |
const double & | sine | |||
) | [inline] |
DifVector& DifVector::rotateZ | ( | const double & | angle | ) | [inline] |
DifNumber DifVector::theta | ( | ) | const |
DifVector DifVector::unit | ( | ) | const [inline] |
DifVector& DifVector::zeroDerivatives | ( | ) | [inline] |
Definition at line 148 of file DifVector.h.
Referenced by TrkMomCalculator::calcCurvAllCovsOLD(), TrkMomCalculator::calcCurvAllWeightsOLD(), TrkMomCalculator::calcCurvErrMom(), TrkMomCalculator::calcCurvPosmomCov(), TrkDifPoca::calcDist(), TrkMomCalculator::calcNeutAllCovs(), TrkMomCalculator::calcNeutAllWeights(), TrkMomCalculator::calcNeutErrMom(), TrkMomCalculator::calcNeutPosmomCov(), TrkRep::directionErr(), TrkCompTrk::directionErr(), errorMatrix(), DifFourVector::errorMatrix(), TrkCircleTraj::getDFInfo(), HelixTraj::getDFInfo(), TrkCircleTraj::getDFInfo2(), HelixTraj::getDFInfo2(), jacobian(), DifFourVector::jacobian(), TrkRep::positionErr(), and TrkCompTrk::positionErr().
Definition at line 149 of file DifVector.h.
Referenced by TrkMomCalculator::calcCurvAllCovsOLD(), TrkMomCalculator::calcCurvAllWeightsOLD(), TrkMomCalculator::calcCurvErrMom(), TrkMomCalculator::calcCurvPosmomCov(), TrkMomCalculator::calcNeutAllCovs(), TrkMomCalculator::calcNeutAllWeights(), TrkMomCalculator::calcNeutErrMom(), TrkMomCalculator::calcNeutPosmomCov(), TrkRep::directionErr(), TrkCompTrk::directionErr(), errorMatrix(), DifFourVector::errorMatrix(), TrkCircleTraj::getDFInfo(), HelixTraj::getDFInfo(), TrkCircleTraj::getDFInfo2(), HelixTraj::getDFInfo2(), jacobian(), DifFourVector::jacobian(), TrkRep::positionErr(), and TrkCompTrk::positionErr().
Definition at line 150 of file DifVector.h.
Referenced by TrkMomCalculator::calcCurvAllCovsOLD(), TrkMomCalculator::calcCurvAllWeightsOLD(), TrkMomCalculator::calcCurvErrMom(), TrkMomCalculator::calcCurvPosmomCov(), TrkDifPoca::calcDist(), TrkMomCalculator::calcNeutAllCovs(), TrkMomCalculator::calcNeutAllWeights(), TrkMomCalculator::calcNeutErrMom(), TrkMomCalculator::calcNeutPosmomCov(), TrkRep::directionErr(), TrkCompTrk::directionErr(), errorMatrix(), DifFourVector::errorMatrix(), TrkCircleTraj::getDFInfo(), HelixTraj::getDFInfo(), TrkCircleTraj::getDFInfo2(), HelixTraj::getDFInfo2(), jacobian(), DifFourVector::jacobian(), TrkRep::positionErr(), and TrkCompTrk::positionErr().