Changeset 3519 in ntrip


Ignore:
Timestamp:
Dec 13, 2011, 5:36:45 PM (10 years ago)
Author:
mervart
Message:
 
Location:
trunk/BNC
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/BNC/bncpppclient.cpp

    r3508 r3519  
    376376          if      (eLast && eLast->IOD() == cc->iod) {
    377377            eLast->position(tt.gpsw(), tt.gpssec(), xc.data(), vv.data());
    378             return applyCorr(tt, cc, xc, vv);
     378            return applyCorr(tt, cc, xc, vv, eLast);
    379379          }
    380380          else if (ePrev && ePrev->IOD() == cc->iod) {
    381381            ePrev->position(tt.gpsw(), tt.gpssec(), xc.data(), vv.data());
    382             return applyCorr(tt, cc, xc, vv);
     382            return applyCorr(tt, cc, xc, vv, ePrev);
    383383          }
    384384        }
     
    399399////////////////////////////////////////////////////////////////////////////
    400400t_irc bncPPPclient::applyCorr(const bncTime& tt, const t_corr* cc,
    401                              ColumnVector& xc, ColumnVector& vv) {
    402   ColumnVector dx(3);
     401                              ColumnVector& xc, ColumnVector& vv,
     402                              const t_eph* eph) {
    403403
    404404  double dt = tt - cc->tt;
     
    410410
    411411  if (cc->xyzCorr) {
    412     dx = raoHlp;
     412    xc[0] += raoHlp[0];
     413    xc[1] += raoHlp[1];
     414    xc[2] += raoHlp[2];
     415    ColumnVector xcHlp(4);
     416    ColumnVector vvHlp(3);
     417    eph->position(cc->tt.gpsw(), cc->tt.gpssec(), xcHlp.data(), vvHlp.data());
     418    xc[3] += cc->dClk - xcHlp[3];
    413419  }
    414420  else {
     421    ColumnVector dx(3);
    415422    RSW_to_XYZ(xc.Rows(1,3), vv, raoHlp, dx);
    416   }
    417 
    418   xc[0] -= dx[0];
    419   xc[1] -= dx[1];
    420   xc[2] -= dx[2];
    421   xc[3] += cc->dClk + cc->dotDClk * dt + cc->dotDotDClk * dt * dt
    422         + cc->hrClk;
     423    xc[0] -= dx[0];
     424    xc[1] -= dx[1];
     425    xc[2] -= dx[2];
     426    xc[3] += cc->dClk + cc->dotDClk * dt + cc->dotDotDClk * dt * dt
     427          + cc->hrClk;
     428  }
    423429
    424430  return success;
  • trunk/BNC/bncpppclient.h

    r3408 r3519  
    125125  void putNewObs(const t_obs& pp);
    126126  static t_irc applyCorr(const bncTime& tt, const t_corr* cc, ColumnVector& xc,
    127                          ColumnVector& vv);
     127                         ColumnVector& vv, const t_eph* eph);
    128128
    129129 public slots:
  • trunk/BNC/combination/bnccomb.cpp

    r3503 r3519  
    658658      corr->eph->position(time12.gpsw(), time12.gpssec(),
    659659                          xc.data(), vv.data());
    660       bncPPPclient::applyCorr(time12, corr, xc, vv);
     660      bncPPPclient::applyCorr(time12, corr, xc, vv, corr->eph);
    661661     
    662662      // Relativistic Correction
Note: See TracChangeset for help on using the changeset viewer.