diff --git a/asimage/src/TASImage.cxx b/asimage/src/TASImage.cxx
index e20e04400a8e3840f2bcda89f9a4071be73dd94a..3324b7179142a7d22e7b99e3c7bd1dfac7dd7b27 100644
--- a/asimage/src/TASImage.cxx
+++ b/asimage/src/TASImage.cxx
@@ -58,6 +58,7 @@
 #include "TASImage.h"
 #include "TASImagePlugin.h"
 #include "TROOT.h"
+#include "TMath.h"
 #include "TSystem.h"
 #include "TVirtualX.h"
 #include "TCanvas.h"
diff --git a/hist/src/TH1.cxx b/hist/src/TH1.cxx
index daef175e9de67eef8c8445c3e11f84611845fa43..480d0bd6049c749e179942323fa6f7616ad35d36 100644
--- a/hist/src/TH1.cxx
+++ b/hist/src/TH1.cxx
@@ -1,4 +1,4 @@
-// @(#)root/hist:$Name:  $:$Id: TH1.cxx,v 1.328 2007/02/01 14:21:01 brun Exp $
+// @(#)root/hist:$Name:  $:$Id: TH1.cxx,v 1.329 2007/02/01 14:58:44 brun Exp $
 // Author: Rene Brun   26/12/94
 
 /*************************************************************************
@@ -17,6 +17,7 @@
 #include "Riostream.h"
 #include "TROOT.h"
 #include "TClass.h"
+#include "TMath.h"
 #include "THashList.h"
 #include "TH1.h"
 #include "TH2.h"
diff --git a/hist/src/TPrincipal.cxx b/hist/src/TPrincipal.cxx
index e45eabede5dd5714f85d2ff475ec207080573b7a..d473ebbffb074186174b74b101213eaad659dcd8 100644
--- a/hist/src/TPrincipal.cxx
+++ b/hist/src/TPrincipal.cxx
@@ -1,4 +1,4 @@
-// @(#)root/hist:$Name:  $:$Id: TPrincipal.cxx,v 1.31 2006/05/23 04:47:40 brun Exp $
+// @(#)root/hist:$Name:  $:$Id: TPrincipal.cxx,v 1.32 2006/05/24 14:55:26 brun Exp $
 // Author: Christian Holm Christensen    1/8/2000
 
 /*************************************************************************
@@ -667,8 +667,8 @@ in the transformed space.
 <!--*/
 // -->End_Html
 
-// $Id: TPrincipal.cxx,v 1.31 2006/05/23 04:47:40 brun Exp $
-// $Date: 2006/05/23 04:47:40 $
+// $Id: TPrincipal.cxx,v 1.32 2006/05/24 14:55:26 brun Exp $
+// $Date: 2006/05/24 14:55:26 $
 // $Author: brun $
 
 #include "TPrincipal.h"
@@ -676,6 +676,7 @@ in the transformed space.
 #include "TVectorD.h"
 #include "TMatrixD.h"
 #include "TMatrixDSymEigen.h"
+#include "TMath.h"
 #include "TList.h"
 #include "TH2.h"
 #include "TDatime.h"
