本文主要是介绍为什么信号都能够用正弦信号表示?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1 矢量分解
我们知道两个矢量 V 2 → a n d V 1 → 相互正交,夹角为 90 ° 我们知道两个矢量\overrightarrow{V_2}and\overrightarrow{V_1}相互正交,夹角为90\degree 我们知道两个矢量V2andV1相互正交,夹角为90°
即 V 2 → ⋅ V 1 → = ∣ V 1 ∣ ⋅ ∣ V 2 ∣ c o s 90 ° = 0 \overrightarrow{V_2} \cdot\overrightarrow{V_1}=\left| V_1\right|\cdot\left|V_2\right|cos90\degree=0 V2⋅V1=∣V1∣⋅∣V2∣cos90°=0
在这个平面坐标上可以对任意方向的信号进行二维分解
如上图我们对V进行分解即使用V1和V2表示出来
V → = c 1 V → 2 + c 2 V → 2 \overrightarrow V=c_1\overrightarrow V_2+c_2\overrightarrow V_2 V=c1V2+c2V2
其中 c 1 = ∣ V → ∣ c o s θ 1 ∣ V → 1 ∣ = V → ⋅ V → 1 V → 1 ⋅ V → 1 c_1=\frac{\left|\overrightarrow V\right|cos\theta_1}{\left|\overrightarrow V_1\right|}=\frac{\overrightarrow V \cdot \overrightarrow V_1}{\overrightarrow V_1 \cdot \overrightarrow V_1} c1= V1 V cosθ1=V1⋅V1V⋅V1
c 2 = ∣ V → ∣ c o s θ 2 ∣ V → 2 ∣ = V → ⋅ V → 2 V → 2 ⋅ V → 2 c_2=\frac{\left|\overrightarrow V\right|cos\theta_2}{\left|\overrightarrow V_2\right|}=\frac{\overrightarrow V \cdot \overrightarrow V_2}{\overrightarrow V_2 \cdot \overrightarrow V_2} c2= V2 V cosθ2=V2⋅V2V⋅V2
同理我们对于三维向量进行分解
V → = c 1 V → 2 + c 2 V → 2 + c 3 V → 3 \overrightarrow V=c_1\overrightarrow V_2+c_2\overrightarrow V_2+c_3\overrightarrow V_3 V=c1V2+c2V2+c3V3
其中 c 1 = ∣ V → ∣ c o s θ 1 ∣ V → 1 ∣ = V → ⋅ V → 1 V → 1 ⋅ V → 1 c_1=\frac{\left|\overrightarrow V\right|cos\theta_1}{\left|\overrightarrow V_1\right|}=\frac{\overrightarrow V \cdot \overrightarrow V_1}{\overrightarrow V_1 \cdot \overrightarrow V_1} c1= V1 V cosθ1=V1⋅V1V⋅V1
c 2 = ∣ V → ∣ c o s θ 2 ∣ V → 2 ∣ = V → ⋅ V → 2 V → 2 ⋅ V → 2 c_2=\frac{\left|\overrightarrow V\right|cos\theta_2}{\left|\overrightarrow V_2\right|}=\frac{\overrightarrow V \cdot \overrightarrow V_2}{\overrightarrow V_2 \cdot \overrightarrow V_2} c2= V2 V cosθ2=V2⋅V2V⋅V2
c 3 = ∣ V → ∣ c o s θ 3 ∣ V → 3 ∣ = V → ⋅ V → 3 V → 3 ⋅ V → 3 c_3=\frac{\left|\overrightarrow V\right|cos\theta_3}{\left|\overrightarrow V_3\right|}=\frac{\overrightarrow V \cdot \overrightarrow V_3}{\overrightarrow V_3 \cdot \overrightarrow V_3} c3= V3 V cosθ3=V3⋅V3V⋅V3
由低维推广至高维,我们可以知道n维空间的任意矢量V,可以准确表示为n个正交矢量的线性组合,即:
V → = c 1 V → 2 + c 2 V → 2 + ⋯ + c n V → n \overrightarrow V=c_1\overrightarrow V_2+c_2\overrightarrow V_2+\cdots+c_n\overrightarrow V_n V=c1V2+c2V2+⋯+cnVn
其中任意 c r = V → ⋅ V → r V → r ⋅ V → r c_r=\frac{\overrightarrow V \cdot \overrightarrow V_r}{\overrightarrow V_r \cdot \overrightarrow V_r} cr=Vr⋅VrV⋅Vr
V → i ⋅ V → j = 0 ( i ≠ j ) \overrightarrow V_i \cdot \overrightarrow V_j=0(i\ne j) Vi⋅Vj=0(i=j)
我们可以将这种矢量分解的思想推广至信号分解中。
2 信号分解
信号正交:在( t 1 t_1 t1, t 2 t_2 t2)区间的两个函数 φ 1 ( t ) \varphi_1(t) φ1(t)和 φ 2 ( t ) \varphi_2(t) φ2(t)满足 ∫ t 1 t 2 φ 1 ( t ) φ 2 ( t ) ∗ d t = 0 \int_{t_1}^{t_2}\varphi_1(t)\varphi_2(t)^*\mathrm{d}t=0 ∫t1t2φ1(t)φ2(t)∗dt=0(信号卷积为0),则称 φ 1 ( t ) \varphi_1(t) φ1(t)和 φ 2 ( t ) \varphi_2(t) φ2(t)在该区间内正交。
对于已知信号的分解我们需要先找到一个正交函数集(即映射的平面坐标轴,于多个函数而言在( t 1 t_1 t1, t 2 t_2 t2)区间的n个函数 φ 1 ( t ), φ 2 ( t ), ⋯ , φ n ( t ) \varphi_1(t),\varphi_2(t),\cdots,\varphi_n(t) φ1(t),φ2(t),⋯,φn(t)满足 ∫ t 1 t 2 φ i ( t ) φ j ( t ) ∗ d t = 0 ( i ≠ j ) \int_{t_1}^{t_2}\varphi_i(t)\varphi_j(t)^*\mathrm{d}t=0(i\ne j) ∫t1t2φi(t)φj(t)∗dt=0(i=j),则称该函数集在该区间内正交。
另外信号的分解更加苛刻一点,需要完备正交函数集即在正交函数集外,不存在任何函数 φ ( t ) \varphi(t) φ(t)满足
∫ t 1 t 2 φ ( t ) φ j ( t ) ∗ d t = 0 ( φ j 取自正交函数集) \int_{t_1}^{t_2}\varphi(t)\varphi_j(t)^*\mathrm{d}t=0( \varphi_j取自正交函数集) ∫t1t2φ(t)φj(t)∗dt=0(φj取自正交函数集)
则该正交函数集便升级为完备正交函数集
恰好有两个典型的完备正交函数集在区间 ( t 0 , t 0 + T ) (t_0,t_0+T) (t0,t0+T)
(1)三角函数集{ 1 , c o s ( n Ω t ) , s i n ( n Ω t ) , n = 1 , 2 , ⋯ 1,cos(n\Omega t),sin(n\Omega t),n=1,2,\cdots 1,cos(nΩt),sin(nΩt),n=1,2,⋯}
(2)虚指数函数集{ e j n Ω t , n = 0 , ± 1 , ± 2 , ⋯ e^{jn\Omega t},n=0,\pm1,\pm2,\cdots ejnΩt,n=0,±1,±2,⋯}
可自行进行证明,傅里叶已证实
接下来我梦使用信号正交分解
为了求解 f ( t ) f(t) f(t)与我们近似函数之间误差最小,引入一个均方误差函数
ε 2 ‾ = 1 t 2 − t 1 ∫ t 1 t 2 [ f ( t ) − ∑ j = 1 n C j φ j ( t ) ] 2 d t \overline{ \varepsilon^2}=\frac{1}{t_2-t_1}\int_{t_1} ^{t_2}[f(t)-\sum_{j=1}^nC_j\varphi_j(t)]^2\mathrm{d}t ε2=t2−t11∫t1t2[f(t)−j=1∑nCjφj(t)]2dt
对其求 C i C_i Ci偏导,并令其等于0
∂ ε 2 ‾ ∂ C i = ∂ ∫ t 1 t 2 [ f ( t ) − ∑ j = 1 n C j φ j ( t ) ] 2 d t ∂ C i \frac { \partial \overline{ \varepsilon^2}}{ \partial C_i}=\frac{\partial{\int_{t_1} ^{t_2}[f(t)-\sum_{j=1}^nC_j\varphi_j(t)]^2\mathrm{d}t}}{ \partial C_i} ∂Ci∂ε2=∂Ci∂∫t1t2[f(t)−∑j=1nCjφj(t)]2dt
对于求和项而言两两正交所以只留下 C i 2 φ i 2 C_i^2\varphi_i^2 Ci2φi2,展开被积积分,并求导,只有两项不为0即
− 2 ∫ t 1 t 2 f ( t ) φ i ( t ) d t + 2 C i ∫ t 1 t 2 φ i 2 ( t ) d t = 0 -2\int_{t_1} ^{t_2}f(t)\varphi_i(t)\mathrm{d}t+2C_i\int_{t_1} ^{t_2}\varphi_i^2(t)\mathrm{d}t=0 −2∫t1t2f(t)φi(t)dt+2Ci∫t1t2φi2(t)dt=0
即
C i = ∫ t 1 t 2 f ( t ) φ i ( t ) d t ∫ t 1 t 2 φ i 2 ( t ) d t = 1 K ∫ t 1 t 2 f ( t ) φ i ( t ) d t C_i=\frac{\int_{t_1} ^{t_2}f(t)\varphi_i(t)\mathrm{d}t}{\int_{t_1} ^{t_2}\varphi_i^2(t)\mathrm{d}t}=\frac{1}{K}\int_{t_1} ^{t_2}f(t)\varphi_i(t)\mathrm{d}t Ci=∫t1t2φi2(t)dt∫t1t2f(t)φi(t)dt=K1∫t1t2f(t)φi(t)dt
回代:
可知取得项数越多即n越大,均方误差越小。当 n → ∞ n \to \infty n→∞时,均方误差为0
3 结论
任意信号可以表示为无穷个正交函数之和即:
f ( t ) = C 1 φ 1 ( t ) + C 2 φ 2 ( t ) + ⋯ + C n φ n ( t ) = ∑ i = 1 ∞ C i φ ( t ) f(t)=C_1\varphi_1(t)+C_2\varphi_2(t)+\cdots+C_n\varphi_n(t)=\sum_{i=1}^\infty C_i\varphi(t) f(t)=C1φ1(t)+C2φ2(t)+⋯+Cnφn(t)=i=1∑∞Ciφ(t)
也可称为正交展开式,或者广义傅里叶级数。
因此任意信号可以使用正弦完备正交函数集来表示
参考视频讲解:
郭宝龙信号系统讲解
这篇关于为什么信号都能够用正弦信号表示?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!