Index: trunk/BNC/src/PPP_free/pppClient.cpp
===================================================================
--- trunk/BNC/src/PPP_free/pppClient.cpp	(revision 6111)
+++ trunk/BNC/src/PPP_free/pppClient.cpp	(revision 6112)
@@ -139,5 +139,5 @@
     output->_xyzRover[1] = _filter->y();
     output->_xyzRover[2] = _filter->z();
-    // copy(&_filter->Q().data()[0], &_filter->Q().data()[6], _output->_covMatrix);
+    copy(&_filter->Q().data()[0], &_filter->Q().data()[6], output->_covMatrix);
     output->_neu[0]      = 0.0;
     output->_neu[1]      = 0.0;
Index: trunk/BNC/src/PPP_free/pppFilter.cpp
===================================================================
--- trunk/BNC/src/PPP_free/pppFilter.cpp	(revision 6111)
+++ trunk/BNC/src/PPP_free/pppFilter.cpp	(revision 6112)
@@ -172,4 +172,10 @@
   // ---------------------------------------------
   _epoData_sav = new t_epoData();
+
+  // Some statistics
+  // ---------------
+  _neu.ReSize(3); _neu = 0.0;
+  _numSat = 0;
+  _pDop   = 0.0;
 }
 
@@ -624,4 +630,8 @@
   LOG << endl << endl;
 
+  // Compute dilution of precision
+  // -----------------------------
+  cmpDOP(epoData);
+
   // Final Message (both log file and screen)
   // ----------------------------------------
@@ -645,11 +655,10 @@
     double ellRef[3];
     xyz2ell(OPT->_xyzAprRover.data(), ellRef);
-    double neu[3];
-    xyz2neu(ellRef, xyz, neu);
+    xyz2neu(ellRef, xyz, _neu.data());
 
     LOG << "  NEU "
-        << setw(8) << setprecision(3) << neu[0] << " "
-        << setw(8) << setprecision(3) << neu[1] << " "
-        << setw(8) << setprecision(3) << neu[2] << endl << endl;
+        << setw(8) << setprecision(3) << _neu[0] << " "
+        << setw(8) << setprecision(3) << _neu[1] << " "
+        << setw(8) << setprecision(3) << _neu[2] << endl << endl;
   }
   else {
Index: trunk/BNC/src/PPP_free/pppFilter.h
===================================================================
--- trunk/BNC/src/PPP_free/pppFilter.h	(revision 6111)
+++ trunk/BNC/src/PPP_free/pppFilter.h	(revision 6112)
@@ -148,4 +148,8 @@
   t_irc update(t_epoData* epoData);
   bncTime time()  const {return _time;}
+  const SymmetricMatrix& Q() const {return _QQ;}
+  const ColumnVector& neu() const {return _neu;}
+  int    numSat() const {return _numSat;}
+  double PDOP()   const {return _pDop;}
   double x()      const {return _params[0]->xx;}
   double y()      const {return _params[1]->xx;}
@@ -235,4 +239,5 @@
   bncAntex*             _antex;
   t_tides*              _tides;
+  ColumnVector          _neu;
   int                   _numSat;
   double                _pDop;
