文章目录

  • ​​0 前言​​
  • ​​1 算法简介​​
  • ​​2 算法步骤​​
  • ​​3 算法改进​​
  • ​​4 参数选择​​
  • ​​5 拟合效果判断​​
  • ​​6 参考文献​​

0 前言

重点阅读【2 算法步骤】。


1 算法简介

Prony算法使用多个复指数衰减函数的线性组合来描述等间距采样数据,使用的衰减函数个数为Prony算法模型的阶数。

Prony吸收衰减滤波就是选择适当的Prony变换参数,采用部分Prony分量重构地震信号的过程。使用Prony吸收衰减滤波方法求得的吸收系数与地震信号的频率有关,能够较客观地反映地震信号随频率变化的衰减情况。

Prony算法流程如下:

(1)数据的获取和处理:首先获取需要进行处理的数据并滤波,然后确定需要计算的数据信号,根据振荡型号特征,设置采样频率;

(2)确定振荡模型的阶数并构造矩阵方程;

(3)根据得到的特征方程去计算出特征根;

(4)根据计算出来的特征根与公式得到振幅、相位、频率和衰减系数;

(5)输出模态参数并进行结果分析。


2 算法步骤

下面是Prony算法具体步骤:

1、构造样本函数矩阵R,其中pe为扩展后的阶数,且有pe>>p,pe的最大值=N/2:

【Prony算法】-总结_数据拟合


2、用​​SVD-TLS方法​​确定R的有效秩p;3、根据式:

【Prony算法】-总结_吸收滤波_02


求解上述方程即可得到参数a1,a2,…,ap和最小误差能量εp的估计值。4、求式:

【Prony算法】-总结_吸收滤波_03


的根zi,其中i=1,…,p。然后需要通过下式递推出​​x^(n)​​,其中x^(0)=x(0):

【Prony算法】-总结_信号重构_04


除此之外,还有:

【Prony算法】-总结_数据拟合_05


5、根据式:

【Prony算法】-总结_数据拟合_06


上式的矩阵Φ是N×p维的范德蒙特矩阵。其中:

【Prony算法】-总结_信号重构_07


因此参数向量b的解b1,b2,…,bp

【Prony算法】-总结_信号分解_08


给出。其中矩阵ΦHΦ可表示为下式:

【Prony算法】-总结_吸收滤波_09


其中:

【Prony算法】-总结_信号重构_10


6、利用下式计算振幅、相位、频率和衰减系数,其中k=1,2,…,p(请使用i替换下式的k):

【Prony算法】-总结_吸收滤波_11


3 算法改进

改进措施如下:

1、通过计算均方差(MSE)结果确定算法的阶数,而不是按矩阵R

【Prony算法】-总结_Prony算法_12


的秩确定。下面给出一种MSE定义:

【Prony算法】-总结_信号重构_13


C可设为一常数,也可取输入数据的最大值。最小均方差对应阶数是最优阶数。

2、如果分析结果误差较大,可将分析数据窗分成更小的窗口,这样避免信号非平稳性的影响。分段的标准可按信号的奇异点进行分类

3、振荡中信号的衰减无论正负不能过大,不同段之间的信号分量应可以光滑连接,可以忽略非常小幅值的信号

4、可采用适当的插值算法,以提高信号的采样率,从而改善计算的精度。


4 参数选择

一般采样频率取4fmax~10fmax较为合适。采样频率越接近4fmax,信号中各参量的辨识精度越高。

一般认为,时间窗长度应至少包括已知信号中最低频率模式的2个周期。

描述一个地震信号的话模型的阶数一般3~4个就足够了。


5 拟合效果判断

【Prony算法】-总结_吸收滤波_14


SSNR结果越大,表示拟合的结果越精确,一般认为SSNR达到20dB以上时,Prony分析得到的结果是可以接受的,接近40dB则更加理想。SSNR过低会导致Prony分析的误差过大,并且通常意味着线性预测模型的阶数过低

另外,通过比较真实数据曲线和拟合数据曲线,也可以作为一种辅助手段直观的判断拟合的效果。


6 参考文献

1、​​【Prony算法】简介之参数选择与改进措施​​;

2、​​【Prony算法】之公式推导及算法步骤​​。


END