DifNumber Class Reference

#include <DifNumber.h>

List of all members.

Public Member Functions

 DifNumber ()
 DifNumber (double s, int npar=0)
 DifNumber (double s, const HepVector &d)
 DifNumber (double s, int i, double di, int npar)
 DifNumber (double s, int i, int npar)
 DifNumber (double s, const DifIndepPar *indeppar)
 DifNumber (double s, int i, const DifIndepPar *indepar)
 DifNumber (const DifNumber &s)
virtual ~DifNumber ()
void setNumber (double i)
void setNPar (int i)
void setDerivatives (const HepVector &d)
void setDerivative (int i, double value)
void zeroDerivatives ()
void setIndepPar (const DifIndepPar *par)
void extendPar (int nnew)
double number () const
double & gimeNumber ()
HepVector derivatives () const
double derivative (int i) const
int nMax ()
int nPar () const
const DifIndepParindepPar () const
double error (const HepSymMatrix &e) const
double error () const
void tickle () const
void print () const
DifNumberoperator+= (const DifNumber &a)
DifNumberoperator-= (const DifNumber &a)
DifNumberoperator *= (const DifNumber &a)
DifNumberoperator/= (const DifNumber &a)
DifNumberoperator= (const DifNumber &a)
DifNumber operator- () const
DifNumberoperator+= (const double &a)
DifNumberoperator-= (const double &a)
DifNumberoperator *= (const double &a)
DifNumberoperator/= (const double &a)
DifNumberoperator= (const double &a)
DifNumberinverse ()
DifNumberflipsign ()
DifNumberabsolute ()
void cosAndSin (DifNumber &c, DifNumber &s) const
DifNumbersquareRoot ()
DifNumbermod (double lo, double hi)
DifNumberarcTangent (const DifNumber &x)
DifNumberpower (double p)
DifNumberpower (const DifNumber &p)
double sign () const
double correlation (const DifNumber &b, const HepSymMatrix &e) const
double correlation (const DifNumber &b) const
void sumMatrix (HepMatrix &m) const
void fetchNumber (double &n) const
void fetchDerivatives (HepVector &v) const

Private Types

 _nmax = 100
enum  { _nmax = 100 }

Private Member Functions

 DifNumber (double newval, const DifNumber &old, double factor=0.0)
DifNumbercopyDerivs (const DifNumber &n)
DifNumberscaleDerivs (const DifNumber &n, double factor)
DifNumbercopyDerivs (const HepVector &v)
DifNumbercheck (const DifNumber &a)
DifNumbersetLike (const DifNumber &a)

Private Attributes

double _number
int _npar
const DifIndepPar_indepPar
double _derivatives [_nmax]

Friends

