帮忙看看matlab程序有错吗?

来源:百度知道 编辑:UC知道 时间:2024/06/16 13:51:50
帮忙看看matlab程序有错吗?主要是fft的用法这样编程对吗?应用fft计算这种非周期激励的暂态响应计算程序的编写有什么需要注意?以下是matlab程序:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 用途:RC串联电路“fft法”得到电容电压响应。零状态响应。
clear;clc;
%~~~~~~~~~~~~~~定义电源~~~~~~~~~~~~~~~~~~~~~~~~~~~
T=0.5;
t0=0;
t1=0.1;
N=501;
t=linspace(0,T,N);
dt=t(2)-t(1);
w1=2*pi/T;
Em=1; % 激励的幅值
%~~~~~~~~
R=1;C=9e-2; % 电路为RC串联电路
RC=R*C;
%~~~~~~~~
pp=0;
for tt=0:dt:T
pp=pp+1;
%~~~~~~阶跃激励~~~~~~~~~~
% if tt>=t0 & tt<=t1
% u3(pp)= Em;
% else
% u3(pp)=0;
% end
%~~~~~~指数激励~~~~~~~~~~
u3(pp)=exp(-10*tt);
end
% plot(t,u3);
%~~~~~电源定义完成~~~~~~~~~~~
U3=fft(u3);
k=0:1:length(t)-1;
for n=1:fix(length(t)/2)+1
Uc3(n)=U3(n)/(j*k(n)*w1*R*C+1); %电容上的电压
end
pp=0;
for n=length(t):-1:fix(length(t)/2)+2
Uc3(n)=(Uc3(2+pp))';
pp=pp+1;
end
uc3=r

R2009a下面运行没有错误。