全波傅里叶算法计c语言,全周波傅里叶算法

全周波傅里叶算法

根据傅里叶级数,我们将待分析的周期函数电流信号i(t)表示为

()t

n sin I t n cos I I t i 11n ns 11n nc 0ω+ω+=∑∑∞=∞=

可用和分别乘式(8-46)两边,然后在t 0到t 0+T 积分,得到 dt t n cos )t (i T 2I T t t 1nc

00?+ω= (8—47) dt t n t i T I T t t ns ?+=001sin )(2ω (8—48)

每工频周期T 采样N 次,对式(8-47)和式(8-48)用梯形法数值积分来代替,则得

N n k i N I N k k nc

π2cos 21∑== (8—49) N n k

i N I N

k k ns π2sin 21∑== (8—50) 式中k 、i k ——第k 采样及第k 个采样值

电流n 次谐波幅值(最大值)和相位(余弦函数的初相)分别为

22nc ns nm I I I += (8—51)

46f428835dd2b595f2db9d2b45630206.png

(8—52)

写成复数形式有

ns nc n jI I I +=

对于基波分量,若每周采样12点(N =12),则式(8-49)和式(8-50)可简化为

12610842117511)(21)(236i i i i i i i i i i I c +-+--++--= (8—53) )(23)(21)(61084211751931i i i i i i i i i i I s --++--++-= (8—54)

在微机保护的实际编程中,为尽量避免采用费时的乘法指令,在准确度容许的情况下,为了获得对采样结果分析计算的快速性,可用(1—1/8)近似代替上两式中的2/3,而后1/2和1/8采用较省时的移位指令来实现。

全周波傅里叶算法本身具有滤波作用,在计算基频分量时,能抑制恒定直流和消除各整数次谐波,但对衰减的直流分量将造成基频(或其它倍频)分量计算结果的误差。另外用近似数值计算代替积也会导致一定的误差。算法的数据窗为一个工频周期,属于长数据窗类型,响应时间较长。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
全波离散傅立叶变换(Full-Wave Discrete Fourier Transform,FW-DFT)和递推离散傅立叶变换(Recursive Discrete Fourier Transform,RDFT)是两种常见的离散傅立叶变换算法。 下面我将分别举例说明它们的应用场景和基本原理。 1. 全波离散傅立叶变换(FW-DFT): 全波离散傅立叶变换是一种将离散序列转换为频域表示的算法。它在一些信号处理和图像处理应用中被广泛使用。 举个例子,我们有一个长度为N的离散序列x[n],其中n表示序列的索引。通过FW-DFT算法,可以将x[n]转换为其频域表示X[k],其中k表示频率的索引。 FW-DFT的基本原理是将输入序列分解成N个基础函数(正弦和余弦),然后通过算每个基础函数与输入序列的内积来得到频域表示。具体算公式如下: X[k] = Σ(x[n] * e^(-i * 2π * k * n / N)) 其中,X[k]表示频域表示中第k个频率分量的幅度和相位信息。 2. 递推离散傅立叶变换(RDFT): 递推离散傅立叶变换是一种利用递推公式算离散傅立叶变换的算法。它在一些实时信号处理和频谱分析应用中具有较高的效率。 举个例子,我们有一个长度为N的离散序列x[n],通过RDFT算法可以将其转换为频域表示X[k]。 RDFT的基本原理是利用递推关系将离散傅立叶变换的算分解为多个步骤来提高算效率。具体的递推公式如下: X[k] = X[k-1] + x[n] * W_N^(kn) 其中,W_N表示旋转因子,n表示输入序列的索引。 以上就是全波离散傅立叶变换和递推离散傅立叶变换的简单举例及其基本原理。这两种算法在信号处理和频谱分析领域都有广泛的应用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值