diff --git a/matrix/inc/TMatrixTSparse.h b/matrix/inc/TMatrixTSparse.h
index afd61db1c7ff703a1eb2e9e99c7d35d16acb9d76..ecbf0404a10014fbdae5311ca6ea3078a5c62760 100644
--- a/matrix/inc/TMatrixTSparse.h
+++ b/matrix/inc/TMatrixTSparse.h
@@ -1,4 +1,4 @@
-// @(#)root/matrix:$Name:  $:$Id: TMatrixTSparse.h,v 1.6 2006/10/06 06:52:34 brun Exp $
+// @(#)root/matrix:$Name:  $:$Id: TMatrixTSparse.h,v 1.7 2006/11/22 16:52:54 rdm Exp $
 // Authors: Fons Rademakers, Eddy Offermann   Feb 2004
 
 /*************************************************************************
@@ -147,8 +147,8 @@ public:
                                               { MayNotUse("NormByDiag"); return *this; }
 
    // Either access a_ij as a(i,j)
-   inline       Element                          operator()(Int_t rown,Int_t coln) const;
-                Element                         &operator()(Int_t rown,Int_t coln);
+   Element  operator()(Int_t rown,Int_t coln) const;
+   Element &operator()(Int_t rown,Int_t coln);
 
    // or as a[i][j]
    inline const TMatrixTSparseRow_const<Element> operator[](Int_t rown) const { return TMatrixTSparseRow_const<Element>(*this,rown); }
@@ -210,34 +210,6 @@ inline TMatrixTSparse<Element>  TMatrixTSparse<Element>::GetSub(Int_t row_lwb,In
                                                                     return tmp;
                                                                   }
 
-template <class Element>
-inline Element TMatrixTSparse<Element>::operator()(Int_t rown,Int_t coln) const
-{
-   R__ASSERT(this->IsValid());
-   if (this->fNrowIndex > 0 && this->fRowIndex[this->fNrowIndex-1] == 0) {
-      Error("operator()(Int_t,Int_t) const","row/col indices are not set");
-      Info("operator()","fNrowIndex = %d fRowIndex[fNrowIndex-1] = %d\n",this->fNrowIndex,this->fRowIndex[this->fNrowIndex-1]);
-      return 0.0;
-   }
-   const Int_t arown = rown-this->fRowLwb;
-   const Int_t acoln = coln-this->fColLwb;
-
-   if (arown >= this->fNrows || arown < 0) {
-      Error("operator()","Request row(%d) outside matrix range of %d - %d",rown,this->fRowLwb,this->fRowLwb+this->fNrows);
-      return 0.0;
-   }
-   if (acoln >= this->fNcols || acoln < 0) {
-      Error("operator()","Request column(%d) outside matrix range of %d - %d",coln,this->fColLwb,this->fColLwb+this->fNcols);
-      return 0.0;
-   }
-
-   const Int_t sIndex = fRowIndex[arown];
-   const Int_t eIndex = fRowIndex[arown+1];
-   const Int_t index = (Int_t)TMath::BinarySearch(eIndex-sIndex,fColIndex+sIndex,acoln)+sIndex;
-   if (index < sIndex || fColIndex[index] != acoln) return 0.0;
-   else                                             return fElements[index];
-}
-
 template <class Element> TMatrixTSparse<Element>  operator+ (const TMatrixTSparse<Element> &source1,const TMatrixTSparse<Element> &source2);
 template <class Element> TMatrixTSparse<Element>  operator+ (const TMatrixTSparse<Element> &source1,const TMatrixT<Element>       &source2);
 template <class Element> TMatrixTSparse<Element>  operator+ (const TMatrixT<Element>       &source1,const TMatrixTSparse<Element> &source2);
diff --git a/matrix/inc/TMatrixTUtils.h b/matrix/inc/TMatrixTUtils.h
index c68941fae1e4a19ecf991070420cf17d76f079aa..27a631309f1512ea9a864546ae280addff5fa180 100644
--- a/matrix/inc/TMatrixTUtils.h
+++ b/matrix/inc/TMatrixTUtils.h
@@ -1,4 +1,4 @@
-// @(#)root/matrix:$Name:  $:$Id: TMatrixTUtils.h,v 1.6 2006/10/06 06:52:34 brun Exp $
+// @(#)root/matrix:$Name:  $:$Id: TMatrixTUtils.h,v 1.7 2007/01/15 10:16:15 brun Exp $
 // Authors: Fons Rademakers, Eddy Offermann   Nov 2003
 
 /*************************************************************************
@@ -36,9 +36,6 @@
 #ifndef ROOT_TMatrixTBase
 #include "TMatrixTBase.h"
 #endif
-#ifndef ROOT_TMath
-#include "TMath.h"
-#endif
 
 template<class Element> class TVectorT;
 template<class Element> class TMatrixT;
@@ -600,19 +597,7 @@ public:
    inline       Int_t                  GetRowIndex() const { return fRowInd; }
    inline       Int_t                  GetNindex  () const { return fNindex; }
 
-   inline Element operator()(Int_t i) const {
-      R__ASSERT(fMatrix->IsValid());
-      const Int_t acoln = i-fMatrix->GetColLwb();
-      if (acoln < fMatrix->GetNcols() && acoln >= 0) {
-         const Int_t index = TMath::BinarySearch(fNindex,fColPtr,acoln);
-         if (index >= 0 && fColPtr[index] == acoln) return fDataPtr[index];
-         else                                       return 0.0;
-      } else {
-         Error("operator()","Request col(%d) outside matrix range of %d - %d",
-                            i,fMatrix->GetColLwb(),fMatrix->GetColLwb()+fMatrix->GetNcols());
-         return 0.0;
-      }
-   }
+          Element operator()(Int_t i) const;
    inline Element operator[](Int_t i) const { return (*(const TMatrixTSparseRow_const<Element> *)this)(i); }
 
    ClassDef(TMatrixTSparseRow_const,0)  // Template of Sparse Matrix Row Access class
@@ -627,19 +612,7 @@ public:
 
    inline Element *GetDataPtr() const { return const_cast<Element *>(this->fDataPtr); }
 
-   inline Element  operator()(Int_t i) const {
-      R__ASSERT(this->fMatrix->IsValid());
-      const Int_t acoln = i-this->fMatrix->GetColLwb();
-      if (acoln < this->fMatrix->GetNcols() && acoln >= 0) {
-         const Int_t index = TMath::BinarySearch(this->fNindex,this->fColPtr,acoln);
-         if (index >= 0 && this->fColPtr[index] == acoln) return this->fDataPtr[index];
-         else                                             return 0.0;
-      } else {
-         Error("operator()","Request col(%d) outside matrix range of %d - %d",
-                            i,this->fMatrix->GetColLwb(),this->fMatrix->GetColLwb()+this->fMatrix->GetNcols());
-         return 0.0;
-      }
-   }
+          Element  operator()(Int_t i) const;
           Element &operator()(Int_t i);
    inline Element  operator[](Int_t i) const { return (*(const TMatrixTSparseRow<Element> *)this)(i); }
    inline Element &operator[](Int_t i)       { return (*(TMatrixTSparseRow<Element> *)this)(i); }
@@ -686,24 +659,7 @@ public:
    inline const Element               *GetDataPtr() const { return fDataPtr; }
    inline       Int_t                  GetNdiags () const { return fNdiag; }
 
-   inline Element operator ()(Int_t i) const {
-      R__ASSERT(fMatrix->IsValid());
-      if (i < fNdiag && i >= 0) {
-         const Int_t   * const pR = fMatrix->GetRowIndexArray();
-         const Int_t   * const pC = fMatrix->GetColIndexArray();
-         const Element * const pD = fMatrix->GetMatrixArray();
-         const Int_t sIndex = pR[i];
-         const Int_t eIndex = pR[i+1];
-         const Int_t index = TMath::BinarySearch(eIndex-sIndex,pC+sIndex,i)+sIndex;
-         if (index >= sIndex && pC[index] == i) return pD[index];
-         else                                   return 0.0;
-      } else {
-         Error("operator()","Request diagonal(%d) outside matrix range of 0 - %d",i,fNdiag);
-         return 0.0;
-      }
-      return 0.0;
-   }
-
+          Element operator ()(Int_t i) const;
    inline Element operator [](Int_t i) const { return (*(const TMatrixTSparseRow_const<Element> *)this)(i); }
 
    ClassDef(TMatrixTSparseDiag_const,0)  // Template of Sparse Matrix Diagonal Access class
@@ -718,23 +674,7 @@ public:
 
    inline Element *GetDataPtr() const { return const_cast<Element *>(this->fDataPtr); }
 
-   inline       Element  operator()(Int_t i) const {
-      R__ASSERT(this->fMatrix->IsValid());
-      if (i < this->fNdiag && i >= 0) {
-         const Int_t   * const pR = this->fMatrix->GetRowIndexArray();
-         const Int_t   * const pC = this->fMatrix->GetColIndexArray();
-         const Element * const pD = this->fMatrix->GetMatrixArray();
-         const Int_t sIndex = pR[i];
-         const Int_t eIndex = pR[i+1];
-         const Int_t index = TMath::BinarySearch(eIndex-sIndex,pC+sIndex,i)+sIndex;
-         if (index >= sIndex && pC[index] == i) return pD[index];
-         else                                   return 0.0;
-      } else {
-         Error("operator()","Request diagonal(%d) outside matrix range of 0 - %d",i,this->fNdiag);
-         return 0.0;
-      }
-      return 0.0;
-   }
+                Element  operator()(Int_t i) const;
                 Element &operator()(Int_t i);
    inline       Element  operator[](Int_t i) const { return (*(const TMatrixTSparseDiag<Element> *)this)(i); }
    inline       Element &operator[](Int_t i)       { return (*(TMatrixTSparseDiag<Element> *)this)(i); }
diff --git a/matrix/src/TMatrixT.cxx b/matrix/src/TMatrixT.cxx
index c0dc87d4001dbc0b52d9aee551a643485d3b6108..0be3736b84ff8b9bd1be80973b68099aca2d9d45 100644
--- a/matrix/src/TMatrixT.cxx
+++ b/matrix/src/TMatrixT.cxx
@@ -1,4 +1,4 @@
-// @(#)root/matrix:$Name:  $:$Id: TMatrixT.cxx,v 1.21 2006/08/30 12:54:13 brun Exp $
+// @(#)root/matrix:$Name:  $:$Id: TMatrixT.cxx,v 1.22 2006/10/06 06:52:34 brun Exp $
 // Authors: Fons Rademakers, Eddy Offermann   Nov 2003
 
 /*************************************************************************
@@ -27,6 +27,7 @@
 #include "TDecompLU.h"
 #include "TMatrixDEigen.h"
 #include "TClass.h"
+#include "TMath.h"
 
 #ifndef R__ALPHA
 templateClassImp(TMatrixT)
diff --git a/matrix/src/TMatrixTBase.cxx b/matrix/src/TMatrixTBase.cxx
index 1b6bcda1baee69eb0d5538fad1abd229cd57c19a..f0736a40df43f66b2aa73becab6f414875707eb0 100644
--- a/matrix/src/TMatrixTBase.cxx
+++ b/matrix/src/TMatrixTBase.cxx
@@ -1,4 +1,4 @@
-// @(#)root/matrix:$Name:  $:$Id: TMatrixTBase.cxx,v 1.14 2007/01/24 16:29:27 brun Exp $
+// @(#)root/matrix:$Name:  $:$Id: TMatrixTBase.cxx,v 1.15 2007/01/29 15:10:49 brun Exp $
 // Authors: Fons Rademakers, Eddy Offermann   Nov 2003
 
 /*************************************************************************
@@ -206,6 +206,7 @@
 #include "TVectorT.h"
 #include "TROOT.h"
 #include "TClass.h"
+#include "TMath.h"
 
 Int_t gMatrixCheck = 1;
 
diff --git a/matrix/src/TMatrixTSparse.cxx b/matrix/src/TMatrixTSparse.cxx
index 43c5f593dc40b6e5f223160f66b97cbc97f7a8b3..b3d411d3d381a7a9010b64c3a49df14f09ba9958 100644
--- a/matrix/src/TMatrixTSparse.cxx
+++ b/matrix/src/TMatrixTSparse.cxx
@@ -1,4 +1,4 @@
-// @(#)root/matrix:$Name:  $:$Id: TMatrixTSparse.cxx,v 1.10 2006/10/06 06:52:34 brun Exp $
+// @(#)root/matrix:$Name:  $:$Id: TMatrixTSparse.cxx,v 1.11 2007/01/15 10:16:15 brun Exp $
 // Authors: Fons Rademakers, Eddy Offermann   Feb 2004
 
 /*************************************************************************
@@ -2092,6 +2092,35 @@ Element &TMatrixTSparse<Element>::operator()(Int_t rown,Int_t coln)
    }
 }
 
+//______________________________________________________________________________
+template <class Element>
+inline Element TMatrixTSparse<Element>::operator()(Int_t rown,Int_t coln) const
+{
+   R__ASSERT(this->IsValid());
+   if (this->fNrowIndex > 0 && this->fRowIndex[this->fNrowIndex-1] == 0) {
+      Error("operator()(Int_t,Int_t) const","row/col indices are not set");
+      Info("operator()","fNrowIndex = %d fRowIndex[fNrowIndex-1] = %d\n",this->fNrowIndex,this->fRowIndex[this->fNrowIndex-1]);
+      return 0.0;
+   }
+   const Int_t arown = rown-this->fRowLwb;
+   const Int_t acoln = coln-this->fColLwb;
+
+   if (arown >= this->fNrows || arown < 0) {
+      Error("operator()","Request row(%d) outside matrix range of %d - %d",rown,this->fRowLwb,this->fRowLwb+this->fNrows);
+      return 0.0;
+   }
+   if (acoln >= this->fNcols || acoln < 0) {
+      Error("operator()","Request column(%d) outside matrix range of %d - %d",coln,this->fColLwb,this->fColLwb+this->fNcols);
+      return 0.0;
+   }
+
+   const Int_t sIndex = fRowIndex[arown];
+   const Int_t eIndex = fRowIndex[arown+1];
+   const Int_t index = (Int_t)TMath::BinarySearch(eIndex-sIndex,fColIndex+sIndex,acoln)+sIndex;
+   if (index < sIndex || fColIndex[index] != acoln) return 0.0;
+   else                                             return fElements[index];
+}
+
 //______________________________________________________________________________
 template<class Element>
 TMatrixTSparse<Element> &TMatrixTSparse<Element>::operator=(const TMatrixTSparse<Element> &source)
diff --git a/matrix/src/TMatrixTSym.cxx b/matrix/src/TMatrixTSym.cxx
index d1da6d699cb95e1688da1d688b6bdb63846c8525..368e6554854aacfb0dd0fbaa1f7e7941cff1fe7f 100644
--- a/matrix/src/TMatrixTSym.cxx
+++ b/matrix/src/TMatrixTSym.cxx
@@ -1,4 +1,4 @@
-// @(#)root/matrix:$Name:  $:$Id: TMatrixTSym.cxx,v 1.16 2006/08/30 12:54:13 brun Exp $
+// @(#)root/matrix:$Name:  $:$Id: TMatrixTSym.cxx,v 1.17 2006/10/06 06:52:34 brun Exp $
 // Authors: Fons Rademakers, Eddy Offermann  Nov 2003
 
 /*************************************************************************
@@ -27,6 +27,7 @@
 #include "TDecompLU.h"
 #include "TMatrixDSymEigen.h"
 #include "TClass.h"
+#include "TMath.h"
 
 #ifndef R__ALPHA
 templateClassImp(TMatrixTSym)
diff --git a/matrix/src/TMatrixTUtils.cxx b/matrix/src/TMatrixTUtils.cxx
index 4e3fec4bd436eb8edf20311ab9063a4be4e2f023..61ca8371a5e8809acb0e599128e5fdddbd831f80 100644
--- a/matrix/src/TMatrixTUtils.cxx
+++ b/matrix/src/TMatrixTUtils.cxx
@@ -1,4 +1,4 @@
-// @(#)root/matrix:$Name:  $:$Id: TMatrixTUtils.cxx,v 1.7 2006/10/06 06:52:34 brun Exp $
+// @(#)root/matrix:$Name:  $:$Id: TMatrixTUtils.cxx,v 1.8 2007/01/15 10:16:15 brun Exp $
 // Authors: Fons Rademakers, Eddy Offermann  Nov 2003
 
 /*************************************************************************
@@ -1330,6 +1330,23 @@ TMatrixTSparseRow_const<Element>::TMatrixTSparseRow_const(const TMatrixTSparse<E
    fDataPtr = matrix.GetMatrixArray()+sIndex;
 }
 
+//______________________________________________________________________________
+template<class Element>
+Element TMatrixTSparseRow_const<Element>::operator()(Int_t i) const
+{
+  R__ASSERT(fMatrix->IsValid());
+  const Int_t acoln = i-fMatrix->GetColLwb();
+  if (acoln < fMatrix->GetNcols() && acoln >= 0) {
+     const Int_t index = TMath::BinarySearch(fNindex,fColPtr,acoln);
+     if (index >= 0 && fColPtr[index] == acoln) return fDataPtr[index];
+     else                                       return 0.0;
+  } else {
+     Error("operator()","Request col(%d) outside matrix range of %d - %d",
+                        i,fMatrix->GetColLwb(),fMatrix->GetColLwb()+fMatrix->GetNcols());
+     return 0.0;
+  }
+ }
+
 //______________________________________________________________________________
 template<class Element>
 TMatrixTSparseRow<Element>::TMatrixTSparseRow(TMatrixTSparse<Element> &matrix,Int_t row)
@@ -1348,6 +1365,23 @@ TMatrixTSparseRow<Element>::TMatrixTSparseRow(const TMatrixTSparseRow<Element> &
    *this = mr;
 }
 
+//______________________________________________________________________________
+template<class Element>
+Element TMatrixTSparseRow<Element>::operator()(Int_t i) const
+{
+  R__ASSERT(this->fMatrix->IsValid());
+  const Int_t acoln = i-this->fMatrix->GetColLwb();
+  if (acoln < this->fMatrix->GetNcols() && acoln >= 0) {
+     const Int_t index = TMath::BinarySearch(this->fNindex,this->fColPtr,acoln);
+     if (index >= 0 && this->fColPtr[index] == acoln) return this->fDataPtr[index];
+     else                                             return 0.0;
+  } else {
+     Error("operator()","Request col(%d) outside matrix range of %d - %d",
+                        i,this->fMatrix->GetColLwb(),this->fMatrix->GetColLwb()+this->fMatrix->GetNcols());
+     return 0.0;
+  }
+}
+
 //______________________________________________________________________________
 template<class Element>
 Element &TMatrixTSparseRow<Element>::operator()(Int_t i)
@@ -1564,6 +1598,27 @@ TMatrixTSparseDiag_const<Element>::TMatrixTSparseDiag_const(const TMatrixTSparse
    fDataPtr = matrix.GetMatrixArray();
 }
 
+//______________________________________________________________________________
+template<class Element>
+Element TMatrixTSparseDiag_const<Element>::operator()(Int_t i) const
+{
+  R__ASSERT(fMatrix->IsValid());
+  if (i < fNdiag && i >= 0) {
+     const Int_t   * const pR = fMatrix->GetRowIndexArray();
+     const Int_t   * const pC = fMatrix->GetColIndexArray();
+     const Element * const pD = fMatrix->GetMatrixArray();
+     const Int_t sIndex = pR[i];
+     const Int_t eIndex = pR[i+1];
+     const Int_t index = TMath::BinarySearch(eIndex-sIndex,pC+sIndex,i)+sIndex;
+     if (index >= sIndex && pC[index] == i) return pD[index];
+     else                                   return 0.0;
+  } else {
+     Error("operator()","Request diagonal(%d) outside matrix range of 0 - %d",i,fNdiag);
+     return 0.0;
+  }
+  return 0.0;
+}
+
 //______________________________________________________________________________
 template<class Element>
 TMatrixTSparseDiag<Element>::TMatrixTSparseDiag(TMatrixTSparse<Element> &matrix)
@@ -1582,6 +1637,27 @@ TMatrixTSparseDiag<Element>::TMatrixTSparseDiag(const TMatrixTSparseDiag<Element
    *this = md;
 }
 
+//______________________________________________________________________________
+template<class Element>
+Element TMatrixTSparseDiag<Element>::operator()(Int_t i) const
+{
+    R__ASSERT(this->fMatrix->IsValid());
+    if (i < this->fNdiag && i >= 0) {
+       const Int_t   * const pR = this->fMatrix->GetRowIndexArray();
+       const Int_t   * const pC = this->fMatrix->GetColIndexArray();
+       const Element * const pD = this->fMatrix->GetMatrixArray();
+       const Int_t sIndex = pR[i];
+       const Int_t eIndex = pR[i+1];
+       const Int_t index = TMath::BinarySearch(eIndex-sIndex,pC+sIndex,i)+sIndex;
+       if (index >= sIndex && pC[index] == i) return pD[index];
+       else                                   return 0.0;
+    } else {
+       Error("operator()","Request diagonal(%d) outside matrix range of 0 - %d",i,this->fNdiag);
+       return 0.0;
+    }
+    return 0.0;
+ }
+
 //______________________________________________________________________________
 template<class Element>
 Element &TMatrixTSparseDiag<Element>::operator()(Int_t i)
diff --git a/matrix/src/TVectorT.cxx b/matrix/src/TVectorT.cxx
index ea5c25b52fc263455a3636b3a656a5f0c1f71c9e..d13142afe6175405e9ed94f4562a4eb77a34b75c 100644
--- a/matrix/src/TVectorT.cxx
+++ b/matrix/src/TVectorT.cxx
@@ -1,4 +1,4 @@
-// @(#)root/matrix:$Name:  $:$Id: TVectorT.cxx,v 1.21 2007/01/20 19:29:34 brun Exp $
+// @(#)root/matrix:$Name:  $:$Id: TVectorT.cxx,v 1.22 2007/01/29 15:10:49 brun Exp $
 // Authors: Fons Rademakers, Eddy Offermann  Nov 2003
 
 /*************************************************************************
@@ -36,6 +36,7 @@
 
 #include "TVectorT.h"
 #include "TClass.h"
+#include "TMath.h"
 #include "TROOT.h"
 #include "Varargs.h"
 
diff --git a/minuit/src/TLinearFitter.cxx b/minuit/src/TLinearFitter.cxx
index 7ec440a1e6d6acd60e9027a10d0f6d19f3e3bedb..0fcaff2cf3fe60b98778d795a71e3f95245292d7 100644
--- a/minuit/src/TLinearFitter.cxx
+++ b/minuit/src/TLinearFitter.cxx
@@ -1,4 +1,4 @@
-// @(#)root/minuit:$Name:  $:$Id: TLinearFitter.cxx,v 1.33 2006/10/07 05:38:16 brun Exp $
+// @(#)root/minuit:$Name:  $:$Id: TLinearFitter.cxx,v 1.34 2006/11/13 11:24:15 brun Exp $
 // Author: Anna Kreshuk 04/03/2005
 
 /*************************************************************************
@@ -10,6 +10,7 @@
  *************************************************************************/
 
 #include "TLinearFitter.h"
