【积分】求解相位

Problem:thinkdsp中,有一个类Linear Chirp,做用是给一个频率范围,他给你一个Signal,这个Signal的对应的波的频率从低频到高频。好比1s的Linear Chirp波,频率从1Hz到25Hz,如图所示。那么这个波是如何算出来的呢?






函数

你须要知道/假设的几个条件:
1,波的表示为ts, ys,一个表明时间点,一个表明事件点对应的函数值。
2,要算这个波,你的目标是根据ts算出ys,能够假设ts是均匀的。
3,假设这个Signal是余弦波,这个波持续1s。
4,假设采样率是符合标准的,最大的频率/2 < Nyquist Frequency


ui

这个算式只能处理均匀的,对于非均匀的点,使用一样的思想。只不过dt改为了每一个两个点之间的差距。看代码感觉一下。code

dts = np.diff(ts)
dps = PI2 * freqs * dts
phases = np.cumsum(dps)
phases = np.insert(phases, 0, 0)
ys = self.amp * np.cos(phases)
相关文章
相关标签/搜索