Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

BesError Class Reference

#include <BesError.h>

List of all members.

Public Member Functions

 BesError (const BesError &v)
 BesError (const HepSymMatrix &p)
 BesError (int n)
 BesError ()
 BesError (const BesError &v)
 BesError (const HepSymMatrix &p)
 BesError (int n)
 BesError ()
double determineChisq (const HepVector &diff) const
double determineChisq (const HepVector &diff) const
BesErroroperator *= (double t)
BesErroroperator *= (double t)
BesErroroperator+= (const HepDiagMatrix &m2)
BesErroroperator+= (const HepSymMatrix &m2)
BesErroroperator+= (const BesError &m2)
BesErroroperator+= (const HepDiagMatrix &m2)
BesErroroperator+= (const HepSymMatrix &m2)
BesErroroperator+= (const BesError &m2)
BesError operator- () const
BesError operator- ()
BesError operator- () const
BesError operator- ()
BesErroroperator-= (const HepDiagMatrix &m2)
BesErroroperator-= (const HepSymMatrix &m2)
BesErroroperator-= (const BesError &m2)
BesErroroperator-= (const HepDiagMatrix &m2)
BesErroroperator-= (const HepSymMatrix &m2)
BesErroroperator-= (const BesError &m2)
BesErroroperator/= (double t)
BesErroroperator/= (double t)
BesErroroperator= (const HepSymMatrix &v)
BesErroroperator= (const BesError &v)
BesErroroperator= (const HepSymMatrix &v)
BesErroroperator= (const BesError &v)
HepSymMatrix similarity (const HepSymMatrix &m1) const
double similarity (const HepVector &v) const
BesError similarity (const HepMatrix &m1) const
BesError similarity (const BesError &E)
BesError similarity (const HepLorentzRotation &rot) const
BesError similarity (const HepRotation &rot) const
HepSymMatrix similarity (const HepSymMatrix &m1) const
double similarity (const HepVector &v) const
BesError similarity (const HepMatrix &m1) const
BesError similarity (const BesError &E)
BesError similarity (const HepLorentzRotation &rot) const
BesError similarity (const HepRotation &rot) const
BesErrorsimilarityWith (const BesError &m, const HepMatrix &m1)
BesErrorsimilarityWith (const BesError &m, const HepMatrix &m1)

Static Public Attributes

const double chisqUndef = -1.

Friends

BesError operator * (const BesError &m1, double t)
BesError operator * (double t, const BesError &m1)
BesError operator * (const BesError &m1, double t)
BesError operator * (double t, const BesError &m1)
BesError operator+ (const BesError &m1, const BesError &m2)
BesError operator+ (const BesError &m1, const BesError &m2)
BesError operator- (const BesError &m1, const BesError &m2)
BesError operator- (const BesError &m1, const BesError &m2)
BesError operator/ (const BesError &m1, double t)
BesError operator/ (double t, const BesError &m1)
BesError operator/ (const BesError &m1, double t)
BesError operator/ (double t, const BesError &m1)
std::ostreamoperator<< (std::ostream &out, const BesError &mat)
std::ostreamoperator<< (std::ostream &out, const BesError &mat)
std::istreamoperator>> (std::istream &in, BesError &mat)
std::istreamoperator>> (std::istream &in, BesError &mat)


Constructor & Destructor Documentation

BesError::BesError  )  [inline]
 

00051 : HepSymMatrix() {}

BesError::BesError int  n  )  [inline]
 

00053 : HepSymMatrix(n, 0)                            {}

BesError::BesError const HepSymMatrix &  p  )  [inline]
 

00058 : HepSymMatrix(p)               {}

BesError::BesError const BesError v  )  [inline]
 

00061 : HepSymMatrix() {*this = v;}

BesError::BesError  )  [inline]
 

00051 : HepSymMatrix() {}

BesError::BesError int  n  )  [inline]
 

00053 : HepSymMatrix(n, 0)                            {}

BesError::BesError const HepSymMatrix &  p  )  [inline]
 

00058 : HepSymMatrix(p)               {}

BesError::BesError const BesError v  )  [inline]
 

00061 : HepSymMatrix() {*this = v;}


Member Function Documentation

double BesError::determineChisq const HepVector &  diff  )  const
 

double BesError::determineChisq const HepVector &  diff  )  const
 

00110 {
00111   int ierr;
00112   HepMatrix dMat(diff.num_row(), 1);
00113 
00114   for (int i = 0; i < diff.num_row(); i++) dMat[i][0] = diff[i];
00115   
00116   double chisq = (inverse(ierr).similarityT(dMat))[0][0];
00117 
00118   if (ierr == 0) return chisq;
00119   else           return chisqUndef;
00120 }

BesError& BesError::operator *= double  t  )  [inline]
 

00098     { return (BesError&) HepSymMatrix::operator*=(t); }

BesError& BesError::operator *= double  t  )  [inline]
 

00098     { return (BesError&) HepSymMatrix::operator*=(t); }