DifNumber operator+ (const DifNumber &a, const DifNumber &b)
DifNumber operator- (const DifNumber &a, const DifNumber &b)
DifNumber operator * (const DifNumber &a, const DifNumber &b)
DifNumber operator/ (const DifNumber &a, const DifNumber &b)
DifNumber operator+ (const DifNumber &a, const double &b)
DifNumber operator- (const DifNumber &a, const double &b)
DifNumber operator * (const DifNumber &a, const double &b)
DifNumber operator/ (const DifNumber &a, const double &b)
DifNumber operator+ (const double &a, const DifNumber &b)
DifNumber operator- (const double &a, const DifNumber &b)
DifNumber operator * (const double &a, const DifNumber &b)
DifNumber operator/ (const double &a, const DifNumber &b)
bool operator> (const DifNumber &a, const DifNumber &b)
bool operator> (const DifNumber &a, const double &b)
bool operator> (const double &a, const DifNumber &b)
bool operator< (const DifNumber &a, const DifNumber &b)
bool operator< (const DifNumber &a, const double &b)
bool operator< (const double &a, const DifNumber &b)
bool operator>= (const DifNumber &a, const DifNumber &b)
bool operator>= (const DifNumber &a, const double &b)
bool operator>= (const double &a, const DifNumber &b)
bool operator<= (const DifNumber &a, const DifNumber &b)
bool operator<= (const DifNumber &a, const double &b)
bool operator<= (const double &a, const DifNumber &b)
bool operator== (const DifNumber &a, const DifNumber &b)
bool operator== (const DifNumber &a, const double &b)
bool operator== (const double &a, const DifNumber &b)
bool operator!= (const DifNumber &a, const DifNumber &b)
bool operator!= (const DifNumber &a, const double &b)
bool operator!= (const double &a, const DifNumber &b)
DifNumber sin (const DifNumber &a)
DifNumber cos (const DifNumber &a)
DifNumber tan (const DifNumber &a)
DifNumber sec (const DifNumber &a)
DifNumber asin (const DifNumber &a)
DifNumber acos (const DifNumber &a)
DifNumber atan (const DifNumber &a)
DifNumber atan2 (const DifNumber &y, const DifNumber &x)
DifNumber atan2 (const DifNumber &y, const double &x)
DifNumber atan2 (const double &y, const DifNumber &x)
DifNumber exp (const DifNumber &a)
DifNumber cosh (const DifNumber &a)
DifNumber sinh (const DifNumber &a)
DifNumber tanh (const DifNumber &a)
DifNumber sqrt (const DifNumber &a)
DifNumber log (const DifNumber &a)
DifNumber fabs (const DifNumber &a)
DifNumber pow (const DifNumber &a, const DifNumber &b)
DifNumber pow (const DifNumber &a, int i)
DifNumber pow (const DifNumber &a, float i)
DifNumber pow (const DifNumber &a, double i)
double correlation (const DifNumber &a, const DifNumber &b, const HepSymMatrix &e)
double correlation (const DifNumber &a, const DifNumber &b)


Detailed Description

Definition at line 42 of file DifNumber.h.


Member Enumeration Documentation

anonymous enum [private]

Enumerator:
_nmax 

Definition at line 45 of file DifNumber.h.

00045 {_nmax=100};


Constructor & Destructor Documentation

DifNumber::DifNumber (  )  [inline]

Referenced by operator-().

DifNumber::DifNumber ( double  s,
int  npar = 0 
) [inline, explicit]

DifNumber::DifNumber ( double  s,
const HepVector &  d 
) [inline]

DifNumber::DifNumber ( double  s,
int  i,
double  di,
int  npar 
) [inline]

DifNumber::DifNumber ( double  s,
int  i,
int  npar 
) [inline]

DifNumber::DifNumber ( double  s,
const DifIndepPar indeppar 
) [inline]

DifNumber::DifNumber ( double  s,
int  i,
const DifIndepPar indepar 
) [inline]

DifNumber::DifNumber ( double  newval,
const DifNumber old,
double  factor = 0.0 
) [inline, private]

DifNumber::DifNumber ( const DifNumber s  )  [inline]

virtual DifNumber::~DifNumber (  )  [inline, virtual]

Definition at line 75 of file DifNumber.h.

00075 {}


Member Function Documentation

DifNumber& DifNumber::absolute (  )  [inline]

Definition at line 122 of file DifNumber.h.

References _number, and flipsign().

Referenced by TrkMomCalculator::calcCurvAllCovsOLD(), TrkMomCalculator::calcCurvAllWeightsOLD(), TrkMomCalculator::calcCurvErrMom(), and TrkMomCalculator::calcCurvPosmomCov().

00122 { if (_number<0) flipsign(); return *this; }

DifNumber& DifNumber::arcTangent ( const DifNumber x  )  [inline]

DifNumber& DifNumber::check ( const DifNumber a  )  [inline, private]

DifNumber& DifNumber::copyDerivs ( const HepVector &  v  )  [inline, private]

DifNumber& DifNumber::copyDerivs ( const DifNumber n  )  [inline, private]