+#include "TMath.h"
 #include "TDecompChol.h"
 #include "TGraph.h"
 #include "TGraph2D.h"
diff --git a/mlp/src/TMLPAnalyzer.cxx b/mlp/src/TMLPAnalyzer.cxx
index 37f86b841ad6c6809ca7616d748b4acbe5e4d549..43be646b3d6ad3f08a08816e2cff05244fa3c6e4 100644
--- a/mlp/src/TMLPAnalyzer.cxx
+++ b/mlp/src/TMLPAnalyzer.cxx
@@ -1,4 +1,4 @@
-// @(#)root/mlp:$Name:  $:$Id: TMLPAnalyzer.cxx,v 1.16 2006/05/26 15:13:02 rdm Exp $
+// @(#)root/mlp:$Name:  $:$Id: TMLPAnalyzer.cxx,v 1.17 2007/01/30 11:24:32 brun Exp $
 // Author: Christophe.Delaere@cern.ch   25/04/04
 
 /*************************************************************************
@@ -36,6 +36,7 @@
 #include "TCanvas.h"
 #include "TGaxis.h"
 #include "TRegexp.h"
+#include "TMath.h"
 #include "Riostream.h"
 
 ClassImp(TMLPAnalyzer)
diff --git a/physics/inc/TLorentzVector.h b/physics/inc/TLorentzVector.h
index 320e4218a8cc6bc2ede049e95b7d08e7d8469ecc..53f296f9aabfcea86cb0e1b5439a89e87ba77fa7 100644
--- a/physics/inc/TLorentzVector.h
+++ b/physics/inc/TLorentzVector.h
@@ -1,4 +1,4 @@
-// @(#)root/physics:$Name:  $:$Id: TLorentzVector.h,v 1.13 2006/05/16 08:13:31 brun Exp $
+// @(#)root/physics:$Name:  $:$Id: TLorentzVector.h,v 1.14 2006/07/11 09:05:01 rdm Exp $
 // Author: Pasha Murat , Peter Malzacher  12/02/99
 
 /*************************************************************************
@@ -21,6 +21,9 @@
 //                                                                      //
 //////////////////////////////////////////////////////////////////////////
 
+#ifndef ROOT_TMath
+#include "TMath.h"
+#endif
 #ifndef ROOT_TVector3
 #include "TVector3.h"
 #endif
diff --git a/physics/src/TQuaternion.cxx b/physics/src/TQuaternion.cxx
index 0b1e7f958dff361117b6d9429bef4c0666a9c5c0..127250764f36f016c148f21efebe6af8eae37036 100644
--- a/physics/src/TQuaternion.cxx
+++ b/physics/src/TQuaternion.cxx
@@ -1,4 +1,4 @@
-// @(#)root/physics:$Name:  $:$Id: TQuaternion.cxx,v 1.3 2005/11/24 17:08:35 rdm Exp $
+// @(#)root/physics:$Name:  $:$Id: TQuaternion.cxx,v 1.4 2006/05/16 08:13:31 brun Exp $
 // Author: Eric Anciant 28/06/2005
 
 
@@ -94,6 +94,7 @@
 // </p>
 // End_html
 
+#include "TMath.h"
 #include "TQuaternion.h"
 
 ClassImp(TQuaternion)
diff --git a/physics/src/TRotation.cxx b/physics/src/TRotation.cxx
index ea1ad9a9af7d41f0b4950dba840ecee9c9f5adeb..d36a454c5f1ccf257c48e8dad19a4993617a8612 100644
--- a/physics/src/TRotation.cxx
+++ b/physics/src/TRotation.cxx
@@ -1,4 +1,4 @@
-// @(#)root/physics:$Name:  $:$Id: TRotation.cxx,v 1.12 2006/07/28 15:15:01 rdm Exp $
+// @(#)root/physics:$Name:  $:$Id: TRotation.cxx,v 1.13 2007/01/03 14:43:10 brun Exp $
 // Author: Peter Malzacher   19/06/99
 
 //______________________________________________________________________________
@@ -179,6 +179,7 @@ a rotation of a <TT>TVector3</TT> analog to the mathematical notation
 //
 
 #include "TRotation.h"
+#include "TMath.h"
 #include "TQuaternion.h"
 #include "TError.h"
 
diff --git a/quadp/src/TGondzioSolver.cxx b/quadp/src/TGondzioSolver.cxx
index 0ada8f808859b33689bbbf41de6fc3659d030e9c..97ed1244a43e11c413be2b551c8bc658186d3d85 100644
--- a/quadp/src/TGondzioSolver.cxx
+++ b/quadp/src/TGondzioSolver.cxx
@@ -1,4 +1,4 @@
-// @(#)root/quadp:$Name:  $:$Id: TGondzioSolver.cxx,v 1.9 2006/06/23 05:02:55 brun Exp $
+// @(#)root/quadp:$Name:  $:$Id: TGondzioSolver.cxx,v 1.10 2006/06/27 04:38:29 brun Exp $
 // Author: Eddy Offermann   May 2004
 
 /*************************************************************************
@@ -51,6 +51,7 @@
 
 
 #include "Riostream.h"
+#include "TMath.h"
 #include "TGondzioSolver.h"
 #include "TQpLinSolverDens.h"
 
diff --git a/quadp/src/TMehrotraSolver.cxx b/quadp/src/TMehrotraSolver.cxx
index 0b34c481c86c03231d0d44051e27caca45c7300a..ee84952bd0bcb0e1d42eb8de9af89e2b04ddd2e0 100644
--- a/quadp/src/TMehrotraSolver.cxx
+++ b/quadp/src/TMehrotraSolver.cxx
@@ -1,4 +1,4 @@
-// @(#)root/quadp:$Name:  $:$Id: TMehrotraSolver.cxx,v 1.5 2006/06/23 05:02:55 brun Exp $
+// @(#)root/quadp:$Name:  $:$Id: TMehrotraSolver.cxx,v 1.6 2006/06/27 04:38:29 brun Exp $
 // Author: Eddy Offermann   May 2004
 
 /*************************************************************************
@@ -50,6 +50,7 @@
 //////////////////////////////////////////////////////////////////////////
 
 #include "Riostream.h"
+#include "TMath.h"
 #include "TMehrotraSolver.h"
 
 ClassImp(TMehrotraSolver)
diff --git a/quadp/src/TQpSolverBase.cxx b/quadp/src/TQpSolverBase.cxx
index 7b4b80fc50fb77c1a35f8e783f289e6161ee756b..0f074299f64ab0afd89d0f293daf7878683cba61 100644
--- a/quadp/src/TQpSolverBase.cxx
+++ b/quadp/src/TQpSolverBase.cxx
@@ -1,4 +1,4 @@
-// @(#)root/quadp:$Name:  $:$Id: TQpSolverBase.cxx,v 1.7 2006/06/27 04:38:29 brun Exp $
+// @(#)root/quadp:$Name:  $:$Id: TQpSolverBase.cxx,v 1.8 2006/06/28 05:17:13 brun Exp $
 // Author: Eddy Offermann   May 2004
 
 /*************************************************************************
@@ -51,6 +51,7 @@
 //                                                                      //
 //////////////////////////////////////////////////////////////////////////
 
+#include "TMath.h"
 #include "TQpSolverBase.h"
 
 ClassImp(TQpSolverBase)
diff --git a/splot/src/TSPlot.cxx b/splot/src/TSPlot.cxx
index 60bc768a0287866f9184316640c8408963bcbc46..2aba7fc96f9d6b423f43795d075dcd45326ac108 100644
--- a/splot/src/TSPlot.cxx
+++ b/splot/src/TSPlot.cxx
@@ -1,4 +1,4 @@
-// @(#)root/splot:$Name:  $:$Id: TSPlot.cxx,v 1.7 2006/03/20 21:43:44 pcanal Exp $
+// @(#)root/splot:$Name:  $:$Id: TSPlot.cxx,v 1.8 2006/05/09 10:24:27 brun Exp $
 // Author: Muriel Pivk, Anna Kreshuk    10/2005  
 
 /**********************************************************************
@@ -16,6 +16,7 @@
 #include "TSelectorDraw.h"
 #include "TBrowser.h"
 #include "TClass.h"
+#include "TMath.h"
 
 extern void Yields(Int_t &, Double_t *, Double_t &f, Double_t *x, Int_t iflag);
 
diff --git a/tmva/src/DataSet.cxx b/tmva/src/DataSet.cxx
index ef65307cc675884351109338e529bbb5a99dbe2b..f13ee693eb05d53d934becf057a59094984b8320 100644
--- a/tmva/src/DataSet.cxx
+++ b/tmva/src/DataSet.cxx
@@ -1,4 +1,4 @@
-// @(#)root/tmva $Id: DataSet.cxx,v 1.82 2006/11/17 14:59:23 stelzer Exp $
+// @(#)root/tmva $Id: DataSet.cxx,v 1.7 2006/11/20 15:35:28 brun Exp $
 // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss
 
 /**********************************************************************************
@@ -35,6 +35,7 @@
 #include "TH1.h"
 #include "TH2.h"
 #include "TProfile.h"
+#include "TMath.h"
 #include "TMatrixF.h"
 #include "TVectorF.h"
 
diff --git a/tmva/src/DecisionTree.cxx b/tmva/src/DecisionTree.cxx
index 202965b0c886edb072b19ac69d99afe652a4fb2b..ea5c350b5fb3ccec2bf78fc80f3bc3485b2cef09 100644
--- a/tmva/src/DecisionTree.cxx
+++ b/tmva/src/DecisionTree.cxx
@@ -1,4 +1,4 @@
-// @(#)root/tmva $Id: DecisionTree.cxx,v 1.49 2006/11/19 15:35:34 helgevoss Exp $
+// @(#)root/tmva $Id: DecisionTree.cxx,v 1.11 2006/11/20 15:35:28 brun Exp $
 // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss
 
 /**********************************************************************************
@@ -27,7 +27,7 @@
  * (http://mva.sourceforge.net/license.txt)                                       *
  *                                                                                *
  * File and Version Information:                                                  *
- * $Id: DecisionTree.cxx,v 1.49 2006/11/19 15:35:34 helgevoss Exp $
+ * $Id: DecisionTree.cxx,v 1.11 2006/11/20 15:35:28 brun Exp $
  **********************************************************************************/
 
 //_______________________________________________________________________