BesError& BesError::operator+= const HepDiagMatrix &  m2  )  [inline]
 

00139     {
00140       HepSymMatrix::operator+=(m2);
00141       return *this;
00142     }

BesError& BesError::operator+= const HepSymMatrix &  m2  )  [inline]
 

00123     {
00124       HepSymMatrix::operator+=(m2);
00125       return *this;
00126     }

BesError& BesError::operator+= const BesError m2  )  [inline]
 

00104     {
00105       HepSymMatrix::operator+=(m2);
00106       return *this;
00107     }

BesError& BesError::operator+= const HepDiagMatrix &  m2  )  [inline]
 

00139     {
00140       HepSymMatrix::operator+=(m2);
00141       return *this;
00142     }

BesError& BesError::operator+= const HepSymMatrix &  m2  )  [inline]
 

00123     {
00124       HepSymMatrix::operator+=(m2);
00125       return *this;
00126     }

BesError& BesError::operator+= const BesError m2  )  [inline]
 

00104     {
00105       HepSymMatrix::operator+=(m2);
00106       return *this;
00107     }

BesError BesError::operator-  )  const [inline]
 

00135     { BesError temp(*this); 
00136     return temp;}

BesError BesError::operator-  )  [inline]
 

00116     { BesError temp(*this); 
00117       return temp; }

BesError BesError::operator-  )  const [inline]
 

00135     { BesError temp(*this); 
00136     return temp;}

BesError BesError::operator-  )  [inline]
 

00116     { BesError temp(*this); 
00117       return temp; }

BesError& BesError::operator-= const HepDiagMatrix &  m2  )  [inline]
 

00145     {
00146       HepSymMatrix::operator-=(m2);
00147       return *this;
00148     }

BesError& BesError::operator-= const HepSymMatrix &  m2  )  [inline]
 

00129     {
00130       HepSymMatrix::operator-=(m2);
00131       return *this;
00132     }

BesError& BesError::operator-= const BesError m2  )  [inline]
 

00110     {
00111       HepSymMatrix::operator-=(m2);
00112       return *this;
00113     }

BesError& BesError::operator-= const HepDiagMatrix &  m2  )  [inline]
 

00145     {
00146       HepSymMatrix::operator-=(m2);
00147       return *this;
00148     }

BesError& BesError::operator-= const HepSymMatrix &  m2  )  [inline]
 

00129     {
00130       HepSymMatrix::operator-=(m2);
00131       return *this;
00132     }

BesError& BesError::operator-= const BesError m2  )  [inline]
 

00110     {
00111       HepSymMatrix::operator-=(m2);
00112       return *this;
00113     }

BesError& BesError::operator/= double  t  )  [inline]
 

00101     {return (BesError&) HepSymMatrix::operator/=(t); }

BesError& BesError::operator/= double  t  )  [inline]
 

00101     {return (BesError&) HepSymMatrix::operator/=(t); }

BesError& BesError::operator= const HepSymMatrix &  v  )  [inline]
 

00072     {
00073           if (this != &v) {
00074             HepSymMatrix::operator=(v);
00075       }
00076       return *this;
00077     }

BesError& BesError::operator= const BesError v  )  [inline]
 

00064     {
00065           if (this != &v) {
00066             HepSymMatrix::operator=(v);
00067       }
00068       return *this;
00069     }

BesError& BesError::operator= const HepSymMatrix &  v  )  [inline]
 

00072     {
00073           if (this != &v) {
00074             HepSymMatrix::operator=(v);
00075       }
00076       return *this;
00077     }

BesError& BesError::operator= const BesError v  )  [inline]
 

00064     {
00065           if (this != &v) {
00066             HepSymMatrix::operator=(v);
00067       }
00068       return *this;
00069     }

HepSymMatrix BesError::similarity const HepSymMatrix &  m1  )  const [inline]
 

00171        { return this->HepSymMatrix::similarity( m1 ); }

double BesError::similarity const HepVector &  v  )  const [inline]
 

00169        { return this->HepSymMatrix::similarity( v ); }

BesError BesError::similarity const HepMatrix &  m1  )  const [inline]
 

00158     {
00159       BesError mret(m1.num_row());
00160       mret.similarityWith(*this, m1);
00161       return mret;
00162     }

BesError BesError::similarity const BesError E  ) 
 

BesError BesError::similarity const HepLorentzRotation &  rot  )  const
 

BesError BesError::similarity const HepRotation &  rot  )  const
 

HepSymMatrix BesError::similarity const HepSymMatrix &  m1  )  const [inline]
 

00171        { return this->HepSymMatrix::similarity( m1 ); }

double BesError::similarity const HepVector &  v  )  const [inline]
 

00169        { return this->HepSymMatrix::similarity( v ); }

BesError BesError::similarity const HepMatrix &  m1  )  const [inline]
 

00158     {
00159       BesError mret(m1.num_row());
00160       mret.similarityWith(*this, m1);
00161       return mret;
00162     }

