zoukankan      html  css  js  c++  java
  • RTKLIB中质量控制函数之——testsnr()函数

    RTKLIB中的随机模型用的是高度角模型,

    可以针对不同高度角设置不同的信噪比阈值,对信噪比低于所设阈值的观测值进行剔除。

    /* test SNR mask ---------------------------------------------------------------
    * test SNR mask
    * args   : int    base      I   rover or base-station (0:rover,1:base station)
    *          int    idx       I   frequency index (0:L1,1:L2,2:L3,...)
    *          double el        I   elevation angle (rad)
    *          double snr       I   C/N0 (dBHz)
    *          snrmask_t *mask  I   SNR mask
    * return : status (1:masked,0:unmasked)
    *-----------------------------------------------------------------------------*/
    extern int testsnr(int base, int idx, double el, double snr,
                       const snrmask_t *mask)
    {
        double minsnr,a;
        int i;
        /* mask->ena:为rover、base检测信噪比功能的开关;0:不检测信噪比,1:检测信噪比 */
        if (!mask->ena[base]||idx<0||idx>=NFREQ) return 0;
        
        a=(el*R2D+5.0)/10.0;  /* 将高度角分为10个区间:0-5、5-15、15-25、25-35、35-45、45-55、55-65、65-75、75-85、85-90 */
        i=(int)floor(a); 
      a-=i; if (i<1) minsnr=mask->mask[idx][0];  /* 高度角在0-5,直接按 设置的第一个阈值 */ else if (i>8) minsnr=mask->mask[idx][8]; /* 高度角在85-90,直接按最后一个阈值 */ else minsnr=(1.0-a)*mask->mask[idx][i-1]+a*mask->mask[idx][i]; /* 其他的高度角,需要相邻阈值拟合一下 */ return snr<minsnr; }
  • 相关阅读:
    P1144 最短路计数
    P2966 [USACO09DEC]牛收费路径Cow Toll Paths
    P2419 [USACO08JAN]牛大赛Cow Contest
    P1462 通往奥格瑞玛的道路
    P1346 电车
    P1339 [USACO09OCT]热浪Heat Wave
    P1418 选点问题
    P1330 封锁阳光大学
    P1182 数列分段Section II
    P2661 信息传递
  • 原文地址:https://www.cnblogs.com/y-z-h/p/15511780.html
Copyright © 2011-2022 走看看