Referenced by setDerivatives().

double DifNumber::correlation ( const DifNumber b  )  const

Definition at line 66 of file DifNumber.cxx.

References correlation(), and indepPar().

00066                                               {
00067   if(indepPar()==0) return 0.0;
00068   if(b.indepPar()!=indepPar()) return 0.0;
00069   return correlation(b,indepPar()->covariance());
00070 }

double DifNumber::correlation ( const DifNumber b,
const HepSymMatrix &  e 
) const

Definition at line 53 of file DifNumber.cxx.

References derivative(), error(), genRecEmupikp::i, ganga-rec::j, and nPar().

Referenced by correlation(), correlation(), and error().

00053                                                                      {
00054   assert(e.num_col()==nPar());
00055   assert(e.num_row()==b.nPar());
00056   double error = 0.;
00057   for(int i=1; i<=nPar(); i++) {
00058     for(int j=1; j<=b.nPar(); j++) {
00059       error+=derivative(i)*e(i,j)*b.derivative(j);
00060     }
00061   }
00062   return error;
00063 }

void DifNumber::cosAndSin ( DifNumber c,
DifNumber s 
) const [inline]

Referenced by TrkDifLineTraj::getDFInfo(), TrkCircleTraj::getDFInfo(), NeutTraj::getDFInfo(), HelixTraj::getDFInfo(), TrkCircleTraj::getDFInfo2(), and HelixTraj::getDFInfo2().

double DifNumber::derivative ( int  i  )  const [inline]

Definition at line 90 of file DifNumber.h.

References _derivatives.

Referenced by correlation(), fetchDerivatives(), DifVector::jacobian(), DifFourVector::jacobian(), and print().

00090 {return _derivatives[i-1];}

HepVector DifNumber::derivatives (  )  const

Definition at line 46 of file DifNumber.cxx.

References fetchDerivatives(), nPar(), and subSeperate::temp.

Referenced by TrkDifPoca::derivs(), and TrkRep::positionErr().

00046                                      {
00047     HepVector temp(nPar());
00048     fetchDerivatives(temp);
00049     return temp;
00050 }

double DifNumber::error (  )  const

Definition at line 36 of file DifNumber.cxx.

References indepPar().

Referenced by correlation().

00036                             {
00037   if(indepPar()==0) {return 0.0;}
00038   return error(indepPar()->covariance());
00039 }

double DifNumber::error ( const HepSymMatrix &  e  )  const

Definition at line 32 of file DifNumber.cxx.

References correlation(), and sqrt.

00032                                                   {
00033   return sqrt(correlation(*this,e));
00034 }

void DifNumber::extendPar ( int  nnew  )  [inline]

void DifNumber::fetchDerivatives ( HepVector &  v  )  const

Definition at line 41 of file DifNumber.cxx.

References derivative(), genRecEmupikp::i, nPar(), and v.

Referenced by derivatives(), and TrkDifPoca::fetchDerivs().

00041                                                   {
00042   assert(v.num_row()==nPar());
00043   for(int i=1; i<=nPar(); i++) {v(i)=derivative(i);}
00044 }

void DifNumber::fetchNumber ( double &  n  )  const [inline]

Definition at line 138 of file DifNumber.h.

References number().

00138 {n=number();}

DifNumber& DifNumber::flipsign (  )  [inline]

Referenced by absolute(), and TrkDifPoca::calcDist().

double& DifNumber::gimeNumber (  )  [inline]

Definition at line 88 of file DifNumber.h.

References _number.

00088 {return _number;}

const DifIndepPar* DifNumber::indepPar (  )  const [inline]

Definition at line 93 of file DifNumber.h.

References _indepPar.

