Changeset 8961 in ntrip for trunk/BNC/src/PPP/pppFilter.cpp
- Timestamp:
- Jun 29, 2020, 10:09:16 AM (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/BNC/src/PPP/pppFilter.cpp
r8956 r8961 117 117 // Init Datum Trafo 118 118 // ---------------------------------------- 119 if ((OPT->_obsModelType == OPT->DCMcodeBias || 120 OPT->_obsModelType == OPT->DCMphaseBias) && 121 (_numEpoProcessing == 1)) { 119 if ((OPT->_obsModelType == OPT->DCMcodeBias || 120 OPT->_obsModelType == OPT->DCMphaseBias) && (_numEpoProcessing == 1)) { 122 121 _numAllUsedLCs = 0; 123 122 for (unsigned iSys = 0; iSys < OPT->systems().size(); iSys++) { 124 123 char system = OPT->systems()[iSys]; 125 124 _numAllUsedLCs += OPT->LCs(system).size(); 126 if (OPT->_pseudoObsIono && !epoch->pseudoObsIono()) {125 if (OPT->_pseudoObsIono && epoch->pseudoObsIono() == false) { 127 126 _numAllUsedLCs -= 1; // GIM not used 128 127 } 129 128 } 130 int maxObs = allObs.size() * _numAllUsedLCs; 129 int modify = 0; 130 if (OPT->_pseudoObsTropo) { 131 modify = -1; 132 } 133 // max Obs 134 int maxObs = allObs.size() * (_numAllUsedLCs + modify); 135 if (OPT->_pseudoObsIono && epoch->pseudoObsIono() == true) { // stecDiff w.r.t refSat 136 maxObs -= 1; 137 } 138 if (OPT->_pseudoObsTropo) { 139 maxObs += 1; // once per station 140 } 131 141 _datumTrafo->initAA(maxObs, _parlist->nPar()); 132 142 } … … 144 154 _refPrn = (_obsPool->getRefSatMapElement(system))->prn(); 145 155 if (_obsPool->hasHistoricalRefSat(_refPrn)) { 156 LOG << epoTimeStr << " Warning: prevent to process erroneous refSat again!"; 146 157 return failure; 147 158 } … … 219 230 } 220 231 221 unsigned usedLCs = LCs.size(); //qDebug() << "usedLCs: " << usedLCs;232 unsigned usedLCs = LCs.size(); 222 233 if (OPT->_pseudoObsIono && !pseudoObsIonoAvailable) { 223 234 usedLCs -= 1; // GIM not used 224 235 } 236 225 237 ColumnVector xSav = _xFlt; 226 238 SymmetricMatrix QSav = _QFlt; 227 239 string epoTimeStr = string(_epoTime); 228 240 const vector<t_pppParam*>& params = _parlist->params(); 229 unsigned maxObs = obsVector.size() * usedLCs; 230 //unsigned maxObs = 2 * usedLCs; 231 241 int modify = 0; 242 if (OPT->_pseudoObsTropo) { 243 modify = -1; 244 } 245 // max Obs 246 unsigned maxObs = obsVector.size() * (usedLCs + modify); 232 247 if (OPT->_pseudoObsIono && pseudoObsIonoAvailable) { // stecDiff w.r.t refSat 233 248 maxObs -= 1; 249 } 250 if (OPT->_pseudoObsTropo) { 251 maxObs +=1; // tropo pseudo obs once per station 234 252 } 235 253 … … 257 275 for (unsigned jj = 0; jj < usedLCs; jj++) { 258 276 const t_lc::type tLC = LCs[jj]; 259 if (tLC == t_lc::GIM && obs->isReference()) {continue;} 277 if (tLC == t_lc::GIM && obs->isReference()) {continue;} 278 if (tLC == t_lc::Tz0 && ii+1 != obsVector.size()) {continue;} 260 279 ++iObs; 261 280 usedObs.push_back(obs); … … 417 436 _slips[obs->prn()]._obsSlipCounter = obs->slipCounter(); 418 437 } 419 420 438 if (_slips[obs->prn()]._biasJumpCounter != -1 && 421 439 _slips[obs->prn()]._biasJumpCounter != obs->biasJumpCounter()) { … … 468 486 t_irc t_pppFilter::resetAmb(t_prn prn, const vector<t_pppSatObs*>& obsVector, 469 487 SymmetricMatrix* QSav, ColumnVector* xSav) { 470 488 471 489 t_irc irc = failure; 472 490 vector<t_pppParam*>& params = _parlist->params(); … … 587 605 //////////////////////////////////////////////////////////////////////////// 588 606 void t_pppFilter::datumTransformation(const ColumnVector& xFltOld, const SymmetricMatrix& QFltOld) { 589 590 607 Matrix D21 = _datumTrafo->computeTrafoMatrix(); 591 608 _QFlt << D21 * QFltOld * D21.t();
Note:
See TracChangeset
for help on using the changeset viewer.