Index: trunk/SophyaLib/NTools/tmatrix.cc
===================================================================
--- trunk/SophyaLib/NTools/tmatrix.cc	(revision 300)
+++ trunk/SophyaLib/NTools/tmatrix.cc	(revision 301)
@@ -1,3 +1,3 @@
-// $Id: tmatrix.cc,v 1.5 1999-05-17 17:16:43 ansari Exp $
+// $Id: tmatrix.cc,v 1.6 1999-05-18 12:23:13 ansari Exp $
 //                         C.Magneville          04/99
 #include "machdefs.h"
@@ -66,6 +66,6 @@
 TMatrix<T> a; a.Clone(*this); a.SetTemp(true);
 a.mNr = mNc; a.mNc = mNr;
-{for(int i=0; i<mNr; i++)
-  for(int j=0; j<mNc; j++) {
+{for(uint_4 i=0; i<mNr; i++)
+  for(uint_4 j=0; j<mNc; j++) {
     a(j,i) = (*this)(i,j);
 }}
@@ -187,7 +187,10 @@
 //////////////////////////////////////////////////////////
 //**** Residus des fits
-TMatrix<r_8> TMatrix<r_8>::FitResidus(GeneralFit& gfit)
-//	Retourne une classe contenant les residus du fit ``gfit''.
-//	On suppose que x=j (colonnes) et y=i (lignes) pour m(i,j).
+TMatrix<r_8> TMatrix<r_8>::FitResidus(GeneralFit& gfit
+            ,double xorg,double yorg,double dx,double dy)
+// Retourne une classe contenant les residus du fit ``gfit''.
+// On suppose que x=j (colonnes) et y=i (lignes) pour m(i,j).
+// Les coordonnees de l'element (i,j) sont :
+//    (i,j) -> x = xorg+j*dx , y = yorg+i*dy
 {
 if(NCols()<=0||NRows()<=0)
@@ -202,6 +205,6 @@
 {for(int i=0;i<npar;i++) par[i] = gfit.GetParm(i);}
 TMatrix<r_8> m(*this);
-for(int i=0;i<NRows();i++) for(int j=0;j<NCols();j++) {
-  double x[2] = {(double)j,(double)i}; // attention x=col y=row!!
+for(uint_4 i=0;i<NRows();i++) for(uint_4 j=0;j<NCols();j++) {
+  double x[2] = {xorg+j*dx,yorg+i*dy};
   m(i,j) -= f->Value(x,par);
 }
@@ -210,7 +213,10 @@
 }
 
-TMatrix<r_8> TMatrix<r_8>::FitFunction(GeneralFit& gfit)
-//	Retourne une classe contenant la fonction du fit ``gfit''.
-//	On suppose que x=j (colonnes) et y=i (lignes) pour m(i,j).
+TMatrix<r_8> TMatrix<r_8>::FitFunction(GeneralFit& gfit
+            ,double xorg,double yorg,double dx,double dy)
+// Retourne une classe contenant la fonction du fit ``gfit''.
+// On suppose que x=j (colonnes) et y=i (lignes) pour m(i,j).
+// Les coordonnees de l'element (i,j) sont :
+//    (i,j) -> x = xorg + j*dx , y = yorg + i*dy
 {
 if(NCols()<=0||NRows()<=0)
@@ -225,6 +231,6 @@
 {for(int i=0;i<npar;i++) par[i] = gfit.GetParm(i);}
 TMatrix<r_8> m(*this);
-for(int i=0;i<NRows();i++) for(int j=0;j<NCols();j++) {
-  double x[2] = {(double)j,(double)i};
+for(uint_4 i=0;i<NRows();i++) for(uint_4 j=0;j<NCols();j++) {
+  double x[2] = {xorg+j*dx,yorg+i*dy};
   m(i,j) = f->Value(x,par);
 }
Index: trunk/SophyaLib/NTools/tmatrix.h
===================================================================
--- trunk/SophyaLib/NTools/tmatrix.h	(revision 300)
+++ trunk/SophyaLib/NTools/tmatrix.h	(revision 301)
@@ -100,6 +100,8 @@
 
   // Residus et fonction fittees.
-  TMatrix<T> FitResidus(GeneralFit& gfit);
-  TMatrix<T> FitFunction(GeneralFit& gfit);
+  TMatrix<T> FitResidus(GeneralFit& gfit
+            ,double xorg=0.,double yorg=0.,double dx=1.,double dy=1.);
+  TMatrix<T> FitFunction(GeneralFit& gfit
+            ,double xorg=0.,double yorg=0.,double dx=1.,double dy=1.);
 
 protected:
Index: trunk/SophyaLib/NTools/tvector.cc
===================================================================
--- trunk/SophyaLib/NTools/tvector.cc	(revision 300)
+++ trunk/SophyaLib/NTools/tvector.cc	(revision 301)
@@ -1,3 +1,3 @@
-// $Id: tvector.cc,v 1.1 1999-05-17 17:16:44 ansari Exp $
+// $Id: tvector.cc,v 1.2 1999-05-18 12:23:15 ansari Exp $
 //                         C.Magneville          04/99
 #include "machdefs.h"
@@ -53,7 +53,7 @@
 //////////////////////////////////////////////////////////
 //**** Residus des fits
-TVector<r_8> TVector<r_8>::FitResidus(GeneralFit& gfit)
-//	Retourne une classe contenant les residus du fit ``gfit''.
-//	On suppose que x=i.
+TVector<r_8> TVector<r_8>::FitResidus(GeneralFit& gfit,double xorg,double dx)
+// Retourne une classe contenant les residus du fit ``gfit''.
+// La coordonnee de l'element (i) est -> x = xorg + i*dx
 {
 if(NElts()<=0)
@@ -69,5 +69,5 @@
 TVector<r_8> v(*this);
 for(int i=0;i<NElts();i++) {
-  double x = (double)i;
+  double x = xorg+i*dx;
   v(i) -= f->Value(&x,par);
 }
@@ -76,7 +76,7 @@
 }
 
-TVector<r_8> TVector<r_8>::FitFunction(GeneralFit& gfit)
-//	Retourne une classe contenant la fonction du fit ``gfit''.
-//	On suppose que x=i.
+TVector<r_8> TVector<r_8>::FitFunction(GeneralFit& gfit,double xorg,double dx)
+// Retourne une classe contenant la fonction du fit ``gfit''.
+// La coordonnee de l'element (i) est -> x = xorg + i*dx
 {
 if(NElts()<=0)
@@ -91,6 +91,6 @@
 {for(int i=0;i<npar;i++) par[i] = gfit.GetParm(i);}
 TVector<r_8> v(*this);
-for(int i=0;i<NElts();i++) {
-  double x = (double)i;
+for(uint_4 i=0;i<NElts();i++) {
+  double x = xorg+i*dx;
   v(i) = f->Value(&x,par);
 }
Index: trunk/SophyaLib/NTools/tvector.h
===================================================================
--- trunk/SophyaLib/NTools/tvector.h	(revision 300)
+++ trunk/SophyaLib/NTools/tvector.h	(revision 301)
@@ -37,6 +37,6 @@
 
   // Residus et fonction fittees.
-  TVector<T> FitResidus(GeneralFit& gfit);
-  TVector<T> FitFunction(GeneralFit& gfit);
+  TVector<T> FitResidus(GeneralFit& gfit,double xorg=0.,double dx=1.);
+  TVector<T> FitFunction(GeneralFit& gfit,double xorg=0.,double dx=1.);
 
 };
