Changeset 9527 in ntrip for trunk/BNC/src/PPP/pppParlist.cpp


Ignore:
Timestamp:
Nov 2, 2021, 5:00:00 PM (2 years ago)
Author:
stuerze
Message:

update regarding PPP

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/BNC/src/PPP/pppParlist.cpp

    r9526 r9527  
    452452        char sys = par->prn().system();
    453453        t_prn refPrn = (refSatMap[sys])->prn();
    454         if (par->lastObsTime().valid() &&
    455             ((epoTime - par->lastObsTime() > 1.0) || (par->prn() == refPrn))) {
     454        if (par->lastObsTime().valid() && par->prn() == refPrn) {
    456455            remove = true;
    457456        }
     
    465464
    466465    else if (par->type() == t_pppParam::ion) {
    467       if (OPT->_obsModelType == OPT->DCMcodeBias ||
    468           OPT->_obsModelType == OPT->DCMphaseBias) {
    469         if (par->lastObsTime().valid() && (epoTime - par->lastObsTime() > 1.0)) {
    470             remove = true;
    471         }
    472       }
    473       else {
    474         if (par->lastObsTime().valid() && (epoTime - par->lastObsTime() > 60.0)) {
    475             remove = true;
    476         }
     466      if (par->lastObsTime().valid() && (epoTime - par->lastObsTime() > 60.0)) {
     467          remove = true;
    477468      }
    478469    }
    479470    if (remove) {
    480471#ifdef BNC_DEBUG_PPP
    481       LOG << "remove " << par->toString() << std::endl;
     472      LOG << "remove0 " << par->toString() << std::endl;
    482473#endif
    483474      delete par;
     
    513504  }
    514505
    515   // Check if ambiguity parameters have observations
    516   // -----------------------------------------------
     506
    517507  if (OPT->_obsModelType == OPT->DCMcodeBias ||
    518508      OPT->_obsModelType == OPT->DCMphaseBias) {
     509    // Check if ambiguity parameters have observations
     510    // -----------------------------------------------
    519511    vector<t_pppParam*>::iterator it = _params.begin();
     512    QList<t_prn> lostSats;
    520513    while (it != _params.end()) {
    521514      t_pppParam* par = *it;
    522       bool remove = false;
    523       if (par->type() == t_pppParam::amb && !par->lastObsTime().valid()) {
    524         remove = true;
    525       }
    526       if (remove) {
     515      if ((par->type() == t_pppParam::amb) &&
     516          (!par->lastObsTime().valid() || epoTime - par->lastObsTime() == 1.0)) {
    527517#ifdef BNC_DEBUG_PPP
    528         LOG << "remove " << par->toString() << std::endl;
     518        LOG << "remove1 " << par->toString() << std::endl;
    529519#endif
     520        lostSats.append(par->prn());
     521        delete par;
     522        it = _params.erase(it);
     523      }
     524      else {
     525        ++it;
     526      }
     527    }
     528    // remove respective iono parameters
     529    // ---------------------------------
     530    it = _params.begin();
     531    while (it != _params.end()) {
     532      t_pppParam* par = *it;
     533      if ((par->type() == t_pppParam::ion) &&
     534          (lostSats.contains(par->prn()) || epoTime - par->lastObsTime() == 1.0)) {
     535    #ifdef BNC_DEBUG_PPP
     536        LOG << "remove1 " << par->toString() << std::endl;
     537    #endif
    530538        delete par;
    531539        it = _params.erase(it);
     
    828836//
    829837////////////////////////////////////////////////////////////////////////////
    830 void t_pppParlist::printParams() {
     838void t_pppParlist::printParams(const bncTime& epoTime) {
    831839
    832840  for (unsigned iPar = 0; iPar < _params.size(); iPar++) {
    833     LOG << "t_pppFilter::processEpoch par_cur " << _params[iPar]->toString()
    834         << "  lastObsTime().valid() " << _params[iPar]->lastObsTime().valid() << endl;
    835   }
    836 }
    837 
     841    LOG << _params[iPar]->toString()
     842        << "\t  lastObsTime().valid() \t" << _params[iPar]->lastObsTime().valid()
     843        << "\t  epoTime - par->lastObsTime() \t" << (epoTime - _params[iPar]->lastObsTime())
     844        << endl;
     845  }
     846}
     847
Note: See TracChangeset for help on using the changeset viewer.