Changeset 9559 in ntrip


Ignore:
Timestamp:
Dec 1, 2021, 5:47:15 PM (2 years ago)
Author:
stuerze
Message:

update regarding PPP

Location:
trunk/BNC/src
Files:
8 edited

Legend:

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

    r9558 r9559  
    102102      _noise   = OPT->_noiseIon;
    103103     break;
    104    case cBiasG1:   case cBiasR1:   case cBiasE1:   case cBiasC1:
    105    case cBiasG2:   case cBiasR2:   case cBiasE2:   case cBiasC2:
     104   case cBiasG1:   case cBiasE1:   case cBiasC1:
     105   case cBiasG2:   case cBiasE2:   case cBiasC2:
    106106     _epoSpec = false;
    107107     _sigma0  = OPT->_aprSigCodeBias;
     
    246246    if ((obs->prn().system() == 'G') && (tLC == t_lc::c1)) {return 1.0;} else {return 0.0;}
    247247    break;
    248   case cBiasR1:
    249     if ((obs->prn().system() == 'R') && (tLC == t_lc::c1)) {return 1.0;} else {return 0.0;}
    250     break;
    251248  case cBiasE1:
    252249    if ((obs->prn().system() == 'E') && (tLC == t_lc::c1)) {return 1.0;} else {return 0.0;}
     
    257254  case cBiasG2:
    258255    if ((obs->prn().system() == 'G') && (tLC == t_lc::c2)) {return 1.0;} else {return 0.0;}
    259     break;
    260   case cBiasR2:
    261     if ((obs->prn().system() == 'R') && (tLC == t_lc::c2)) {return 1.0;} else {return 0.0;}
    262256    break;
    263257  case cBiasE2:
     
    328322  case cBiasG2:  case pBiasG2:
    329323    ss << "BIA  " << left << setw(3) << t_lc::toString(_tLC) << right << " G  ";
    330     break;
    331   case cBiasR1:
    332   case cBiasR2:
    333     ss << "BIA  " << left << setw(3) << t_lc::toString(_tLC) << right << " R  ";
    334324    break;
    335325  case cBiasE1:  case pBiasE1:
     
    519509        it = _params.erase(it);
    520510      }
    521       else if ((par->type() == t_pppParam::cBiasR1 ||
    522                 par->type() == t_pppParam::cBiasR2) && !usedSystems().contains('R')) {
    523 #ifdef BNC_DEBUG_PPP
    524         LOG << "remove1 " << par->toString() << std::endl;
    525 #endif
    526         delete par;
    527         it = _params.erase(it);
    528       }
    529511      else if ((par->type() == t_pppParam::cBiasE1 ||
    530512                par->type() == t_pppParam::cBiasE2 ||
     
    594576      }
    595577    }
    596     if (_usedSystems.contains('R')) {
    597       lc = OPT->LCs('R');
    598       if (std::find(lc.begin(), lc.end(), t_lc::c1) != lc.end()) {
    599         required.push_back(new t_pppParam(t_pppParam::cBiasR1, t_prn(), t_lc::c1));
    600       }
    601       if (std::find(lc.begin(), lc.end(), t_lc::c2) != lc.end()) {
    602         required.push_back(new t_pppParam(t_pppParam::cBiasR2, t_prn(), t_lc::c2));
    603       }
    604     }
    605578    if (_usedSystems.contains('E')) {
    606579      lc = OPT->LCs('E');
  • trunk/BNC/src/PPP/pppParlist.h

    r9558 r9559  
    1616 public:
    1717  enum e_type {crdX, crdY, crdZ, rClkG, rClkR, rClkE, rClkC, trp, ion, amb,
    18                cBiasG1, cBiasR1, cBiasE1, cBiasC1, pBiasG1, pBiasE1, pBiasC1,
    19                cBiasG2, cBiasR2, cBiasE2, cBiasC2, pBiasG2, pBiasE2, pBiasC2};
     18               cBiasG1, cBiasE1, cBiasC1, pBiasG1, pBiasE1, pBiasC1,
     19               cBiasG2, cBiasE2, cBiasC2, pBiasG2, pBiasE2, pBiasC2};
    2020
    2121  t_pppParam(e_type type, const t_prn& prn, t_lc::type tLC, const std::vector<t_pppSatObs*>* obsVector = 0);
  • trunk/BNC/src/PPP/pppSatObs.cpp

    r9556 r9559  
    6565  // Select pseudo-ranges and phase observations
    6666  // -------------------------------------------
    67   const string preferredAttrib = "G:12&PWCSLXYN R:12&PC E:1&BCX E:5&IQX C:IQX";
     67  const string preferredAttrib = "G:12&W R:12&P E:1&CX E:5&QX C:26&I";
    6868
    6969  for (unsigned iFreq = 1; iFreq < t_frequency::max; iFreq++) {
  • trunk/BNC/src/bncgetthread.cpp

    r9555 r9559  
    141141  while (iSta.hasNext()) {
    142142    QStringList hlp = iSta.next().split(",");
    143     if (hlp.size() < 11) {
     143    if (hlp.size() < 10) {
    144144      continue;
    145145    }
    146146    QByteArray mp = hlp[0].toLatin1();
    147147    if (_staID == mp) {
    148       nmeaPort = hlp[10].toInt();
     148      nmeaPort = hlp[9].toInt();
    149149    }
    150150  }
     
    862862          QString msg;
    863863          QTextStream str(&msg);
    864           QString s;
    865           str << obs._prn.system() << "    "
    866               << s.sprintf("%2d", rnxTypes.size()) << "  ";
     864          str << obs._prn.system() << QString("    %1  ").arg(rnxTypes.size());
    867865          for (int iType = 0; iType < rnxTypes.size(); iType++) {
    868866            str << " " << rnxTypes[iType];
  • trunk/BNC/src/bnchelp.html

    r9538 r9559  
    186186&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.2.4 <a href=#ppptropsigma>Tropo Sigma</a><br>
    187187&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.2.5 <a href=#ppptropnoise>Tropo Noise</a><br>
    188 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.2.6 <a href=#pppiononoise>Iono Noise</a><br>
    189 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.2.7 <a href=#pppnmeaport>NMEA Port</a><br>
     188&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.2.6 <a href=#pppnmeaport>NMEA Port</a><br>
    190189&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.3 <a href=#pppOptions><b>PPP (3): Processing Options</b></a><br>
    191190&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2.13.3.1 <a href=#ppplinecombi>Linear Combinations</a><br>
     
    36503649</p>
    36513650
    3652 <p><h4 id="pppiononoise">2.13.2.6 Iono Noise - mandatory</h4></p>
    3653 <p>
    3654 Enter a white 'Noise' in meters per second to describe the expected variation of the ionospheric effect. Supposing 1Hz observation data, a value of 0.10 my be an apropriate choice.
    3655 </p>
    3656 
    3657 <p><h4 id="pppnmeaport">2.13.2.7 NMEA Port - optional</h4></p>
     3651<p><h4 id="pppnmeaport">2.13.2.6 NMEA Port - optional</h4></p>
    36583652Specify the IP port number of a local port where Point Positioning results become available as NMEA sentences. The default value for 'NMEA Port' is an empty option field, meaning that BNC does not provide NMEA sentences via IP port. Note that NMEA file output and NMEA IP port output are the same.
    36593653</p>
     
    52185212<b>PPP Client Panel 2 keys:</b>
    52195213   PPP/staTable {Station specifications table [character string, semicolon separated list, each element in quotation marks, example:
    5220                 "FFMJ00DEU0,100.0,100.0,100.0,100.0,100.0,100.0,0.1,3e-6,0.1,7777;CUT000AUS0,100.0,100.0,100.0,100.0,100.0,100.0,0.1,3e-6,0.1,7778"]}
     5214                "FFMJ00DEU0,100.0,100.0,100.0,100.0,100.0,100.0,0.1,3e-6,0.1,7777;CUT000AUS0,100.0,100.0,100.0,100.0,100.0,100.0,0.1,3e-6,7778"]}
    52215215
    52225216<b>PPP Client Panel 3 keys:</b>
  • trunk/BNC/src/bncmain.cpp

    r9538 r9559  
    327327      "(8) bnc --key uploadMountpointsOut \"products.igs-ip.net,98756,TEST,letmein,IGS14,2,/Users/weber/BNCOUTPUT${V3PROD}.clk,,33,3,2;"
    328328      "euref-ip.net,333,TEST2,aaaaa,ETRF2000,2,,,33,5,5\"\n"
    329       "(9) bnc --key PPP/staTable \"FFMJ00DEU1,100.0,100.0,100.0,100.0,100.0,100.0,0.1,3e-6,0.1,7777;"
     329      "(9) bnc --key PPP/staTable \"FFMJ00DEU1,100.0,100.0,100.0,100.0,100.0,100.0,0.1,3e-6,7777;"
    330330      "CUT000AUS0,100.0,100.0,100.0,100.0,100.0,100.0,0.1,3e-6,0.1,7778\"\n";
    331331
  • trunk/BNC/src/pppMain.cpp

    r9556 r9559  
    143143    QStringList hlp = iSta.next().split(",");
    144144
    145     if (hlp.size() < 11) {
     145    if (hlp.size() < 10) {
    146146      throw t_except("pppMain: wrong option staTable");
    147147    }
     
    159159    opt->_aprSigTrp    = hlp[7].toDouble();
    160160    opt->_noiseTrp     = hlp[8].toDouble();
    161     opt->_noiseIon     = hlp[9].toDouble();
    162     opt->_nmeaPort     = hlp[10].toInt();
     161    opt->_nmeaPort     = hlp[9].toInt();
    163162
    164163    if (_realTime) {
     
    205204      opt->_obsModelType = t_pppOptions::PPPRTK;
    206205      opt->_pseudoObsIono  = false;
     206      opt->_noiseIon = 0.1;
    207207    }
    208208    else if (settings.value("PPP/modelObs").toString() == "Uncombined PPP") {
    209209      opt->_obsModelType = t_pppOptions::UncombPPP;
     210      opt->_noiseIon = 0.1;
    210211      if (opt->_pseudoObsIono) {
    211212        opt->_refSatRequired = true;
     
    216217      opt->_refSatRequired = true;
    217218      opt->_noiseCodeBias  = 1000.0;
     219      opt->_noiseIon = 0.1;
    218220    }
    219221    else if (settings.value("PPP/modelObs").toString() == "DCM with Phase Biases") {
     
    221223      opt->_refSatRequired = true;
    222224      opt->_noisePhaseBias = 1000.0;
     225      opt->_noiseIon = 0.1;
    223226    }
    224227#endif
  • trunk/BNC/src/pppWidgets.cpp

    r9556 r9559  
    179179  _corrWaitTime->setSuffix(" sec");
    180180
    181   _staTable->setColumnCount(11);
     181  _staTable->setColumnCount(10);
    182182  _staTable->setRowCount(0);
    183183  _staTable->setHorizontalHeaderLabels(
    184      QString("Station,Sigma N,Sigma E,Sigma H,Noise N,Noise E,Noise H,Tropo Sigma,Tropo Noise, Iono Noise, NMEA Port").split(","));
     184     QString("Station,Sigma N,Sigma E,Sigma H,Noise N,Noise E,Noise H,Tropo Sigma,Tropo Noise, NMEA Port").split(","));
    185185  _staTable->setSelectionMode(QAbstractItemView::ExtendedSelection);
    186186  _staTable->setSelectionBehavior(QAbstractItemView::SelectRows);
     
    206206  // WhatsThis, PPP (2)
    207207  // ------------------
    208   _staTable->setWhatsThis(tr("<p>Specify values for Sigma and white Noise of the Stations North, East and Height coordinate components in meters. Specify also a Sigma in meters for a priori model based Tropospheric delays and a Sigma in meters per second for the delay's Noise.</p><p>Specifying one record per Station is mandatory. BNC will only process data for stations which are listed here. To define a station, specify the 'Mountpoint' when in 'Real-Time Streams' mode or the 4-character station ID when in 'RINEX Files' mode.</p><p>'Sigma' is meant to describe the uncertainty of a single coordinate or tropospheric delay estimated for one epoch. 'Noise' is meant to describe the variation of estimates from epoch to epoch.</p><p><ul><li>A Sigma of 100.0 meters may be an appropriate choice e.g. for the initial N/E/H coordinates. However, this value may be significantly smaller (i.e. 0.01) for stations with well-known a priori coordinates.</li><li>A Noise of 100.0 meters for the estimated N/E/H coordinates may also be appropriate considering the potential movement of a rover position.</li><li>A value of 0.1 meters may be an appropriate Sigma for the a priori model based Tropospheric delay estimation.</li><li>Specify a Noise to describe the expected variation of the tropospheric effect over time. Supposing 1Hz observation data, specifying a value of 3e-6 would mean that the tropospheric effect may vary 3600 * 3e-6 = 0.01 meters per hour.</li><li>Specify a Noise to describe the expected variation of the ionospheric effect over time. Supposing 1Hz observation data, specifying a value of 0.1 would ba an apropriate choice.</li></ul></p><p>You can also specify a 'NMEA Port' to output coordinates in NMEA format through an IP port of your local host. <i>[key: PPP/staTable]</i></p>"));
     208  _staTable->setWhatsThis(tr("<p>Specify values for Sigma and white Noise of the Stations North, East and Height coordinate components in meters. Specify also a Sigma in meters for a priori model based Tropospheric delays and a Sigma in meters per second for the delay's Noise.</p><p>Specifying one record per Station is mandatory. BNC will only process data for stations which are listed here. To define a station, specify the 'Mountpoint' when in 'Real-Time Streams' mode or the 4-character station ID when in 'RINEX Files' mode.</p><p>'Sigma' is meant to describe the uncertainty of a single coordinate or tropospheric delay estimated for one epoch. 'Noise' is meant to describe the variation of estimates from epoch to epoch.</p><p><ul><li>A Sigma of 100.0 meters may be an appropriate choice e.g. for the initial N/E/H coordinates. However, this value may be significantly smaller (i.e. 0.01) for stations with well-known a priori coordinates.</li><li>A Noise of 100.0 meters for the estimated N/E/H coordinates may also be appropriate considering the potential movement of a rover position.</li><li>A value of 0.1 meters may be an appropriate Sigma for the a priori model based Tropospheric delay estimation.</li><li>Specify a Noise to describe the expected variation of the tropospheric effect over time. Supposing 1Hz observation data, specifying a value of 3e-6 would mean that the tropospheric effect may vary 3600 * 3e-6 = 0.01 meters per hour.</li></ul></p><p>You can also specify a 'NMEA Port' to output coordinates in NMEA format through an IP port of your local host. <i>[key: PPP/staTable]</i></p>"));
    209209
    210210  // WhatsThis, PPP (3)
Note: See TracChangeset for help on using the changeset viewer.