Changeset 6111 in ntrip


Ignore:
Timestamp:
Sep 8, 2014, 4:25:55 PM (10 years ago)
Author:
mervart
Message:
 
Location:
trunk/BNC/src/PPP_free
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/BNC/src/PPP_free/pppFilter.cpp

    r6106 r6111  
    12561256}
    12571257
     1258//
     1259////////////////////////////////////////////////////////////////////////////
     1260void t_pppFilter::cmpDOP(t_epoData* epoData) {
     1261
     1262  Tracer tracer("t_pppFilter::cmpDOP");
     1263
     1264  _numSat = 0;
     1265  _pDop   = 0.0;
     1266
     1267  if (_params.size() < 4) {
     1268    return;
     1269  }
     1270
     1271  const unsigned numPar = 4;
     1272  Matrix AA(epoData->sizeAll(), numPar);
     1273  QMapIterator<QString, t_satData*> it(epoData->satData);
     1274  while (it.hasNext()) {
     1275    it.next();
     1276    t_satData* satData = it.value();
     1277    _numSat += 1;
     1278    for (unsigned iPar = 0; iPar < numPar; iPar++) {
     1279      AA[_numSat-1][iPar] = _params[iPar]->partial(satData, false);
     1280    }
     1281  }
     1282  if (_numSat < 4) {
     1283    return;
     1284  }
     1285  AA = AA.Rows(1, _numSat);
     1286  SymmetricMatrix NN; NN << AA.t() * AA; 
     1287  SymmetricMatrix QQ = NN.i();
     1288   
     1289  _pDop = sqrt(QQ(1,1) + QQ(2,2) + QQ(3,3));
     1290}
  • trunk/BNC/src/PPP_free/pppFilter.h

    r6100 r6111  
    217217  void bancroft(const Matrix& BBpass, ColumnVector& pos);
    218218
     219  void cmpDOP(t_epoData* epoData);
     220
    219221  t_pppClient*          _pppClient;
    220222  bncTime               _time;
     
    233235  bncAntex*             _antex;
    234236  t_tides*              _tides;
     237  int                   _numSat;
     238  double                _pDop;
    235239};
    236240
Note: See TracChangeset for help on using the changeset viewer.