# FFT error 'not supported to carry out script fft as a function'

3 views (last 30 days)

Commented: 柊介 小山内 on 13 Dec 2022
I want to plot a graph as below. so I wrote a program using fft. but error message 'not supported to carry out script fft as a function' displayed. What should I do?
syms t f
T=5.0*10^(-10);
roll = 0.3;%roll-off β
A = pi*t/T;
x(t)= sin(A)/A*cos(roll*A)/(1-(2*roll*t/T)^2);
ht=matlabFunction(x(t));
y=fft(x(t));
X = f;
Y = y;
plot(X,Y);
formula of x(t),X(f) and graph I want to plot(green line) are shown as follows   Paul on 9 Dec 2022
Hi 柊介 小山内,
fourier can return a closed form expression with a little help.
syms t w f real
T = sym(5.0)*10^(-10);
roll = sym(0.3);%roll-off β
A = sym(pi)*t/T;
x(t) = sin(A)/A*cos(roll*A)/(1-(2*roll*t/T)^2);
rewrite x(t) in terms of expoentials before taking the Fourier transform.
X(w) = simplify(fourier(rewrite(x(t),'exp'),t,w))
X(w) = Convert to Thz
syms fThz
X(fThz) = X(2*sym(pi)*(fThz*1e12))
X(fThz) = The plot doesn't look like yours, actually it looks like one cycle of yours. However, I also don't see how the the plots you've posted for X(f) match the equation you've posted for X(f)
xfunc = matlabFunction(X(fThz)/T);
figure
plot(-0.01:.00001:0.01,abs(xfunc(-0.01:.00001:0.01))) sorry I can solve my problem. thank you for help me!

Walter Roberson on 8 Dec 2022
you named your file fft.m which makes it impossible to call the Mathworks fft function. You need to rename your fft.m
Walter Roberson on 9 Dec 2022
Edited: Walter Roberson on 9 Dec 2022
syms t f
T = sym(5.0)*10^(-10);
roll = sym(0.3);%roll-off β
A = sym(pi)*t/T;
x(t)= sin(A)/A*cos(roll*A)/(1-(2*roll*t/T)^2);
y(f)=fourier(x(t))
y(f) = char(x)
ans = '-(sin(2000000000*t*pi)*cos(600000000*t*pi))/(2000000000*t*pi*(1440000000000000000*t^2 - 1))'
Notice that the result has unevaluated calls to fourier(). That means that fourier() was unable to compute the fourier transform of that function.
I checked on Wolfram Alpha, which was able to come up with a transformation... but MATLAB is not able to do so.

### Categories

Find more on Calculus in Help Center and File Exchange

R2021a

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!