对Volterra级数公式的理解-1

在学习接收系统的非线性问题,第一眼看到Volterra级数公式(就是下面这货),那是一脸蒙蔽…
y ( k ) = ∑ d = 1 D ( ∑ r 1 = 0 N d − 1 ∑ r 2 = 0 N d − 1 . . . ∑ r d = 0 N d − 1 h ( r 1 , r 2 , … , r d ) ∏ j = 1 d x ( k − r j ) ) ( 1 ) y(k)=\sum_{d=1}^{D}\left(\sum_{r_{1}=0}^{N_{d}-1} \sum_{r_{2}=0}^{N_{d}-1}... \sum_{r_{d}=0}^{N_{d}-1} h\left(r_{1}, r_{2}, \ldots, r_{d}\right) \prod_{j=1}^{d} x\left(k-r_{j}\right)\right)(1) y(k)=d=1D(r1=0Nd1r2=0Nd1...rd=0Nd1h(r1,r2,,rd)j=1dx(krj))1

x ( k ) x(k) x(k):非线性系统的输入(时域信号, k k k表示时间);

y ( k ) y(k) y(k):非线性系统的输出;

d d d表示阶数, D D D表示 d d d的最大取值;

r j r_{j} rj表示构成 d d d阶项中第 j j j项对应的记忆时延(这名字我瞎起的), N d N_{d} Nd代表记忆深度, N d − 1 N_{d}-1 Nd1也就是 r j r_{j} rj能取的最大正整数,也就是最大考虑的记忆时延。

求和代表的考虑的是时间离散的情况。

尴尬的是,即便是知道各个参数的含义,恕我愚钝,盯着(1)式看了足足十分钟,愣是没看出个所以然…为了避免继续蒙蔽下去,我尝试着按下面的步骤一点点理解。

首先,从一般的幂级数开始,式(2)的含义比较清楚。
y ( k ) = ∑ d = 1 D h d ⋅ x d ( k ) ( 2 ) y(k)=\sum_{d=1}^{D} h_{d} \cdot x^{d}(k)(2) y(k)=d=1Dhdxd(k)2
展开就是 y ( k ) = h 1 ⋅ x ( k ) + h 2 ⋅ x 2 ( k ) + … y(k)=h_{1} \cdot x(k)+h_{2} \cdot x^{2}(k)+\ldots y(k)=h1x(k)+h2x2(k)+,阶数截断到 D D D,可以看到上式只考虑了非线性效应(在接收系统的背景下,非线性指的是有新频率产生),而没有考虑记忆效应(在接收系统的背景下,记忆效应表现为时延失真?暂且这么理解)。

接下来,引入记忆效应,考虑第 d d d阶的输出项是由从现在到过去 N d N_{d} Nd个离散时间单位处的加权值的叠加得到(注意对于每个阶数 d d d可以有不同的记忆深度 N d N_{d} Nd),每个记忆时延点,都会有一个加权系数 h d ( r ) h_{d} (r) hd(r),那么(2)式中的 h d ⋅ x d ( k ) ( 2 ) h_{d} \cdot x^{d}(k)(2) hdxd(k)2就变成了下述对时间的求和。

∑ r = 0 N d − 1 h d ( r ) ⋅ x d ( k − r ) ( 3 ) \sum_{r=0}^{N_{d-1}} h_{d}(r) \cdot x^{d}(k-r)(3) r=0Nd1hd(r)xd(kr)3

再代入到(2)式就有
y ( k ) = ∑ d = 1 D ( ∑ r = 0 N d − 1 h d ( r ) ⋅ x d ( k − r ) ) ( 4 ) y(k)=\sum_{d=1}^{D}\left(\sum_{r=0}^{N_{d}-1} h_{d}(r) \cdot x^{d}(k-r)\right)(4) y(k)=d=1D(r=0Nd1hd(r)xd(kr))4
(4)式就是记忆多项式模型,考虑了非线性和记忆效应。

最后,式(4)求和项 h d ( r ) ⋅ x d ( k − r ) h_{d}(r) \cdot x^{d}(k-r) hd(r)xd(kr) d d d阶项都是由同一个记忆时延构成,当我们考虑更复杂的情况时,即 x d ( k − r ) x^{d}(k-r) xd(kr)项由任意记忆时延项构成时,就能够得到最一般的Volterra级数公式。

第一步 x d ( k − r ) x^{d}(k-r) xd(kr)将变成 ∏ j = 1 d x ( k − r j ) \prod_{j=1}^{d} x\left(k-r_{j}\right) j=1dx(krj),也就是 d d d个求积的各项,都可以自由的选择记忆时延,第 j j j项求积项选择的记忆时延是 r j r_{j} rj

第二步 d d d阶的系数数量上不再是(4)式的 N d N_{d} Nd项,而变成了 ( N d ) d (N_{d})^{d} (Nd)d项,每项表示为 h ( r 1 , r 2 , … , r d ) h\left(r_{1}, r_{2}, \dots, r_{d}\right) h(r1,r2,,rd)

第三步,对 d d d h ( r 1 , r 2 , … , r d ) ∏ j = 1 d x ( k − r j ) h\left(r_{1}, r_{2}, \ldots, r_{d}\right) \prod_{j=1}^{d} x\left(k-r_{j}\right) h(r1,r2,,rd)j=1dx(krj)各项求和就有
∑ r 1 = 0 N d − 1 ∑ r 2 = 0 N d − 1 . . . ∑ r d = 0 N d − 1 h ( r 1 , r 2 , … , r d ) ∏ j = 1 d x ( k − r j ) ( 5 ) \sum_{r_{1}=0}^{N_{d}-1} \sum_{r_{2}=0}^{N_{d}-1}... \sum_{r_{d}=0}^{N_{d}-1} h\left(r_{1}, r_{2}, \ldots, r_{d}\right) \prod_{j=1}^{d} x\left(k-r_{j}\right)(5) r1=0Nd1r2=0Nd1...rd=0Nd1h(r1,r2,,rd)j=1dx(krj)5
最后一步,再对各阶求和,就得到了(1)式。

不否认,有NB的一眼就能理解(1)并且理解的比咱分析半天还深刻得多,但没那智商我也就只能老老实实,一步步试着理解,特此记录防止过两天不看忘了个一干二净。

  • 73
    点赞
  • 111
    收藏
    觉得还不错? 一键收藏
  • 14
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值