BesError BesError::similarity const BesError E  ) 
 

00076 {
00077   BesError mret(HepSymMatrix::similarity(E));
00078   return mret;
00079 }

BesError BesError::similarity const HepLorentzRotation &  rot  )  const
 

00064 {
00065   HepMatrix mat(4,4); 
00066   mat(1,1)=rot.xx(); mat(1,2)=rot.xy(); mat(1,3)=rot.xz(); mat(1,4)=rot.xt();
00067   mat(2,1)=rot.yx(); mat(2,2)=rot.yy(); mat(2,3)=rot.yz(); mat(2,4)=rot.yt();
00068   mat(3,1)=rot.zx(); mat(3,2)=rot.zy(); mat(3,3)=rot.zz(); mat(3,4)=rot.zt();
00069   mat(4,1)=rot.tx(); mat(4,2)=rot.ty(); mat(4,3)=rot.tz(); mat(4,4)=rot.tt();
00070 
00071   HepSymMatrix w = similarity(mat);
00072   return w;
00073 }

BesError BesError::similarity const HepRotation &  rot  )  const
 

00052 {
00053   HepMatrix mat(3,3); 
00054   mat(1,1)=rot.xx(); mat(1,2)=rot.xy(); mat(1,3)=rot.xz();
00055   mat(2,1)=rot.yx(); mat(2,2)=rot.yy(); mat(2,3)=rot.yz();
00056   mat(3,1)=rot.zx(); mat(3,2)=rot.zy(); mat(3,3)=rot.zz();
00057 
00058   HepSymMatrix w = similarity(mat);
00059   return w;
00060 }

BesError& BesError::similarityWith const BesError m,
const HepMatrix &  m1
 

BesError & BesError::similarityWith const BesError m,
const HepMatrix &  m1
 

00083 {
00084   assert(num_row() == m1.num_row());
00085   HepMatrix temp = m1*mat;
00086   register double tmp;
00087 
00088   for (int r = 0; r < num_row(); r++) {
00089     for (int c = 0; c <= r; c++) {
00090       tmp = 0.;
00091       for (int k = 0; k < m1.num_col(); k++) {
00092         tmp += temp[r][k]*m1[c][k];
00093       }
00094       (*this)[r][c] = tmp;
00095     }
00096   }
00097   return *this;
00098 }


Friends And Related Function Documentation

BesError operator * const BesError m1,
double  t
[friend]
 

00163   {
00164     BesError mret = m1;
00165     mret *= t;
00166     return mret;
00167   }

BesError operator * double  t,
const BesError m1
[friend]
 

00156   {
00157     BesError mret = m1;
00158     mret *= t;
00159     return mret;
00160   }

BesError operator * const BesError m1,
double  t
[friend]
 

00163   {
00164     BesError mret = m1;
00165     mret *= t;
00166     return mret;
00167   }

BesError operator * double  t,
const BesError m1
[friend]
 

00156   {
00157     BesError mret = m1;
00158     mret *= t;
00159     return mret;
00160   }

BesError operator+ const BesError m1,
const BesError m2
[friend]
 

00184   {
00185     BesError mret = m1;
00186     mret += m2;
00187     return mret;
00188   }

BesError operator+ const BesError m1,
const BesError m2
[friend]
 

00184   {
00185     BesError mret = m1;
00186     mret += m2;
00187     return mret;
00188   }

BesError operator- const BesError m1,
const BesError m2
[friend]
 

00191   {
00192     BesError mret = m1;
00193     mret -= m2;
00194     return mret;
00195   }

BesError operator- const BesError m1,
const BesError m2
[friend]
 

00191   {
00192     BesError mret = m1;
00193     mret -= m2;
00194     return mret;
00195   }

BesError operator/ const BesError m1,
double  t
[friend]
 

00177   {
00178     BesError mret = m1;
00179     mret /= t;
00180     return mret;
00181   }

BesError operator/ double  t,
const BesError m1
[friend]
 

00170   {
00171     BesError mret = m1;
00172     mret /= t;
00173     return mret;
00174   }

BesError operator/ const BesError m1,
double  t
[friend]
 

00177   {
00178     BesError mret = m1;
00179     mret /= t;
00180     return mret;
00181   }

BesError operator/ double  t,
const BesError m1
[friend]
 

00170   {
00171     BesError mret = m1;
00172     mret /= t;
00173     return mret;
00174   }

std::ostream& operator<< std::ostream out,
const BesError mat
[friend]
 

std::ostream& operator<< std::ostream out,
const BesError mat
[friend]
 

std::istream& operator>> std::istream in,
BesError mat
[friend]
 

std::istream& operator>> std::istream in,
BesError mat
[friend]
 


Member Data Documentation

const double BesError::chisqUndef = -1. [static]
 


The documentation for this class was generated from the following files:
Generated on Wed Feb 2 15:52:24 2011 for BOSS6.5.5 by  doxygen 1.3.9.1