说到傅大周天里叶变换就不得不提到傅里叶,傅里叶将自己的关于使用三角级数来表示周期信号等观点发布在《热的分析理论》一本书中,因为在当初有四位大家来评审傅里叶的论文,拉克劳克斯,孟济,拉普拉斯,拉格朗日。其中拉格朗日坚决反对,导致论文没有被发表,最终只能以上面的形式呈现。
连续时间傅里叶级数对于符合狄里赫利条件的周期函数都可以使用成谐波关系的复指数信号的加权和来表示:
x(t) = \sum_{k=-\infty}^{\infty} a_k \times e^{jkw_0t}
a_k = \frac{1}{T}\times \int_{T} x(t) \times e^{-jkw_0t}dt
其实可以这样理解,对于美女记者 e^{jk_1w_0t}和e^{jk_2w_0t} 是两两正交的信号,而将x(t)在以 e^{jw_0t},e^{jw_1t}, ... 为基的无限维空间上进行投影的得到的就是傅里叶级数的系数 a_k 。
关于上式的证明就是利用任意两个基信号都是两两正交的,所以对[1剑桥商务英语初级]的两边同时做内积就可以的到需要的系数 a_k 了。
<x(t), e^{-jk_iw_0t}> = \sum_{k=-\infty}^{\infty} <a_k \times e^{jkw_0t}, e^{-jk_iw_0t}>
由于右边之后 k和k_i 相等的时候,内积的结果才不为零,所有右边就是 T*a_i 。
利用matlab仿真,仿真的信号是
y = sin(2\pi100t) + cos(2\pi200t) ,可见基频是 2\pi100 ,利用欧拉公式展开,可以看到系数应该是
a_1 = 1j/2, a_{-1} = -1j/2, a_2 = 1/2, a_{-2} = 1/2
连续时间傅里叶变换在进行连续时间非周期信号的傅里叶变换推导的过程中,用到的思想就是将一个非周期信号看成是周期无限长的一个周期信号。
比如有一个非周期信号: x(t) 持续区间为 [-T_0, T_0] ,那么就可以构造出一个周期信号: x_T(t) = \sum_{k = -\infty}^{\infty}x(t+kT), T>T_0 ,对于这个周期信号来说,其有周期信号傅里叶级数,前面一节中推导过:
a_k = \frac{1}{T}\int_{T} x_T(t) \times e^{-jkw_0t} dt
x_T(t) = \sum_{k=-\infty}^{\infty}a_k \times e^{jkw_0t}
然后定义: Ta_k \equiv X(jw) | _{w=kw_0} ,而 X(jw) 就是所说的连续时间傅里叶变换。
从中就可以知道 X(jw) \equiv \int_{T}x_T(t)\times e^{jwt}dt
将其代入可得 x_T(t) = \frac{1}{T}\sum_{k=-\infty}^{\infty} X(jw)|_{w=kw_0}\times e^{jkw_0t} \\ = \frac{1}{2\pi}\sum_{k=-\infty}^{\infty} X(jw)|_{w=kw_0}\times e^{jkw_0t} \times w_0
当T趋向于无穷大的时候,会发现, w_0 会趋向于无穷小,而上面的求和式子就和积分的定义式完全相同。
x(t) = \lim_{T\to\infty} x_T(t) \\ = \frac{1}{2\pi}\int{x(t)\times e^{jwt} dt}
主要需要注意的一点是:连续时间傅里叶级数是定义为 Ta_k 的包络,是一个事先的定义,傅里叶级数 a_k*T a_k*T 的包络式不变的。
下面周期矩普京访谈录形脉冲序列的傅里叶级数和矩形脉冲的傅里叶变换为例进行说明:
矩形脉冲的脉冲宽度为 T_1 = 2 ,周期为 T = 10 ,图形如下图所示
矩形脉冲如下图:
由周期矩形脉冲的傅里叶级数和矩形脉冲的傅里叶变换公式可得:
a_k = \frac{2*sin(w_0*T_1)}{w_0*T}
x(jw) = \frac{2*sin(wt)}{w}
可以看出和得到的结论是一致的, T*a_k 是 x(jw) 的采样值, T*a_k 的包络是不变的。
为了推导出离散时间傅里叶变换的表火影卡卡西达式,还是仿照推导连续时间傅里叶变换表达式的方法,将离散非周期的信号,看成为周期为无穷的周期离散时间信号。那么先看一些离散时间傅里叶级数是怎么表示的。
离散时间傅里叶级数对于一个周期为 N 的离散时间序列,可以用一系列呈谐波关系的离散时间复指数信号表示,跟上面讨论连续时间傅里叶级数的时候类似,可以将离散时间傅里叶级数看成是此周期信号在 e^{jw_0n}, e^{j2w_0n}, ..., e^{j(N-1)w_0n} 这一组正交基上的投影, 和连续时间傅里叶级数不同点在于离散周期信号的正交基是有限个,而不是无限多个。
因为对于 e^{jw_0n} 和 e^{jw_0(n+N)} 是完全相同的, e^{jw_0n} = e^{j\frac{2\pi}{N}n} = e^{j\frac{2\pi}{N}(n+N)} = e^{jw_0(n+N)} ,所以只有 N 个呈非线性关系的基,也就自然只有 N 个系数。
和推导连续时间周期信号的过程类似,可以得到下面的表达式
a_k =\frac{1}{N} \sum_{n\in<N>} x[n]\times e^{-jkw_0n}
x[n]睾丸外皮 = \sum_{k\in <N>}a_k\times e^{jkw_0n}
a_1 = 1j/2, a_{9} = -1j/2, a_2 = 1/2, a_{8} = 1/2 ,从图中的傅里叶级数系数可以看出和傅里叶级数的周期性是一致的,是以 N 为周期的。
离散时间傅里叶变换思想推导连续时间傅里叶变换类似,将一个非周期离散时间信号,看成是一个周期为无穷大的周期离散时间信号。
对于一个非周期信号,其长度为 M ,那么可以构建一个周期为 N 的离散时间周期信号, N>M ,具体而言就是
X_N[n] = \sum_{k=-\infty}^{\infty}X[n+k*N]
那么就可以对 X_N[n] 信号做傅里叶级数的分析,得到傅里叶级数的系数 a_k ,同样定义一个函数,其代表 N*a_k 的包络,这个函数就是离散时间傅里叶变换。
X(e^{jw}) \equiv \lim_{N \to \infty}\sum_{n=-N}^{N} x[n]\times e^{-jwn} \\ 材料员考试 = \sum_{n=-\infty}^{\infty} x[n]\times e^{-jwn}
x_N[n] = \sum_{k\in<N>}a_k\times e^{jkw_0n} \\ = \frac{1}{2\古埃及神话pi}\sum_{k\in<N>}X(e^{jkw_0n})\times e^{jkw_0n}\times w_0 \\
而当 N \to \infty 的时候, x_N[n] = x[n]
那么可得岳飞之死:
x[n] = \lim_{N\to\infty}\frac{1}{2\pi}\sum_{k\in<N>}X(e^{jkw_0n})\times e^{jkw_0n}\times w_0 \\ =\frac{1}{2\pi}\int_{2\pi}X(e^{jwn})\times e^{jwn}\times dw
由此就得到了离散时间傅里叶变换的的表达式:
X(e^{jw}) = \sum_{n=-\infty}^{\infty} x[n]\times e^{-jwn}
x[n] = \frac{1}{2\pi}\int_{2\pi}X(e^{jwn})\times e^{jwn}\times dw
下面仍以周期矩形脉冲序列和矩形脉冲上官海棠序列来分析离散时间傅逃家小兔里叶变换和 N*a_k 之间的关系
可以看到是和连续时间傅里叶变换和傅里叶级数之间十分类似的关系,但是连续时间周期信号的傅里叶级数是无穷个,而离散时间周期信号的傅里叶级数是有限个;连续时间傅里叶变换是非周期的,而离散时间傅里叶变换是以 2\pi 为周期的。
既然有了离散时间傅里叶变换,为什么还需要离散傅里叶变换呢?
首先,观察以上各种傅里叶变换,它们要么是时域是连续的,要么频域是连续的,要么就是周期的,但是如果我们想利用计非纯种猫算机来对信号进行频域或者时域上的分析,那么就需要频域和时域都是离散的,于是就有了DFT(离散傅里叶变换)
时域频域CTFS连续离散CTFT连续连续DTFS离散(但是周期)离散(但是周期)DTFT离散连续离散傅里叶变换(DFT)
为了将离散时间信号的频谱能够进行离散化,自然想到的方法就是进行抽样,对频域进行抽样是不是就自然想到了离散周期信号的傅里叶级数,它不就是一个离散时间信号频域的等间隔采样吗,采样间隔为 w_0 = \frac{2\pi}{N} ,于是就可以定义出离散傅里叶变换:
x[n] = \begin{cases} x_N[n], & 0<n<N\\ 0, & \text{其它} \end{cases}
X[k] = \begin{c好春光不如梦一场ases} a_k & 网关0<k<N\\ 0, & \text{其它} \end{cases}
更通用的计法为
X[k] =\sum_{n=0}^{N-1}x[n]\times W_N^{nk} 0\leq k<N
x[n] = \frac{1}{N}\sum_{k=0}^{N-1}X[k]\times W_N^{-nk} 0\leq n <N
W_N = e^{-j\frac{1}{N}}
实际上和DFS进行对比就会发现,其实DFT只是对DFT进行取主值区间 [0, N-1]的值而已,当然关于DFT还有很多细节需要进行说明,随后我会整理一下再专门写一篇文章来说明DFT,FFT。
周期信号狄里赫利条件:
在任何周期信号x(t)都绝对可积在任何有限区间内信号x(t)只有有限个起伏变化在任何区间内只有有限个不连续点,而且在这些不连续点上,函数是有限值。参考书籍:
信号与系统,奥本海默
离散时间信号处理,奥本海默
如果大家感觉广州pos机办理写的不错,对你有点帮助,请点个赞鼓励一下。
matlab参考代码
%生成一个周期信号 --傅里叶级数 ------1%y = sin(2pi*fo*t) + cos(2pi*f1*t);T0 = 0.1;T = 1/100;f0 = 100;f1 = 200;Fs = 10000;t = 0 : 1/Fs : T0;y = sin(2*pi*f0*t) + cos(2*pi*f1*t);plot(t, y);w0 = 2*韩国国立大学pi*100; %基频k = -10 : 10;t = 狂怒20 : 1/Fs : T;y = sin(2*pi*f0*t) + cos(2*pi*f1*t);figure;ak = trapz(t, (y.*exp(-1j*k'*w0*t))')/T;stem(k, abs(ak));%观察傅里叶级数和傅里叶变换之间的关系 ----2%具体观察的是一个周期矩形脉冲的傅里叶级数和%一个矩形脉冲的傅里叶变换之间的关系T = 10;T1 = 2;Fs = 1000;t = -3*T : 1/Fs : 3*T;index = 1 : length(t);y = zeros(1, length(t));%构造周期信号for i = index temp = abs(t(i)) - floor(abs(t(i))/T)*T; if ( temp<T1 ) y(i) = 1; else if ( abs(temp - T) < T1 ) y(i) = 1; else y(i) = 0; end 美女与枪 endendplot(t, y);title('周期脉冲信号');%进行周期信号的傅里叶级数求解%取一个周期的信号ts = -T : 1/Fs : T;xt = zeros(1, length(ts));index = 1 : length(ts);for i = index if ( abs(ts(i)) < T1 ) xt(i) = 1; endendfigure;plot(ts, xt);title('矩形脉冲信号');w_0 = 2*pi/T;k = -50 : 50; %求101点的傅里叶级数kw_0 = k'*w_0;ak = 1/T*trapz(ts, (xt.*exp(-1j*kw_0*ts))');w = -50*w_0 : 0.1 : 50*w_0;wt = w'*ts;xw = trapz(ts, (xt.*exp(-1j*wt))');figure;stem(k, abs(T*ak));hold on;plot(w/w_0, abs(xw));legend('T*ak', 'X(jw)');title('傅里叶级数和傅里叶变换关系');%观察离散时间傅里叶级数 ----3%N = 10N = 10绿色农业;w_0 = 2*pi/N;n = -3*N : 3*N;x_n = sin(w_0*n) + cos(2*w_0*n);figure;plot(n, x_n);title('sin(\pi/5*n) + cos(2*\pi/5*n)');n0 = 0 : N-1; %取一个周期内k = 0 : 2*N-1;x_s = sin(w_0*n0) + cos(2*w_0*n0);ak = 1/N*x_s*exp(1j*k'*w_0*n0)';figure;stem(k, abs(ak));xlabel('ak');title('离散时间傅里叶级数');%观察离散时间傅里叶级数和傅里叶变换之间的关系 ---4%N = 10N = 10;width = 2; %矩形脉冲宽度w_0 = 2*pi/N;n = -3*N : 3*N;x_n = rectangleSequence(n, width, N);figure;stem(n, x_n);title('周期矩形脉冲脉冲信号');n0 = -N/2 : N/2-1; %取一个周期内k = 0 : 2*N-1;x_s = rectangleSequence(n0, width, N);figure;stem(n0, x_s);title('矩形脉冲信号');ak = 1/N*x_s*exp(1j*k'*w_0*n0)';figure;%以x_s为非周期信号来进行离散时间傅里叶变换w = 0 : 0.01 : (2*N-1)*w_0;x_w = x_s * exp(-1j*w'*n0)';plot(w/w_0, abs(x_w));hold on;stem(k, N*abs(ak));legend('离散时间傅里叶变换', 'N*ak');%产生一个具有指定脉冲宽度和周期的矩形脉冲函数function x = rectangleSequence(n, width, period)len = length(n);index = 1 : len;x = zeros(1, len);for i = index temp = abs(n(i)) - period*floor(abs(n(i))/period); if ( temp &犬瘟症状lt;= width ) x(i) = 1; else if ( abs(temp-period)<=width ) x(i) = 1; end endend本文发布于:2023-05-30 20:28:42,感谢您对本站的认可!
本文链接:http://www.ranqi119.com/ge/85/153024.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |