Ignore:
Timestamp:
Oct 24, 2024, 4:27:59 PM (7 weeks ago)
Author:
stuerze
Message:

check if orb and clk corrections are out of range added

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/BNC/src/RTCM3/RTCM3coDecoder.cpp

    r10569 r10572  
    239239                            + _clkOrb.NumberOfSat[CLOCKORBIT_SATBDS];
    240240    ii++) {
     241    if (corrIsOutOfRange(_clkOrb.Sat[ii])) {
     242      emit newMessage("RTCM3coDecoder: Correction out of range "  + _staID.toLatin1(), true);
     243      continue;
     244    }
    241245    char sysCh = ' ';
    242246    int flag = 0;
     
    576580}
    577581
     582// Check corrections
     583////////////////////////////////////////////////////////////////////////////
     584bool RTCM3coDecoder::corrIsOutOfRange(const SsrCorr::ClockOrbit::SatData& coSat) {
     585
     586  if (fabs(coSat.Clock.DeltaA0) > 209.7151)   {return true;}
     587  if (fabs(coSat.Clock.DeltaA1) > 1.048575)   {return true;}
     588  if (fabs(coSat.Clock.DeltaA2) > 1.34217726) {return true;}
     589
     590  if (fabs(coSat.Orbit.DeltaRadial)     > 209.7151) {return true;}
     591  if (fabs(coSat.Orbit.DeltaAlongTrack) > 209.7148) {return true;}
     592  if (fabs(coSat.Orbit.DeltaCrossTrack) > 209.7148) {return true;}
     593
     594  if (fabs(coSat.Orbit.DotDeltaRadial)     > 1.048575) {return true;}
     595  if (fabs(coSat.Orbit.DotDeltaAlongTrack) > 1.048572) {return true;}
     596  if (fabs(coSat.Orbit.DotDeltaCrossTrack) > 1.048572) {return true;}
     597  return false;
     598}
     599
    578600//
    579601////////////////////////////////////////////////////////////////////////////
Note: See TracChangeset for help on using the changeset viewer.