Referenced by TrkMomCalculator::calcCurvAllCovsOLD(), TrkMomCalculator::calcCurvAllWeightsOLD(), TrkMomCalculator::calcCurvErrMom(), TrkMomCalculator::calcCurvPosmomCov(), TrkMomCalculator::calcNeutAllCovs(), TrkMomCalculator::calcNeutAllWeights(), TrkMomCalculator::calcNeutErrMom(), TrkMomCalculator::calcNeutPosmomCov(), correlation(), correlation(), TrkRep::directionErr(), TrkCompTrk::directionErr(), error(), TrkRep::positionErr(), and TrkCompTrk::positionErr().

00093 {return _indepPar;}

DifNumber& DifNumber::inverse (  )  [inline]

DifNumber& DifNumber::mod ( double  lo,
double  hi 
) [inline]

Referenced by TrkCircleTraj::getDFInfo(), HelixTraj::getDFInfo(), TrkCircleTraj::getDFInfo2(), and HelixTraj::getDFInfo2().

int DifNumber::nMax (  )  [inline]

Definition at line 91 of file DifNumber.h.

References _nmax.

00091 {return _nmax;}

int DifNumber::nPar (  )  const [inline]

Definition at line 92 of file DifNumber.h.

References _npar.

Referenced by correlation(), derivatives(), fetchDerivatives(), DifVector::jacobian(), DifFourVector::jacobian(), DifArray::jacobian(), print(), and zeroDerivatives().

00092 {return _npar;}

double DifNumber::number ( void   )  const [inline]

Definition at line 87 of file DifNumber.h.

References _number.

Referenced by TrkMomCalculator::calcCurvAllWeightsOLD(), TrkMomCalculator::calcCurvErrMom(), TrkDifPoca::calcDist(), TrkMomCalculator::calcNeutAllCovs(), TrkMomCalculator::calcNeutAllWeights(), TrkMomCalculator::calcNeutErrMom(), TrkRep::directionErr(), TrkCompTrk::directionErr(), TrkDifPoca::doca(), fetchNumber(), TrkRep::positionErr(), TrkCompTrk::positionErr(), print(), and solveQuad().

00087 {return _number;}

DifNumber& DifNumber::operator *= ( const double &  a  )  [inline]

DifNumber& DifNumber::operator *= ( const DifNumber a  )  [inline]

DifNumber& DifNumber::operator+= ( const double &  a  )  [inline]

DifNumber& DifNumber::operator+= ( const DifNumber a  )  [inline]

DifNumber DifNumber::operator- (  )  const [inline]

Definition at line 109 of file DifNumber.h.

References DifNumber().

00110   { return DifNumber(*this).flipsign(); } // unary minus

DifNumber& DifNumber::operator-= ( const double &  a  )  [inline]

DifNumber& DifNumber::operator-= ( const DifNumber a  )  [inline]

DifNumber& DifNumber::operator/= ( const double &  a  )  [inline]

DifNumber& DifNumber::operator/= ( const DifNumber a  )  [inline]

DifNumber& DifNumber::operator= ( const double &  a  )  [inline]

DifNumber& DifNumber::operator= ( const DifNumber a  )  [inline]

DifNumber& DifNumber::power ( const DifNumber p  )  [inline]

DifNumber& DifNumber::power ( double  p  )  [inline]

void DifNumber::print (  )  const

Definition at line 81 of file DifNumber.cxx.

References derivative(), genRecEmupikp::i, nPar(), and number().

00081                                          {
00082   cout << "number:" << number() << endl;
00083   cout << "npar:" << nPar() << endl;
00084   for(int i=1; i<=nPar(); i++) {
00085     cout << "derivative(" << i << "):" << derivative(i) << endl;
00086   }
00087 }

DifNumber& DifNumber::scaleDerivs ( const DifNumber n,
double  factor 
) [inline, private]

void DifNumber::setDerivative ( int  i,
double  value 
) [inline]

Definition at line 81 of file DifNumber.h.

References _derivatives.

Referenced by zeroDerivatives().

