Changeset 7250 in ntrip


Ignore:
Timestamp:
Aug 24, 2015, 4:04:38 PM (9 years ago)
Author:
stuerze
Message:

ionosopheric delay can be computed now

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

Legend:

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

    r7237 r7250  
    125125  }
    126126  if (totOK) {
     127    _signalPropagationTime = prange / t_CST::c - _xcSat[3];
    127128    _model._satClkM = _xcSat[3] * t_CST::c;
    128129  }
     
    394395  // Ionospheric Delay
    395396  // -----------------
    396   if (station->vTec()) {
    397 
     397  const t_vTec* vTec = PPP_CLIENT->obsPool()->vTec();
     398  if (vTec) {
     399    double stec = station->stec(vTec, _signalPropagationTime, rSat);
    398400    for (unsigned iFreq = 1; iFreq < t_frequency::max; iFreq++) {
    399401      t_frequency::type frqType = static_cast<t_frequency::type>(iFreq);
    400       //_model._codeIono[iFreq] =
    401     }
    402   }
    403 
     402      _model._ionoCodeDelay[iFreq] = 40.0 / pow(t_CST::freq(frqType, _channel), 2) * stec * 10.0e16;
     403    }
     404  }
    404405
    405406  // Ocean Loading
  • trunk/BNC/src/PPP/pppSatObs.h

    r7237 r7250  
    8989      _windUp  = 0.0;
    9090      for (unsigned ii = 0; ii < t_frequency::max; ii++) {
    91         _antPCO[ii]    = 0.0;
    92         _codeBias[ii]  = 0.0;
    93         _phaseBias[ii] = 0.0;
    94         _codeIono[ii] = 0.0;
     91        _antPCO[ii]        = 0.0;
     92        _codeBias[ii]      = 0.0;
     93        _phaseBias[ii]     = 0.0;
     94        _ionoCodeDelay[ii] = 0.0;
    9595      }
    9696    }
     
    109109    double _codeBias[t_frequency::max];
    110110    double _phaseBias[t_frequency::max];
    111     double _codeIono[t_frequency::max];
     111    double _ionoCodeDelay[t_frequency::max];
    112112  };
    113113
     
    126126  bool                         _outlier;
    127127  std::map<t_lc::type, double> _res;
     128  double                       _signalPropagationTime;
    128129};
    129130
  • trunk/BNC/src/PPP/pppStation.cpp

    r7237 r7250  
    2525//////////////////////////////////////////////////////////////////////////////
    2626t_pppStation::t_pppStation() {
    27   _windUp    = new t_windUp();
     27  _windUp   = new t_windUp();
     28  _iono     = new t_iono();
     29  _dClk = 0.0;
    2830}
    2931
     
    3234t_pppStation::~t_pppStation() {
    3335  delete _windUp;
     36  delete _iono;
    3437}
    3538
     
    5760}
    5861
     62//
     63//////////////////////////////////////////////////////////////////////////////
     64double t_pppStation::stec(const t_vTec* vTec, const double signalPropagationTime,
     65    const ColumnVector& rSat) const {
     66  return _iono->stec(vTec, signalPropagationTime, rSat, _epochTime, _xyzApr);
     67}
  • trunk/BNC/src/PPP/pppStation.h

    r7237 r7250  
    1010
    1111class t_windUp;
     12class t_iono;
    1213
    1314class t_pppStation {
     
    2122  void setDClk(double dClk) {_dClk = dClk;}
    2223  void setTideDspl(const ColumnVector& tideDspl) {_tideDspl = tideDspl;}
    23   void setVtec(double vtec) {_vtec = vtec;}
     24  void setIonoEpochTime(const bncTime& epochTime) {_epochTime = epochTime;}
    2425  const std::string&  name()      const {return _name;}
    2526  const std::string&  antName()   const {return _antName;}
     
    3132  double dClk() const {return _dClk;}
    3233  double windUp(const bncTime& time, t_prn prn, const ColumnVector& rSat) const;
    33   double vTec() const {return _vtec;}
     34  double stec(const t_vTec* vTec, const double signalPropagationTime, const ColumnVector& rSat) const;
    3435
    3536 private:
     
    4546  bncTime           _timeCheck;
    4647  ColumnVector      _xyzCheck;
    47   double            _vtec;
     48  t_iono*            _iono;
     49  bncTime           _epochTime;
    4850};
    4951
Note: See TracChangeset for help on using the changeset viewer.