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

FRFT程序运行时说Not enough input arguments. 是怎么回事???

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-8-2 14:14 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

EDA365欢迎您登录!

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

x
如题:FRFT程序运行时说Not enough input arguments. 是怎么回事???7 U: i. L( t) t* j+ t0 [
8 n* F) f. a, d& }

function Faf = frft(f, a)
; @) S# l9 R7 E# t2 W" c4 F% The fast Fractional Fourier Transform
) _7 V* N" p5 c: o7 i. L% input: f = samples of the signal
8 e1 |* D) w: _8 i! j: s2 i, A% a = fractional power  M# s) A" a# K' T8 I5 |
% output: Faf = fast Fractional Fourier transform

error(nargchk(2, 2, nargin));

f = f(;
4 l; W2 R7 D* l! [N = length(f);/ K5 @7 m0 T; r2 s7 C
shft = rem((0:N-1)+fix(N/2),N)+1;+ B9 p% }, h( l" w% M7 f3 {7 H
sN = sqrt(N);% ?' f; N% I/ t! m) x8 ^" x" W) ~$ {
a = mod(a,4);

% do special cases6 J1 r$ g0 ?# m; i& _1 B* k
if (a==0), Faf = f; return; end;
; C5 q) Z; `5 {9 j0 o5 Dif (a==2), Faf = flipud(f); return; end;
8 @9 F  @( J; ?+ f! sif (a==1), Faf(shft,1) = fft(f(shft))/sN; return; end
; p8 w# v0 g* P3 l9 t% ~if (a==3), Faf(shft,1) = ifft(f(shft))*sN; return; end

% reduce to interval 0.5 < a < 1.53 T5 l  Z8 c# C" z0 {7 |
if (a>2.0), a = a-2; f = flipud(f); end7 k/ e* a4 `1 n
if (a>1.5), a = a-1; f(shft,1) = fft(f(shft))/sN; end
! T9 b8 o3 o) s! v8 d( uif (a<0.5), a = a+1; f(shft,1) = ifft(f(shft))*sN; end

% the general case for 0.5 < a < 1.59 S: B2 a7 r# `7 K5 D# i. P, U
alpha = a*pi/2;
( l/ O# f1 B& S" o. J4 u. Jtana2 = tan(alpha/2);* D6 q* e5 ]- I) |4 m8 ~) T
sina = sin(alpha);- J/ s0 v$ O1 Y& l' y
f = [zeros(N-1,1) ; interp(f) ; zeros(N-1,1)];

% chirp premultiplication' `7 d9 R% S& u6 }' m  W
chrp = exp(-i*pi/N*tana2/4*(-2*N+2:2*N-2)'.^2);: ^' J- Y5 v2 H, N
f = chrp.*f;

% chirp convolution9 Q( a0 O6 d& f! @7 h* S
c = pi/N/sina/4;
. ]3 a# E  L* L2 L+ |2 W: pFaf = fconv(exp(i*c*(-(4*N-4):4*N-4)'.^2),f);; V- h" v/ a, j, `. R/ K
Faf = Faf(4*N-3:8*N-7)*sqrt(c/pi);

% chirp post multiplication3 ^% K" U0 Y, b( k
Faf = chrp.*Faf;

% normalizing constant
3 w' b) {, U. d8 C: x/ Z5 ]$ YFaf = exp(-i*(1-a)*pi/4)*Faf(N:2:end-N+1);

%%%%%%%%%%%%%%%%%%%%%%%%%8 g: [3 ^9 ?8 h
function xint=interp(x)3 G7 P0 w5 q, H8 L
% sinc interpolation

N = length(x);1 z9 s: K; R# u6 i2 \6 [
y = zeros(2*N-1,1);6 g% l% q4 d8 h" M
y(1:2:2*N-1) = x;- T' j. @0 _7 j
xint = fconv(y(1:2*N-1), sinc([-(2*N-3)2*N-3)]'/2));
  f% S' |  a/ F4 p9 Gxint = xint(2*N-2:end-2*N+3);

%%%%%%%%%%%%%%%%%%%%%%%%%7 r- C! N+ `: C9 L$ y( S/ p! |
function z = fconv(x,y)
+ J8 Y  C, A+ r% convolution by fft

N = length([x(;y(])-1;- D6 ?3 k7 Z) y/ t# M
P = 2^nextpow2(N);2 x, Y! E+ w7 o$ P  m2 |6 T$ l6 R
z = ifft( fft(x,P) .* fft(y,P));
" l8 J5 b- m( Xz = z(1:N);

6 W2 C% s; ^9 v* x# G

5 y; }0 ]# n2 F$ T, f3 @3 k, Z, y
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-23 18:49 , Processed in 0.140625 second(s), 24 queries , Gzip On.

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

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

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