00081 { _derivatives[i-1]=value;}

void DifNumber::setDerivatives ( const HepVector &  d  )  [inline]

Definition at line 80 of file DifNumber.h.

References copyDerivs().

00080 { copyDerivs(d); }

void DifNumber::setIndepPar ( const DifIndepPar par  )  [inline]

Definition at line 83 of file DifNumber.h.

References _indepPar.

Referenced by TrkDifLineTraj::getDFInfo(), TrkCircleTraj::getDFInfo(), NeutTraj::getDFInfo(), HelixTraj::getDFInfo(), TrkCircleTraj::getDFInfo2(), and HelixTraj::getDFInfo2().

00083 { _indepPar=par;}

DifNumber& DifNumber::setLike ( const DifNumber a  )  [inline, private]

void DifNumber::setNPar ( int  i  )  [inline]

Definition at line 79 of file DifNumber.h.

References _npar.

Referenced by DifArray::copy(), and DifArray::zero().

00079 { _npar=i;}

void DifNumber::setNumber ( double  i  )  [inline]

Definition at line 78 of file DifNumber.h.

References _number.

00078 { _number=i;}

double DifNumber::sign (  )  const [inline]

Definition at line 130 of file DifNumber.h.

References _number.

00130 { return _number>=0 ? 1 : -1; }

DifNumber& DifNumber::squareRoot (  )  [inline]

void DifNumber::sumMatrix ( HepMatrix &  m  )  const

void DifNumber::tickle (  )  const [inline]

Definition at line 96 of file DifNumber.h.

00096 {return;} // tickle a number

void DifNumber::zeroDerivatives (  )  [inline]

Definition at line 82 of file DifNumber.h.

References nPar(), and setDerivative().

00082 { for(int i=1; i<=nPar(); i++) setDerivative(i,0.0); }


Friends And Related Function Documentation

DifNumber acos ( const DifNumber a  )  [friend]

DifNumber asin ( const DifNumber a  )  [friend]

DifNumber atan ( const DifNumber a  )  [friend]

DifNumber atan2 ( const double &  y,
const DifNumber x 
) [friend]

Definition at line 197 of file DifNumber.h.

00197 { return DifNumber(y).arcTangent(x); }

DifNumber atan2 ( const DifNumber y,
const double &  x 
) [friend]

Definition at line 196 of file DifNumber.h.

00196 { return DifNumber(y).arcTangent(DifNumber(x)); }

DifNumber atan2 ( const DifNumber y,
const DifNumber x 
) [friend]

Definition at line 195 of file DifNumber.h.

00195 { return DifNumber(y).arcTangent(x); }

double correlation ( const DifNumber a,
const DifNumber b 
) [friend]

Definition at line 72 of file DifNumber.cxx.

00073 { 
00074   return (a.indepPar()==0||b.indepPar()==0||a.indepPar()!=b.indepPar())?0:a.correlation(b,a.indepPar()->covariance()); 
00075 }

double correlation ( const DifNumber a,
const DifNumber b,
const HepSymMatrix &  e 
) [friend]

Definition at line 78 of file DifNumber.cxx.

00079 { return a.correlation(b,e); }

DifNumber cos ( const DifNumber a  )  [friend]

Definition at line 185 of file DifNumber.h.

00186   { return DifNumber(cos(a.number()),a,-sin(a.number())); }

DifNumber cosh ( const DifNumber a  )  [friend]

Definition at line 201 of file DifNumber.h.

00202   { return 0.5*(DifNumber(exp(a))+=exp(-a)); }

DifNumber exp ( const DifNumber a  )  [friend]

Definition at line 199 of file DifNumber.h.

00200   { double e=exp(a.number()); return DifNumber(e,a,e); }

DifNumber fabs ( const DifNumber a  )  [friend]

Definition at line 213 of file DifNumber.h.

00214   { return DifNumber(fabs(a.number()),a,a.sign()); }