@@ -59,6 +59,7 @@
 #include <iostream>
 #include <algorithm>
 
+#include "TMath.h"
 #include "TMVA/DecisionTree.h"
 #include "TMVA/DecisionTreeNode.h"
 #include "TMVA/BinarySearchTree.h"
diff --git a/tmva/src/MethodBDT.cxx b/tmva/src/MethodBDT.cxx
index e8e9dd099c913e2d6cb91a28eddffa8becb7de3c..be75831833dd4990cb3dea27639abde501408d06 100644
--- a/tmva/src/MethodBDT.cxx
+++ b/tmva/src/MethodBDT.cxx
@@ -1,4 +1,4 @@
-// @(#)root/tmva $Id: MethodBDT.cxx,v 1.11 2006/11/20 15:35:28 brun Exp $ 
+// @(#)root/tmva $Id: MethodBDT.cxx,v 1.12 2007/01/30 11:24:16 brun Exp $ 
 // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss 
 
 /**********************************************************************************
@@ -91,6 +91,7 @@
 //
 //_______________________________________________________________________
 
+#include <cmath>
 #include "TMVA/MethodBDT.h"
 #include "TMVA/Tools.h"
 #include "TMVA/Timer.h"
diff --git a/tmva/src/MethodCFMlpANN.cxx b/tmva/src/MethodCFMlpANN.cxx
index 625f29bf6f8a35a8002ede32dcd00a84ce35e339..d56d83efbce0e568bba62156dd075f0ed1ca6bc4 100644
--- a/tmva/src/MethodCFMlpANN.cxx
+++ b/tmva/src/MethodCFMlpANN.cxx
@@ -1,4 +1,4 @@
-// @(#)root/tmva $Id: MethodCFMlpANN.cxx,v 1.35 2006/11/17 00:21:35 stelzer Exp $    
+// @(#)root/tmva $Id: MethodCFMlpANN.cxx,v 1.10 2006/11/20 15:35:28 brun Exp $    
 // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss 
 
 /**********************************************************************************
@@ -63,6 +63,7 @@
 // End_Html
 //_______________________________________________________________________
 
+#include <cmath>
 #include "TMatrix.h"
 #include "TObjString.h"
 #include "Riostream.h"
diff --git a/tmva/src/MethodFisher.cxx b/tmva/src/MethodFisher.cxx
index 9d1f2e0c80c22d8a97eb23fac8dcea58c6cefc21..45740f819638d3aca3e7f422743c36a4fd137305 100644
--- a/tmva/src/MethodFisher.cxx
+++ b/tmva/src/MethodFisher.cxx
@@ -1,4 +1,4 @@
-// @(#)root/tmva $Id: MethodFisher.cxx,v 1.60 2006/11/20 13:20:16 stelzer Exp $
+// @(#)root/tmva $Id: MethodFisher.cxx,v 1.11 2006/11/20 15:35:28 brun Exp $
 // Author: Andreas Hoecker, Xavier Prudent, Joerg Stelzer, Helge Voss, Kai Voss 
 
 /**********************************************************************************
@@ -104,6 +104,7 @@
 //_______________________________________________________________________
 
 #include "Riostream.h"
+#include <cmath>
 #include <algorithm>
 #include "TMVA/MethodFisher.h"
 #include "TMVA/Tools.h"
diff --git a/tmva/src/MethodLikelihood.cxx b/tmva/src/MethodLikelihood.cxx
index dc8d9a6ea524888d8a336b3795349cc7d1c34410..e9e9c673df02de5aafc1bf470629f7cb4a913ab5 100644
--- a/tmva/src/MethodLikelihood.cxx
+++ b/tmva/src/MethodLikelihood.cxx
@@ -1,4 +1,4 @@
-// @(#)root/tmva $Id: MethodLikelihood.cxx,v 1.14 2007/01/23 11:26:36 brun Exp $ 
+// @(#)root/tmva $Id: MethodLikelihood.cxx,v 1.15 2007/01/30 10:19:25 brun Exp $ 
 // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss 
 
 /**********************************************************************************
@@ -102,6 +102,7 @@
 //End_Html
 //_______________________________________________________________________
 
+#include <cmath>
 #include "TMatrixD.h"
 #include "TVector.h"
 #include "TObjString.h"
diff --git a/tmva/src/Tools.cxx b/tmva/src/Tools.cxx
index ab70ba6dd85ddbdee505df88384d02913e03abe4..81a72b9438cae50ec0f616e3d72067b8edc49f45 100644
--- a/tmva/src/Tools.cxx
+++ b/tmva/src/Tools.cxx
@@ -1,4 +1,4 @@
-// @(#)root/tmva $Id: Tools.cxx,v 1.55 2006/11/16 22:51:59 helgevoss Exp $   
+// @(#)root/tmva $Id: Tools.cxx,v 1.10 2006/11/20 15:35:28 brun Exp $   
 // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss
 
 /**********************************************************************************
@@ -38,6 +38,7 @@
 #include "TMatrixD.h"
 #include "TVectorD.h"
 #include "TTreeFormula.h"
+#include "TMath.h"
 
 #ifndef TMVA_Tools
 #include "TMVA/Tools.h"