找回密码
 注册
关于网站域名变更的通知
查看: 1933|回复: 1
打印 上一主题 下一主题

MATLAB —— 介绍一下nextpow2 函数的 Optimize FFT with Padding 用法

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-12-10 09:58 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
本帖最后由 mytomorrow 于 2019-12-10 10:01 编辑
; ?$ _) I& ~- P% v6 P& ~8 Y" x, K& Y! U# c0 M, F5 |- k. I
0 k+ S$ f; j( \: [" ^$ v) i. B
您可以使用nextpow2来填充传递给fft的信号。 这样做可以在信号长度不是2的精确幂次时加速FFT的计算。
; v; x/ J4 @* S% G3 {, Y- _+ h' y( E# m% [: R( f! A# e5 t
Optimize FFT with Padding* L8 P. G8 M8 S$ ^2 R7 \

8 M% f0 p! l; r: w下面这个例子展示了 使用填充优化FFT的案例,通过使用函数nextpow2完成:) ^$ W+ p- [. M) u, F8 J7 J
8 A0 t% p6 o$ D$ Z: Z4 O7 @
  • clc
  • clear
  • close all
  • % Use the nextpow2 function to increase the peRFormance of fft when the length of a signal is not a power of 2.
  • %
  • % Create a 1-D vector containing 8191 sample values.
  • , T$ j% Q) H* W4 d4 g
  • x = gallery('uniformdata',[1,8191],0);
  • % Calculate the next power of 2 higher than 8191.

  • + ]' o# D8 ]6 O  _" }2 E
  • p = nextpow2(8191);
  • n = 2^p
  • %get  n = 8192
  • % Pass the signal and the next power of 2 to the fft function.
  • & E0 |4 ]9 K  n! n7 H) e) U7 B, ]# f
  • y = fft(x,n);

  • ' D, O# }- ]! V2 ^% {
  • ; X: V- ^0 ^4 x  H
  • 2 O$ w2 \8 d$ F$ x1 _2 m
  • 7 t$ ~$ [! ^7 N

    4 u3 a. w$ N- d5 M7 m8 C( e

    + [# P: p: @+ R+ v1 m# u- ~
      
4 A  `4 Q2 b3 W$ P9 b$ k
! S/ _7 \( N4 U7 a1 `5 ^$ d4 F# V" c; D; A

% L9 g  Q$ \& H4 k
, R& J- B4 V; k9 P# |5 i$ A. g- r上述的程序中有一个产生测试矩阵的函数x = gallery('uniformdata',[1,8191],0);,关于它的介绍见上篇:MATLAB —— 认识一下gallery 中的 uniformdata; R/ x5 X" o, p' q; X$ f& H

3 F& E0 b! k, {) P4 X% k( |
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-24 10:19 , Processed in 0.187500 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表