DifNumber log ( const DifNumber a  )  [friend]

Definition at line 211 of file DifNumber.h.

00212   { return DifNumber(log(a.number()),a,1.0/a.number()); }

DifNumber operator * ( const double &  a,
const DifNumber b 
) [friend]

Definition at line 154 of file DifNumber.h.

00154 { return DifNumber(a)*=b; }

DifNumber operator * ( const DifNumber a,
const double &  b 
) [friend]

Definition at line 149 of file DifNumber.h.

00149 { return DifNumber(a)*=b; }

DifNumber operator * ( const DifNumber a,
const DifNumber b 
) [friend]

Definition at line 144 of file DifNumber.h.

00144 { return DifNumber(a)*=b; }

bool operator!= ( const double &  a,
const DifNumber b 
) [friend]

Definition at line 181 of file DifNumber.h.

00181 { return true; }

bool operator!= ( const DifNumber a,
const double &  b 
) [friend]

Definition at line 180 of file DifNumber.h.

00180 { return true; }

bool operator!= ( const DifNumber a,
const DifNumber b 
) [friend]

Definition at line 179 of file DifNumber.h.

00179 { return !(a==b); }

DifNumber operator+ ( const double &  a,
const DifNumber b 
) [friend]

Definition at line 152 of file DifNumber.h.

00152 { return DifNumber(a)+=b; }

DifNumber operator+ ( const DifNumber a,
const double &  b 
) [friend]

Definition at line 147 of file DifNumber.h.

00147 { return DifNumber(a)+=b; }

DifNumber operator+ ( const DifNumber a,
const DifNumber b 
) [friend]

Definition at line 142 of file DifNumber.h.

00142 { return DifNumber(a)+=b; }

DifNumber operator- ( const double &  a,
const DifNumber b 
) [friend]

Definition at line 153 of file DifNumber.h.

00153 { return DifNumber(a)-=b; }

DifNumber operator- ( const DifNumber a,
const double &  b 
) [friend]

Definition at line 148 of file DifNumber.h.

00148 { return DifNumber(a)-=b; }

DifNumber operator- ( const DifNumber a,
const DifNumber b 
) [friend]

Definition at line 143 of file DifNumber.h.

00143 { return DifNumber(a)-=b; }

DifNumber operator/ ( const double &  a,
const DifNumber b 
) [friend]

Definition at line 155 of file DifNumber.h.

00155 { return DifNumber(a)/=b; }

DifNumber operator/ ( const DifNumber a,
const double &  b 
) [friend]

Definition at line 150 of file DifNumber.h.

00150 { return DifNumber(a)/=b; }

DifNumber operator/ ( const DifNumber a,
const DifNumber b 
) [friend]

Definition at line 145 of file DifNumber.h.

00145 { return DifNumber(a)/=b; }

bool operator< ( const double &  a,
const DifNumber b 
) [friend]

Definition at line 164 of file DifNumber.h.

00164 { return b>a; }

bool operator< ( const DifNumber a,
const double &  b 
) [friend]

Definition at line 163 of file DifNumber.h.

00163 { return b>a; }

bool operator< ( const DifNumber a,
const DifNumber b 
) [friend]

Definition at line 162 of file DifNumber.h.

00162 { return b>a; }

bool operator<= ( const double &  a,
const DifNumber b 
) [friend]

Definition at line 173 of file DifNumber.h.

00173 { return b>=a; }

bool operator<= ( const DifNumber a,
const double &  b 
) [friend]

Definition at line 172 of file DifNumber.h.

00172 { return b>=a; }

bool operator<= ( const DifNumber a,
const DifNumber b 
) [friend]

Definition at line 171 of file DifNumber.h.

00171 { return b>=a; }

bool operator== ( const double &  a,
const DifNumber b 
) [friend]

Definition at line 177 of file DifNumber.h.

00177 {return false;}

