
关于Lyaponov指数与趋势项的问题
好长时间以前,好像是去年,我算序列最大Lyaponov指数的时候,发现一个问题:如果序列是有趋势的序列,或者说就是那种“不对称的序列”,往往Lyaponov指数的计算程序会失效,后来我用希尔伯特黄变换方法把序列的趋势项给去了,程序就能通过了,当时没想为什么,现在要写论文用了,得把这事想清楚:
为什么一个有趋势的序列通不过Lyaponov指数计算呢,或者问一个这样的问题:一般的混沌序列都有趋势项么?
我不是数学专业的,能想到的有限,那位牛人能分析一下?
>
希尔伯特变换的意义本文不提,本文的目标是举例说明到底离散傅里叶变换是如何实现的,并编写程序与matlab自带的hilbert函数结果对比,验证我们的实现过程是否正确。
原始信号为 ,其离散希尔伯特变换的定义公式为:
说明:先让原始信号与 信号做卷积,然后一起合并成一个 复数 信号 。
问题:看上去很简单,但这里的卷积不是一般意义上的卷积的 *** 作!
所以:实际中得到 的方法是通过借助 离散傅里叶变换DFT 来实现的!
因此:本文就用 离散傅里叶变换 来实现 离散希尔伯特变换 。
设原始信号为 ,总长度一般 (下标n是从 1 开始到N),总体实现步骤可分为3步:
相应的matlab程序:
结果:
手动实现正确!
希尔伯特变换的结果是给原始信号 提供了一个幅值、频率不变,但相位平移90°的信号 。
所以,希尔伯特变换是从"时域"到"时域"的变换!只改变了相位,所以又叫90°移相滤波器;
所以,原始信号 与它的希尔伯特变换 构成正交副。
现在,我们换回到最初的记法:原始信号和它对应的希尔伯特变换信号分别用 和 表示,那么对应的" 解析信号 "就可以用这两个东西组成:
对于这个解析信号,我们可以得它的3瞬属性:瞬时振幅、瞬时相位、瞬时频率。
可以看出,3瞬属性是相互关联的!
瞬时振幅、瞬时相位可以直接求,有意义;
但是瞬时频率 直接 根据解析信号这么按公式 求 ,是 没有物理意义 的!
并且 离散信号 ,它的瞬时频率求导只能按照" 差分 "来近似,即:
给出matlab的实现程序:
效果:
3瞬属性中的瞬时频率,很明显可以看出它有很多的" 负频率 "!这很明显是错误的。
所以,直接根据" 解析信号 "算瞬时频率是无意义的!
所以,真正做 3瞬属性 的分析,做原信号的" 时频谱 "分析,我们用的:
—— 希尔伯特-黄变换。
这个分解是基于希尔伯特-黄变换和希尔伯特变换而来,通过黄变换滤除信号里局域的直流成分,短时内是纯交流成分。而之所以不直接使用希尔伯特变换后利用复信号的d(phi)/dt=w (phi是角度)的方式来求信号的瞬时频率,是因为信号可能存在非频率波动的成分,也就是说可能信号的波动是因幅值引起,这样求得的频率可能是负值,而希尔伯特变换的信号频率不存在负的,所以才需要以上的黄变换这个分解imf的过程。但这个分解精度纯粹因信号本身而异,存在一定的风险。不过据我认为,信号在离散的情况下,黄变换并不是必须的,只需要在希尔伯特变换之前加一些简单处理即可,这种方式得到的瞬时频率与用了imf后得到的再matlab下得到的图像基本一样。楼主可自己编写程序,这个程序包不是必须
以上就是关于麻烦用VB帮我编个程序 基于最大Lyaponov指数的预测法 有公式全部的内容,包括:麻烦用VB帮我编个程序 基于最大Lyaponov指数的预测法 有公式、用Timer控件,使Label的字体颜色循环变换:红 绿 蓝 黄 橙 紫 黑 怎么写Ti、一维离散希尔伯特变换实现与3瞬属性等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)