Changeset 9559 in ntrip for trunk/BNC/src
- Timestamp:
- Dec 1, 2021, 5:47:15 PM (3 years ago)
- Location:
- trunk/BNC/src
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/BNC/src/PPP/pppParlist.cpp
r9558 r9559 102 102 _noise = OPT->_noiseIon; 103 103 break; 104 case cBiasG1: case cBias R1: case cBiasE1: case cBiasC1:105 case cBiasG2: case cBias R2: case cBiasE2: case cBiasC2:104 case cBiasG1: case cBiasE1: case cBiasC1: 105 case cBiasG2: case cBiasE2: case cBiasC2: 106 106 _epoSpec = false; 107 107 _sigma0 = OPT->_aprSigCodeBias; … … 246 246 if ((obs->prn().system() == 'G') && (tLC == t_lc::c1)) {return 1.0;} else {return 0.0;} 247 247 break; 248 case cBiasR1:249 if ((obs->prn().system() == 'R') && (tLC == t_lc::c1)) {return 1.0;} else {return 0.0;}250 break;251 248 case cBiasE1: 252 249 if ((obs->prn().system() == 'E') && (tLC == t_lc::c1)) {return 1.0;} else {return 0.0;} … … 257 254 case cBiasG2: 258 255 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;}262 256 break; 263 257 case cBiasE2: … … 328 322 case cBiasG2: case pBiasG2: 329 323 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 ";334 324 break; 335 325 case cBiasE1: case pBiasE1: … … 519 509 it = _params.erase(it); 520 510 } 521 else if ((par->type() == t_pppParam::cBiasR1 ||522 par->type() == t_pppParam::cBiasR2) && !usedSystems().contains('R')) {523 #ifdef BNC_DEBUG_PPP524 LOG << "remove1 " << par->toString() << std::endl;525 #endif526 delete par;527 it = _params.erase(it);528 }529 511 else if ((par->type() == t_pppParam::cBiasE1 || 530 512 par->type() == t_pppParam::cBiasE2 || … … 594 576 } 595 577 } 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 }605 578 if (_usedSystems.contains('E')) { 606 579 lc = OPT->LCs('E'); -
trunk/BNC/src/PPP/pppParlist.h
r9558 r9559 16 16 public: 17 17 enum e_type {crdX, crdY, crdZ, rClkG, rClkR, rClkE, rClkC, trp, ion, amb, 18 cBiasG1, cBias R1, cBiasE1, cBiasC1, pBiasG1, pBiasE1, pBiasC1,19 cBiasG2, cBias R2, cBiasE2, cBiasC2, pBiasG2, pBiasE2, pBiasC2};18 cBiasG1, cBiasE1, cBiasC1, pBiasG1, pBiasE1, pBiasC1, 19 cBiasG2, cBiasE2, cBiasC2, pBiasG2, pBiasE2, pBiasC2}; 20 20 21 21 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 65 65 // Select pseudo-ranges and phase observations 66 66 // ------------------------------------------- 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"; 68 68 69 69 for (unsigned iFreq = 1; iFreq < t_frequency::max; iFreq++) { -
trunk/BNC/src/bncgetthread.cpp
r9555 r9559 141 141 while (iSta.hasNext()) { 142 142 QStringList hlp = iSta.next().split(","); 143 if (hlp.size() < 1 1) {143 if (hlp.size() < 10) { 144 144 continue; 145 145 } 146 146 QByteArray mp = hlp[0].toLatin1(); 147 147 if (_staID == mp) { 148 nmeaPort = hlp[ 10].toInt();148 nmeaPort = hlp[9].toInt(); 149 149 } 150 150 } … … 862 862 QString msg; 863 863 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()); 867 865 for (int iType = 0; iType < rnxTypes.size(); iType++) { 868 866 str << " " << rnxTypes[iType]; -
trunk/BNC/src/bnchelp.html
r9538 r9559 186 186 2.13.2.4 <a href=#ppptropsigma>Tropo Sigma</a><br> 187 187 2.13.2.5 <a href=#ppptropnoise>Tropo Noise</a><br> 188 2.13.2.6 <a href=#pppiononoise>Iono Noise</a><br> 189 2.13.2.7 <a href=#pppnmeaport>NMEA Port</a><br> 188 2.13.2.6 <a href=#pppnmeaport>NMEA Port</a><br> 190 189 2.13.3 <a href=#pppOptions><b>PPP (3): Processing Options</b></a><br> 191 190 2.13.3.1 <a href=#ppplinecombi>Linear Combinations</a><br> … … 3650 3649 </p> 3651 3650 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> 3658 3652 Specify 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. 3659 3653 </p> … … 5218 5212 <b>PPP Client Panel 2 keys:</b> 5219 5213 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"]} 5221 5215 5222 5216 <b>PPP Client Panel 3 keys:</b> -
trunk/BNC/src/bncmain.cpp
r9538 r9559 327 327 "(8) bnc --key uploadMountpointsOut \"products.igs-ip.net,98756,TEST,letmein,IGS14,2,/Users/weber/BNCOUTPUT${V3PROD}.clk,,33,3,2;" 328 328 "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;" 330 330 "CUT000AUS0,100.0,100.0,100.0,100.0,100.0,100.0,0.1,3e-6,0.1,7778\"\n"; 331 331 -
trunk/BNC/src/pppMain.cpp
r9556 r9559 143 143 QStringList hlp = iSta.next().split(","); 144 144 145 if (hlp.size() < 1 1) {145 if (hlp.size() < 10) { 146 146 throw t_except("pppMain: wrong option staTable"); 147 147 } … … 159 159 opt->_aprSigTrp = hlp[7].toDouble(); 160 160 opt->_noiseTrp = hlp[8].toDouble(); 161 opt->_noiseIon = hlp[9].toDouble(); 162 opt->_nmeaPort = hlp[10].toInt(); 161 opt->_nmeaPort = hlp[9].toInt(); 163 162 164 163 if (_realTime) { … … 205 204 opt->_obsModelType = t_pppOptions::PPPRTK; 206 205 opt->_pseudoObsIono = false; 206 opt->_noiseIon = 0.1; 207 207 } 208 208 else if (settings.value("PPP/modelObs").toString() == "Uncombined PPP") { 209 209 opt->_obsModelType = t_pppOptions::UncombPPP; 210 opt->_noiseIon = 0.1; 210 211 if (opt->_pseudoObsIono) { 211 212 opt->_refSatRequired = true; … … 216 217 opt->_refSatRequired = true; 217 218 opt->_noiseCodeBias = 1000.0; 219 opt->_noiseIon = 0.1; 218 220 } 219 221 else if (settings.value("PPP/modelObs").toString() == "DCM with Phase Biases") { … … 221 223 opt->_refSatRequired = true; 222 224 opt->_noisePhaseBias = 1000.0; 225 opt->_noiseIon = 0.1; 223 226 } 224 227 #endif -
trunk/BNC/src/pppWidgets.cpp
r9556 r9559 179 179 _corrWaitTime->setSuffix(" sec"); 180 180 181 _staTable->setColumnCount(1 1);181 _staTable->setColumnCount(10); 182 182 _staTable->setRowCount(0); 183 183 _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(",")); 185 185 _staTable->setSelectionMode(QAbstractItemView::ExtendedSelection); 186 186 _staTable->setSelectionBehavior(QAbstractItemView::SelectRows); … … 206 206 // WhatsThis, PPP (2) 207 207 // ------------------ 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>")); 209 209 210 210 // WhatsThis, PPP (3)
Note:
See TracChangeset
for help on using the changeset viewer.