matlab变量无法识别


function [f,sf] = T2F(t,st)
dt=t(2)-t(1);
T=t(end);
df=1/T;
N=length(st);

f=-N/2*df:df:N/2*df-df;
sf=fft(st);
sf=T/N*fftshift(sf);

function[t,st]=F2T(f,sf)
df=f(2)-f(1);
Fmx=(f(end)-f(1)+df);
dt=1/Fmx;
N=length(sf);
T=dt*N;

t=0:dt:T-dt;

sff=ifftshift(sf);
st = Fmx*ifft(sff);

clear all;close all;
T=1;
N_sample=128;
dt=T/N_sample;

t=0:dt:T-dt;
st=[ones(1,N_sample/2),-ones(1,N_sample/2)];
subplot(211);
plot(t,st);
axis([0 1 -2 2]);
xlabel('t'); ylabel('s(t)');
subplot(212);
[f,sf]=T2F(t,st);
plot(f,abs(sf));hold on;
axis([-10 10 0 1]);
xlable('f');ylabel('|S(f)|');
sff=T^2*j*pi*f*0.5.*exp(-j*2*pi*f*T).*sinc(f*T*0.5).*sinc(f*T*0.5);
plot(f,abs(sff),'r-')

T2F(t, st)
函数或变量 'st' 无法识别。