滤波分析
概述
大气运动是多种时间和空间尺度的系统组成的,空间尺度与时间尺度有基本上对应的关系,空间尺度越大的系统时间也会越大,或活动周期越长。因此,大气运动系统中的气象变量序列通常都包含着复杂的周期成分,具有多尺度特征。如,年、季、月、周、日的平均气温、海温、气压等等。不同气象要素的规则或不规则振荡周期是不同的,在指定尺度下某些规则周期占有的分量不同。由于研究目的不同,经常需要将我们感兴趣的周期成分从原序列中识别和提取出来,或把不感兴趣的周期成分从原序列中去掉,这一过程就是序列滤波。滤波是分离不同频带大气变化和分离各种天气尺度系统, 研究其对天气的不同影响及各种尺度系统间的相互作用的常用方法。
数字滤波器原理
从数学角度上看,滤波过程实际上是原始序列经过一定的变换转化为另一序列的过程。时间序列使用的是数字滤波器,它是一个线性运算系统,从输入的时间序列(时间函数)x(t),后到输出新的时间函数y(t),所经过运算是
   
    其中,是脉冲函数,也称为脉冲响应。此外,称输入时间函数的谱为X(f),输出时间函数的谱为Y(f),脉冲函数的谱为频率响应H(f),则有   
   
一般而言,是复数,实部和虚部分别是
    Re ()=
    Im ()=
由此可见,的模||是频率为f 的成分在输出序列中的振幅较之输入序列中的振幅增长的倍数,称为振幅响应函数或增益函数,||=1的频率成分滤波前后振幅将不变。根据功率谱的定义有,对于输出y(t)的功率谱有
       
通常对某一频率振动,通过过滤后,它的方差有所削减,其削减量就是输入与输出的功率之比。
在一般气象应用中,不希望滤波后产生位相移动,这要求arg=0,这往是不能完全做到的,实际应用中可先使虚部为0,并取偶函数以达到接近效果。另外,实际应用中时间t时离散的等间距的,输入序列的长度有限,则输出序列可表达为有限项求和的形式
   
,且k从-m到m对称,的虚部为零,则响应函数也可表达为
如果理想化地要求把原序列中包含的我们需要的频率成分振幅和位相都不变地滤出,而把不需要的频率成分完全滤去,那么原理上要求在需要的频率上,=1,在不需要的频率上=0。但实际上,这种理想的滤波器是不能实现的,所以实际应用中的滤波器滤波后输出的序列只能相对地看待和解释。
实际气象应用的滤波器
    从气象实际应用需求出发,滤波器可分为三类:用于从原序列中滤出低于某一频率成分的滤波器,称为低通滤波器;用于滤出高于某个频率成分的滤波器称为高通滤波器;用于滤出指定两个频率之间的一个频带成分的滤波器称为带通滤波器。frequency函数计算频数
    因为气象应用中原序列是等时间间隔()离散取值的,它能反映出的最短周期为2,最大频率为1/(2),因此,这三类滤波器的频率参数只能在[0,1/2]范围内,并不能过分接近0或1/2。
一、低通滤波算法
根据前述定义知,低通滤波使过滤后的序列主要含低频振动分量。本模块设计了4种常用的数学模型实现:等权滑动平均模型、高斯模型、二项式系数模型和递归式单极模型。
1、等权滑动平均模型
2、高斯模型
3、二项式系数模型
4、递归式单极模型
4.1算法原理
递归式单极模型是一阶惯性低通滤波方法的其中一种实现模型。一阶惯性低通滤波将是将普通硬件RC低通滤波器的微分方程用差分方程来表示,便可以用软件算法来模拟硬件滤波的功能。一阶惯性低通滤波采用本次采样值与上次滤波输出值进行加权,得到有效滤波值,使得输出对输入有反馈作用。一阶惯性低通滤波算法描述如下:
Y(n)=αX(n)  + (1-α)Y(n-1)
其中,α=滤波系数,它决定新采样值在本次滤波结果中所占的权重X(n)=本次采样值;Y(n-1)=上次滤波输出值;Y(n)=本次滤波输出值。
由上式可以看出,本次滤波的输出值主要取决于上次滤波的输出值(注意不是上次的采样值,这和加权平均滤波是有本质区别的),本次采样值对滤波输出的贡献是比较小的,但多少有些修正作用。这种算法模拟了具有较大惯性的低通滤波功能。
用递归式单极模型实现一阶惯性低通滤波时,是将滤波算法的滤波系数α设计如下:
α=
式中,α为滤波系数,f为截断频率,为采样间隔时间。
说明:
在本滤波分析模块中,选取递归式单极低通滤波模型时,首先需要设置的参数是nType=3,然后设置nM_dt=采样时间间隔,dCigma_cutOff=截断频率。