bool operator== ( const DifNumber a,
const double &  b 
) [friend]

Definition at line 176 of file DifNumber.h.

00176 {return false;}

bool operator== ( const DifNumber a,
const DifNumber b 
) [friend]

bool operator> ( const double &  a,
const DifNumber b 
) [friend]

Definition at line 160 of file DifNumber.h.

00160 { return a>b.number(); }

bool operator> ( const DifNumber a,
const double &  b 
) [friend]

Definition at line 159 of file DifNumber.h.

00159 { return a.number()>b; }

bool operator> ( const DifNumber a,
const DifNumber b 
) [friend]

Definition at line 158 of file DifNumber.h.

00158 { return a.number()>b.number(); }

bool operator>= ( const double &  a,
const DifNumber b 
) [friend]

Definition at line 169 of file DifNumber.h.

00169 { return a>=b.number(); }

bool operator>= ( const DifNumber a,
const double &  b 
) [friend]

Definition at line 168 of file DifNumber.h.

00168 { return a.number()>=b; }

bool operator>= ( const DifNumber a,
const DifNumber b 
) [friend]

Definition at line 167 of file DifNumber.h.

00167 { return a.number()>=b.number(); }

DifNumber pow ( const DifNumber a,
double  i 
) [friend]

Definition at line 218 of file DifNumber.h.

00218                                                                           {
00219                           return i==0?DifNumber(1.0,a,0.0)
00220                                    :DifNumber(pow(a.number(),i),a,i*pow(a.number(),i-1)); }

DifNumber pow ( const DifNumber a,
float  i 
) [friend]

Definition at line 217 of file DifNumber.h.

00217 { return pow(a,(double)i);}

DifNumber pow ( const DifNumber a,
int  i 
) [friend]

Definition at line 216 of file DifNumber.h.

00216 { return pow(a,(double)i);}

DifNumber pow ( const DifNumber a,
const DifNumber b 
) [friend]

Definition at line 215 of file DifNumber.h.

00215 { return DifNumber(a).power(b); }

DifNumber sec ( const DifNumber a  )  [friend]

Definition at line 189 of file DifNumber.h.

00190   { return DifNumber(cos(a)).inverse(); }

DifNumber sin ( const DifNumber a  )  [friend]

Definition at line 183 of file DifNumber.h.

00184   { return DifNumber(sin(a.number()),a,cos(a.number())); }

DifNumber sinh ( const DifNumber a  )  [friend]

Definition at line 203 of file DifNumber.h.

00204   { return 0.5*(DifNumber(exp(a))-=exp(-a)); } 

DifNumber sqrt ( const DifNumber a  )  [friend]

Definition at line 209 of file DifNumber.h.

Referenced by error().

00210   { return DifNumber(a).squareRoot(); }

DifNumber tan ( const DifNumber a  )  [friend]

Definition at line 187 of file DifNumber.h.

00188   { double t=tan(a.number()); return DifNumber(t,a,1.0+t*t); }

DifNumber tanh ( const DifNumber a  )  [friend]

Definition at line 205 of file DifNumber.h.

00206   { double t=tanh(a.number()); return DifNumber(t,a,1.0-t*t); }


Member Data Documentation

double DifNumber::_derivatives[_nmax] [private]

Definition at line 235 of file DifNumber.h.

Referenced by derivative(), and setDerivative().

const DifIndepPar* DifNumber::_indepPar [private]

Definition at line 234 of file DifNumber.h.

Referenced by indepPar(), and setIndepPar().

int DifNumber::_npar [private]

Definition at line 233 of file DifNumber.h.

Referenced by nPar(), and setNPar().

double DifNumber::_number [private]

Definition at line 232 of file DifNumber.h.

Referenced by absolute(), gimeNumber(), number(), setNumber(), and sign().


Generated on Tue Nov 29 23:18:16 2016 for BOSS_7.0.2 by  doxygen 1.4.7