Changeset 9821 in ntrip
- Timestamp:
- Sep 9, 2022, 10:57:27 AM (2 years ago)
- Location:
- trunk/BNC/src
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/BNC/src/PPP/pppSatObs.cpp
r9807 r9821 33 33 using namespace std; 34 34 35 const double GLO_WEIGHT_FACTOR = 5.0; 36 const double BDS_WEIGHT_FACTOR = 2.0; 37 35 38 // Constructor 36 39 //software.rtcm-ntrip.org///software.rtcm-ntrip.org///software.rtcm-ntrip.org///software.rtcm-ntrip.org///software.rtcm-ntrip.org///software.rtcm-ntrip.org///software.rtcm-ntrip.org///software.rtcm-ntrip.org///software.rtcm-ntrip.org///software.rtcm-ntrip.org///software.rtcm-ntrip.org///software.rtcm-ntrip.org///software.rtcm-ntrip.org///software.rtcm-ntrip.org///software.rtcm-ntrip.org///software.rtcm-ntrip.org///software.rtcm-ntrip.org///software.rtcm-ntrip.org///software.rtcm-ntrip.org///software.rtcm-ntrip.org///software.rtcm-ntrip.org///software.rtcm-ntrip.org///software.rtcm-ntrip.org///software.rtcm-ntrip.org///software.rtcm-ntrip.org// … … 344 347 345 348 retVal = sqrt(retVal); 349 350 // De-Weight GLO+BDS 351 // ----------------- 352 if (_prn.system() == 'R') { 353 retVal *= GLO_WEIGHT_FACTOR; 354 } 355 if (_prn.system() == 'C') { 356 retVal *= BDS_WEIGHT_FACTOR; 357 } 358 346 359 347 360 // Elevation-Dependent Weighting -
trunk/BNC/src/PPP_SSR_I/pppFilter.cpp
r9485 r9821 55 55 using namespace std; 56 56 57 const double GLO NASS_WEIGHT_FACTOR = 5.0;58 const double BDS_WEIGHT_FACTOR 57 const double GLO_WEIGHT_FACTOR = 5.0; 58 const double BDS_WEIGHT_FACTOR = 2.0; // 5.0; 59 59 60 60 #define LOG (_pppClient->log()) … … 846 846 ionFacGLO = ionFac(prnGlo,satData); 847 847 if (iPhase == 0) 848 ionFacGLO *= (prnGlo[0]=='R'? GLO NASS_WEIGHT_FACTOR : BDS_WEIGHT_FACTOR);848 ionFacGLO *= (prnGlo[0]=='R'? GLO_WEIGHT_FACTOR : BDS_WEIGHT_FACTOR); 849 849 ionFacGPS = ionFac(prnGPS,satData); 850 850 … … 1025 1025 double sigL3 = ionFac * ellWgtCoef * OPT->_sigmaL1; 1026 1026 if (satData->system() == 'R') { 1027 sigL3 *= GLO NASS_WEIGHT_FACTOR;1027 sigL3 *= GLO_WEIGHT_FACTOR; 1028 1028 } 1029 1029 if (satData->system() == 'C') { … … 1047 1047 double sigP3 = ionFac * ellWgtCoef * OPT->_sigmaC1; 1048 1048 if (satData->system() == 'R') { 1049 sigP3 *= GLO NASS_WEIGHT_FACTOR;1049 sigP3 *= GLO_WEIGHT_FACTOR; 1050 1050 } 1051 1051 if (satData->system() == 'C') { -
trunk/BNC/src/bncwindow.cpp
r9795 r9821 477 477 // ------------------- 478 478 _cmbTable = new QTableWidget(0,3); 479 _cmbTable->setHorizontalHeaderLabels(QString("Mountpoint, AC Name, Weight ").split(","));479 _cmbTable->setHorizontalHeaderLabels(QString("Mountpoint, AC Name, Weight Factor").split(",")); 480 480 _cmbTable->setSelectionMode(QAbstractItemView::ExtendedSelection); 481 481 _cmbTable->setSelectionBehavior(QAbstractItemView::SelectRows); … … 1507 1507 // WhatsThis, Combine Corrections 1508 1508 // ------------------------------ 1509 _cmbTable->setWhatsThis(tr("<p>BNC allows to process several orbit and clock correction streams in real-time to produce, encode, upload and save a combination of correctors coming from different providers. To add a line to the 'Combine Corrections' table hit the 'Add Row' button, double click on the 'Mountpoint' field to specify a Broadcast Ephemeris Correction mountpoint from the 'Streams' section below and hit Enter. Then double click on the 'AC Name' field to enter your choice of an abbreviation for the Analysis Center (AC) providing the stream. Finally, double click on the 'Weight ' field to enter a weightto be applied for this stream in the combination.</p><p>Note that the orbit information in the resulting combination stream is just copied from one of the incoming streams. The stream used for providing the orbits may vary over time: if the orbit providing stream has an outage then BNC switches to the next remaining stream for getting hold of the orbit information.</p><p>The combination process requires Broadcast Ephemeris. Besides orbit and clock correction streams BNC should therefore pull a stream carrying Broadcast Ephemeris in the form of RTCM Version 3 messages.</p><p>It is possible to specify only one Broadcast Ephemeris Correction stream in the 'Combine Corrections' table. Instead of combining corrections BNC will then add the corrections to the Broadcast Ephemeris with the possibility to save final orbit and clock results in SP3 and/or Clock RINEX format. <i>[key: cmbStreams]</i></p>"));1509 _cmbTable->setWhatsThis(tr("<p>BNC allows to process several orbit and clock correction streams in real-time to produce, encode, upload and save a combination of correctors coming from different providers. To add a line to the 'Combine Corrections' table hit the 'Add Row' button, double click on the 'Mountpoint' field to specify a Broadcast Ephemeris Correction mountpoint from the 'Streams' section below and hit Enter. Then double click on the 'AC Name' field to enter your choice of an abbreviation for the Analysis Center (AC) providing the stream. Finally, double click on the 'Weight Factor' field to enter a weight factor to be applied for this stream in the combination.</p><p>Note that the orbit information in the resulting combination stream is just copied from one of the incoming streams. The stream used for providing the orbits may vary over time: if the orbit providing stream has an outage then BNC switches to the next remaining stream for getting hold of the orbit information.</p><p>The combination process requires Broadcast Ephemeris. Besides orbit and clock correction streams BNC should therefore pull a stream carrying Broadcast Ephemeris in the form of RTCM Version 3 messages.</p><p>It is possible to specify only one Broadcast Ephemeris Correction stream in the 'Combine Corrections' table. Instead of combining corrections BNC will then add the corrections to the Broadcast Ephemeris with the possibility to save final orbit and clock results in SP3 and/or Clock RINEX format. <i>[key: cmbStreams]</i></p>")); 1510 1510 addCmbRowButton->setWhatsThis(tr("<p>Hit 'Add Row' button to add another line to the 'Combine Corrections' table.</p>")); 1511 1511 delCmbRowButton->setWhatsThis(tr("<p>Hit 'Delete' button to delete the highlighted line(s) from the 'Combine Corrections' table.</p>")); -
trunk/BNC/src/combination/bnccomb.cpp
r9819 r9821 174 174 QStringList hlp = it.next().split(" "); 175 175 cmbAC* newAC = new cmbAC(); 176 newAC->mountPoint = hlp[0];177 newAC->name = hlp[1];178 newAC->weight 176 newAC->mountPoint = hlp[0]; 177 newAC->name = hlp[1]; 178 newAC->weightFactor = hlp[2].toDouble(); 179 179 QMapIterator<char, unsigned> itSys(_cmbSysPrn); 180 180 // init … … 456 456 // ---------------------- 457 457 QString acName; 458 double weigthFactor; 458 459 QListIterator<cmbAC*> icAC(_ACs); 459 460 while (icAC.hasNext()) { … … 461 462 if (AC->mountPoint == staID) { 462 463 acName = AC->name; 464 weigthFactor = AC->weightFactor; 463 465 break; 464 466 } … … 492 494 newCorr->_acName = acName; 493 495 newCorr->_clkCorr = clkCorr; 496 newCorr->_weightFactor = weigthFactor; 494 497 495 498 // Check orbit correction … … 1033 1036 ll(iObs) = (corr->_clkCorr._dClk * t_CST::c - corr->_satCodeBiasIF) - DotProduct(AA.Row(iObs), x0); 1034 1037 1038 PP(iObs, iObs) *= 1.0 / (corr->_weightFactor * corr->_weightFactor); 1035 1039 } 1036 1040 -
trunk/BNC/src/combination/bnccomb.h
r9819 r9821 65 65 public: 66 66 cmbAC() { 67 weight = 0.0;68 numObs['G'] = 0;69 numObs['R'] = 0;70 numObs['E'] = 0;71 numObs['C'] = 0;72 numObs['J'] = 0;73 numObs['S'] = 0;74 numObs['I'] = 0;67 weightFactor = 1.0; 68 numObs['G'] = 0; 69 numObs['R'] = 0; 70 numObs['E'] = 0; 71 numObs['C'] = 0; 72 numObs['J'] = 0; 73 numObs['S'] = 0; 74 numObs['I'] = 0; 75 75 } 76 76 ~cmbAC() {} 77 77 QString mountPoint; 78 78 QString name; 79 double weight ;79 double weightFactor; 80 80 QMap<char, unsigned> numObs; 81 81 }; … … 101 101 double _dClkResult; 102 102 ColumnVector _diffRao; 103 double _weightFactor; 103 104 QString ID() {return _acName + "_" + _prn;} 104 105 }; -
trunk/BNC/src/upload/bncrtnetuploadcaster.cpp
r9687 r9821 591 591 emit(newMessage(" RTNET format error: " 592 592 + lines[ii].toLatin1(), false)); 593 break; 593 594 } 594 595 } … … 632 633 rtnUra, rtnClk, rtnVel, rtnCoM, rtnClkSig, sd, outLine); 633 634 if (irc != success) { 634 /* !xP.size() */635 635 continue; 636 636 }
Note:
See TracChangeset
for help on using the changeset viewer.