Index: /trunk/BNC/src/PPP/pppClient.cpp =================================================================== --- /trunk/BNC/src/PPP/pppClient.cpp (revision 9551) +++ /trunk/BNC/src/PPP/pppClient.cpp (revision 9552) @@ -669,7 +669,4 @@ if (_filter->processEpoch() != success) { LOG << "filter->processEpoch() != success" << endl; - if (_filter->ageOfLastSolutionOK() >= 120) { - reset(); - } return finish(failure,7); } Index: /trunk/BNC/src/PPP/pppFilter.h =================================================================== --- /trunk/BNC/src/PPP/pppFilter.h (revision 9551) +++ /trunk/BNC/src/PPP/pppFilter.h (revision 9552) @@ -61,5 +61,4 @@ return 0.0; }; - double ageOfLastSolutionOK() { return (_epoTime - _lastEpoTimeOK);} private: Index: /trunk/BNC/src/PPP/pppSatObs.cpp =================================================================== --- /trunk/BNC/src/PPP/pppSatObs.cpp (revision 9551) +++ /trunk/BNC/src/PPP/pppSatObs.cpp (revision 9552) @@ -344,5 +344,5 @@ } if (tLC == t_lc::GIM) { - retVal = 3.0 * (OPT->_sigmaGIM * OPT->_sigmaGIM + OPT->_sigmaGIM * OPT->_sigmaGIM); + retVal = it->second * it->second * OPT->_maxResGIM * OPT->_maxResGIM; } Index: /trunk/BNC/src/bncwindow.cpp =================================================================== --- /trunk/BNC/src/bncwindow.cpp (revision 9551) +++ /trunk/BNC/src/bncwindow.cpp (revision 9552) @@ -1063,6 +1063,8 @@ pppLayout3->addWidget(_pppWidgets._sigmaGIM, ir, 4); _pppWidgets._sigmaGIM->setMaximumWidth(8*ww); pppLayout3->addItem(new QSpacerItem(8*ww, 0), ir, 5); + pppLayout3->addWidget(new QLabel("Max Res GIM"), ir, 6, Qt::AlignLeft); + pppLayout3->addWidget(_pppWidgets._maxResGIM, ir, 7); _pppWidgets._maxResGIM->setMaximumWidth(8*ww); ++ir; - pppLayout3->addWidget(new QLabel(""), ir, 6); + pppLayout3->addWidget(new QLabel(""), ir, 8); pppLayout3->setColumnStretch(8, 999); ++ir; @@ -1454,6 +1456,7 @@ _pppWidgets._sigmaL1->setWhatsThis(tr("
Enter a Sigma for GPS L1 phase observations in meters.
The higher the sigma you enter, the less the contribution of L1 phase observations to a PPP solutions from combined code and phase data. 0.01 is likely to be an appropriate choice.
Default is an empty option field, meaning
'Sigma L1 = 0.01' [key: PPP/sigmaL1]
Enter a Sigma for GIM pseudo observations in meters.
The higher the sigma you enter, the less the contribution of GIM pseudo observations to a PPP solution. 3.0 is likely to be an appropriate choice.
Default is an empty option field, meaning
'Sigma GIM = 3.0' [key: PPP/sigmaGIM]
Specify a maximum for residuals from GPS C1 code observations in a PPP solution. '3.0' meters may be an appropriate choice for that.
If the maximum is exceeded, contributions from the corresponding observation will be ignored in the PPP solution.
Default is an empty option field, meaning
'Max Rex C1 = 3.0' [key: PPP/maxResC1]
Specify a maximum for residuals from GPS L1 code observations in a PPP solution. '0.03' meters may be an appropriate choice for that.
If the maximum is exceeded, contributions from the corresponding observation will be ignored in the PPP solution.
Default is an empty option field, meaning
'Max Rex L1 = 0.03' [key: PPP/maxResL1]
Specify a maximum for residuals from GPS C1 code observations in a PPP solution. '3.0' meters may be an appropriate choice for that.
If the maximum is exceeded, contributions from the corresponding observation will be ignored in the PPP solution.
Default is an empty option field, meaning
'Max Res C1 = 3.0' [key: PPP/maxResC1]
Specify a maximum for residuals from GPS L1 code observations in a PPP solution. '0.03' meters may be an appropriate choice for that.
If the maximum is exceeded, contributions from the corresponding observation will be ignored in the PPP solution.
Default is an empty option field, meaning
'Max Res L1 = 0.03' [key: PPP/maxResL1]
Specify a maximum for residuals from GIM pseudo observations in a PPP solution. '6.0' meters may be an appropriate choice for that.
If the maximum is exceeded, contributions from the corresponding observation will be ignored in the PPP solution.
Default is an empty option field, meaning
'Max Res L1 = 1.0' [key: PPP/maxResGIM]
Tic 'Ele Wgt Code' to use satellite Elevation depending Weights for Code observations in the PPP solution. [key: PPP/eleWgtCode]
")); _pppWidgets._eleWgtPhase->setWhatsThis(tr("Tic 'Ele Wgt Phase' to use satellite Elevation depending Weights for Phase observations in the PPP solution. [key: PPP/eleWgtPhase]
")); Index: /trunk/BNC/src/pppMain.cpp =================================================================== --- /trunk/BNC/src/pppMain.cpp (revision 9551) +++ /trunk/BNC/src/pppMain.cpp (revision 9552) @@ -409,4 +409,5 @@ opt->_maxResC1 = settings.value("PPP/maxResC1").toDouble(); if (opt->_maxResC1 <= 0.0) opt->_maxResC1 = 3.0; opt->_maxResL1 = settings.value("PPP/maxResL1").toDouble(); if (opt->_maxResL1 <= 0.0) opt->_maxResL1 = 0.03; + opt->_maxResGIM = settings.value("PPP/maxResGIM").toDouble(); if (opt->_maxResGIM <= 0.0) opt->_maxResGIM = 6.0; opt->_eleWgtCode = (settings.value("PPP/eleWgtCode").toInt() != 0); opt->_eleWgtPhase = (settings.value("PPP/eleWgtPhase").toInt() != 0); Index: /trunk/BNC/src/pppOptions.h =================================================================== --- /trunk/BNC/src/pppOptions.h (revision 9551) +++ /trunk/BNC/src/pppOptions.h (revision 9552) @@ -54,4 +54,5 @@ double _maxResC1; double _maxResL1; + double _maxResGIM; bool _eleWgtCode; bool _eleWgtPhase; Index: /trunk/BNC/src/pppWidgets.cpp =================================================================== --- /trunk/BNC/src/pppWidgets.cpp (revision 9551) +++ /trunk/BNC/src/pppWidgets.cpp (revision 9552) @@ -89,4 +89,5 @@ _maxResC1 = new QLineEdit(); _maxResC1 ->setObjectName("PPP/maxResC1"); _widgets << _maxResC1; _maxResL1 = new QLineEdit(); _maxResL1 ->setObjectName("PPP/maxResL1"); _widgets << _maxResL1; + _maxResGIM = new QLineEdit(); _maxResGIM ->setObjectName("PPP/maxResGIM"); _widgets << _maxResGIM; _minObs = new QSpinBox(); _minObs ->setObjectName("PPP/minObs"); _widgets << _minObs; _minEle = new QSpinBox(); _minEle ->setObjectName("PPP/minEle"); _widgets << _minEle; @@ -258,4 +259,5 @@ delete _maxResC1; delete _maxResL1; + delete _maxResGIM; delete _minObs; delete _minEle; @@ -367,4 +369,12 @@ _maxResL1->setText("0.03"); } + + if (!settings.value(_maxResGIM->objectName()).toString().isEmpty()) { + _maxResGIM->setText(settings.value(_maxResGIM->objectName()).toString()); + } + else { + _maxResGIM->setText("6.0"); + } + if (!settings.value(_seedingTime->objectName()).toString().isEmpty()) { @@ -459,4 +469,5 @@ settings.setValue(_maxResC1 ->objectName(), _maxResC1 ->text()); settings.setValue(_maxResL1 ->objectName(), _maxResL1 ->text()); + settings.setValue(_maxResGIM ->objectName(), _maxResGIM ->text()); settings.setValue(_seedingTime ->objectName(), _seedingTime ->text()); settings.setValue(_minObs ->objectName(), _minObs ->value()); Index: /trunk/BNC/src/pppWidgets.h =================================================================== --- /trunk/BNC/src/pppWidgets.h (revision 9551) +++ /trunk/BNC/src/pppWidgets.h (revision 9552) @@ -75,4 +75,5 @@ QLineEdit* _maxResC1; QLineEdit* _maxResL1; + QLineEdit* _maxResGIM; QCheckBox* _eleWgtCode; QCheckBox* _eleWgtPhase;