Changeset 8965 in ntrip for trunk/BNC/src/PPP


Ignore:
Timestamp:
Jun 30, 2020, 3:47:40 PM (4 years ago)
Author:
stuerze
Message:

minor changes

Location:
trunk/BNC/src/PPP
Files:
2 edited

Legend:

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

    r8961 r8965  
    118118  // ----------------------------------------
    119119  if ((OPT->_obsModelType == OPT->DCMcodeBias   ||
    120        OPT->_obsModelType == OPT->DCMphaseBias) && (_numEpoProcessing == 1)) {
     120       OPT->_obsModelType == OPT->DCMphaseBias) &&(_numEpoProcessing == 1)) {
    121121    _numAllUsedLCs = 0;
    122122    for (unsigned iSys = 0; iSys < OPT->systems().size(); iSys++) {
     
    125125      if (OPT->_pseudoObsIono && epoch->pseudoObsIono() == false) {
    126126        _numAllUsedLCs -= 1;  // GIM not used
    127       }
    128     }
    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     }
    141     _datumTrafo->initAA(maxObs, _parlist->nPar());
     127        if (OPT->_pseudoObsTropo) { // if no VTEC values /pseudo obs iono then no pseudo obs tropo
     128          _numAllUsedLCs -= 1;
     129        }
     130      }
     131      int modifyLCs = 0;
     132      if (OPT->_pseudoObsTropo &&
     133          OPT->_pseudoObsIono && epoch->pseudoObsIono() == true) {
     134        modifyLCs  = -1;
     135      }
     136      // max Obs
     137      int maxObs = allObs.size() * (_numAllUsedLCs + modifyLCs);
     138      if (OPT->_pseudoObsIono && epoch->pseudoObsIono() == true) {
     139        maxObs -= 1; // pseudo obs iono with respect to refSat
     140      }
     141      if (OPT->_pseudoObsIono && epoch->pseudoObsIono() == true &&
     142          OPT->_pseudoObsTropo) {
     143        maxObs += 1;   // pseudo obs tropo once per station
     144      }
     145      _datumTrafo->initAA(maxObs, _parlist->nPar());
     146    }
    142147  }
    143148
     
    225230  // Detect Cycle Slips
    226231  // ------------------
    227 
    228232  if (detectCycleSlips(LCs, obsVector, refPrn, preProcessing) != success) {
    229233    return failure;
     
    231235
    232236  unsigned usedLCs = LCs.size();
    233   if (OPT->_pseudoObsIono && !pseudoObsIonoAvailable) {
    234     usedLCs -= 1;  // GIM not used
    235   }
    236237
    237238  ColumnVector               xSav       = _xFlt;
     
    239240  string                     epoTimeStr = string(_epoTime);
    240241  const vector<t_pppParam*>& params     = _parlist->params();
    241   int modify = 0;
    242   if (OPT->_pseudoObsTropo) {
    243     modify  = -1;
     242
     243  if (OPT->_pseudoObsIono && !pseudoObsIonoAvailable) {
     244    usedLCs -= 1;  // GIM not used
     245    if (OPT->_pseudoObsTropo) { // if no VTEC values /pseudo obs iono then no pseudo obs tropo
     246      usedLCs -= 1;
     247    }
     248  }
     249
     250  int modifyLCs = 0;
     251  if (OPT->_pseudoObsTropo &&
     252      OPT->_pseudoObsIono && pseudoObsIonoAvailable) {
     253    modifyLCs  = -1;
    244254  }
    245255  // max Obs
    246   unsigned maxObs = obsVector.size() * (usedLCs + modify);
    247   if (OPT->_pseudoObsIono && pseudoObsIonoAvailable) { // stecDiff w.r.t refSat
    248     maxObs -= 1;
    249   }
    250   if (OPT->_pseudoObsTropo) {
    251     maxObs +=1;   // tropo pseudo obs once per station
     256  unsigned maxObs = obsVector.size() * (usedLCs + modifyLCs);
     257  if (OPT->_pseudoObsIono && pseudoObsIonoAvailable) {
     258    maxObs -= 1; // pseudo obs iono with respect to refSat
     259  }
     260  if (OPT->_pseudoObsIono && pseudoObsIonoAvailable &&
     261      OPT->_pseudoObsTropo) {
     262    maxObs += 1;   // pseudo obs tropo once per station
    252263  }
    253264
     
    272283    for (unsigned ii = 0; ii < obsVector.size(); ii++) {
    273284      t_pppSatObs* obs = obsVector[ii];
     285      unsigned hlp = ii+1;
    274286      if (!obs->outlier()) {
    275287        for (unsigned jj = 0; jj < usedLCs; jj++) {
    276288          const t_lc::type tLC = LCs[jj];
    277           if (tLC == t_lc::GIM && obs->isReference()) {continue;}
    278           if (tLC == t_lc::Tz0 && ii+1 != obsVector.size()) {continue;}
     289          if (tLC == t_lc::GIM &&  obs->isReference()) {continue;}
     290          if (tLC == t_lc::Tz0 && hlp != obsVector.size()) {continue;}
    279291          ++iObs;
    280292          usedObs.push_back(obs);
     
    465477          double ll = obs->obsValue(tLC) - obs->cmpValue(tLC) - DotProduct(_x0, AA);
    466478          double vv = DotProduct(AA, _xFlt) - ll;
     479
    467480          if (fabs(vv) > SLIP) {
    468481            if (preProcessing) {
     
    486499t_irc t_pppFilter::resetAmb(t_prn prn, const vector<t_pppSatObs*>& obsVector,
    487500                            SymmetricMatrix* QSav, ColumnVector* xSav) {
    488                            
     501
    489502  t_irc irc = failure;
    490503  vector<t_pppParam*>& params = _parlist->params();
  • trunk/BNC/src/PPP/pppSatObs.cpp

    r8961 r8965  
    650650//
    651651////////////////////////////////////////////////////////////////////////////
    652 void  t_pppSatObs::setPseudoObsTropo() {qDebug() << "setPseudoObsTropo";
     652void  t_pppSatObs::setPseudoObsTropo() {
    653653  _tropo0 = _model._tropo0;
    654654}
Note: See TracChangeset for help on using the changeset viewer.