Changeset 11102 in ntrip for trunk/BNC/src/bncantex.cpp


Ignore:
Timestamp:
Oct 21, 2026, 1:56:26 AM (4 days ago)
Author:
stuerze
Message:

minor changes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/BNC/src/bncantex.cpp

    r11079 r11102  
    523523// simple sz×xSun formula.
    524524////////////////////////////////////////////////////////////////////////////
     525// GPS block types with a yaw model in gpsYawAngle() (ANTEX "BLOCK ..." names);
     526// other blocks (e.g. a future IIIF) use the nominal Sun-pointing yaw
     527////////////////////////////////////////////////////////////////////////////
     528bool bncAntex::gpsYawModelKnown(const QString& blockType) {
     529  return blockType == "IIA" || blockType.startsWith("IIR") ||
     530         blockType == "IIF" || blockType == "IIIA";
     531}
     532
    525533double bncAntex::gpsYawAngle(const QString& prn, const QString& blockType,
    526534                              double Mjd,
    … …  
    531539  // Max yaw rate [rad/s] by GPS block type
    532540  double psiDotMax;
    533   if      (blockType == "IIA")   psiDotMax = 0.12 * M_PI / 180.0;
    534   else if (blockType == "IIR")   psiDotMax = 0.20 * M_PI / 180.0;
    535   else if (blockType == "IIR-M") psiDotMax = 0.20 * M_PI / 180.0;
    536   else if (blockType == "IIF")   psiDotMax = 0.11 * M_PI / 180.0;
    537   else if (blockType == "IIIA")  psiDotMax = 0.15 * M_PI / 180.0;
    538   else return 0.0; // unknown block: caller uses simple Sun-pointing
     541  if      (blockType == "IIA")         psiDotMax = 0.12 * M_PI / 180.0;
     542  else if (blockType.startsWith("IIR")) psiDotMax = 0.20 * M_PI / 180.0; // IIR-A, IIR-B, IIR-M
     543  else if (blockType == "IIF")         psiDotMax = 0.11 * M_PI / 180.0;
     544  else if (blockType == "IIIA")        psiDotMax = 0.15 * M_PI / 180.0;
     545  else return 0.0; // unknown block: not called, see gpsYawModelKnown()
    539546
    540547  const double MAX_CALL_GAP = 1800.0 / 86400.0; // 30 min in days
    … …  
    844851      }
    845852      else if (mode == ATT_COMPUTED && prn[0] == 'G' && vSat.size() == 3
    846                && !map->blockType.isEmpty()) {
     853               && gpsYawModelKnown(map->blockType)) {
    847854        psiEff = gpsYawAngle(yawKey, map->blockType, Mjd, xSat, vSat, xSun);
    848855        useVelocityFrame = true;
Note: See TracChangeset for help on using the changeset viewer.