⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 exn941.m

📁 这是matlab在电子信息课程中的应用
💻 M
字号:
%《MATLAB及其在理工课程中的应用指南》(十一五规划版)第九章例9-4-1程序
% 频谱分量合成时域波形的演示
% 西安电子科技大学出版社出版  陈怀琛编著 2007年5月
%(参考文献:张华容,“极形轨迹发生器”,机械科学与技术,20卷4期,2001年7月)
%
clear,close all,format compact
N=input('N(输入向量个数,限定N不大于4)=  ');
a=zeros(1,4);w=zeros(1,4);                      % 置所有向量初始幅度和频率为零
for i=1:N                                       % 给需要赋值的向量赋值
    i,a(i)=input('振幅a(i)= ');
    w(i)=input('角频率w(i)=');
end
% dt=input('dt=')
t=0:0.1:15;lt=length(t);
p=a'*ones(1,lt).*exp(j*w'*t);                   % 各频谱分量随时间变化的复数值
q=cumsum(p);                                    % 各频谱分量的累加值随时间变化的复数值
figure(1),l1=plot(0,q(1,1))	                % 画出第一向量的初值,建立其句柄
axis equal;axis([-2 2 -2 2]*1.5*abs(a(1)));hold on;grid on  % 规定坐标范围
set(l1,'erasemode','xor','LineWidth',3,'color','k')
l2=plot(q(1,1),q(2,1));     	                % 画出第二向量与第一向量叠加后的初值,建立其句柄
set(l2,'erasemode','xor','LineWidth',3,'color','b')
l3=plot(q(2,1),q(3,1));    	              % 画出第三向量与第一、二向量叠加后初值,建立其句柄
set(l3,'erasemode','xor','LineWidth',3,'color','m')
l4=plot(q(3,1),q(4,1));                   % 画出第四向量与第一、二、三向量叠加后初值,建立其句柄
set(l4,'erasemode','xor','LineWidth',3,'color','g')
% 不断给对象的数据参数xdata,ydata赋予新值
for ii = 1:length(t)
    set(l1,'xdata', [0,real(q(1,ii))],'ydata',[0,imag(q(1,ii))])        % 每次给四个向量句柄赋新值
    set(l2,'xdata', real([q(1,ii),q(2,ii)]),'ydata',imag([q(1,ii),q(2,ii)]))
    set(l3,'xdata', real([q(2,ii),q(3,ii)]),'ydata',imag([q(2,ii),q(3,ii)]))
    set(l4,'xdata', real([q(3,ii),q(4,ii)]),'ydata',imag([q(3,ii),q(4,ii)]))
    fft(rand(1,2^16));drawnow,shg           % 减慢速度,显示当前图形
end
plot(real(q(4,:)),imag(q(4,:))),v=axis,grid on           % 画出合成复信号的端点轨迹
hold off,pause,set(gcf,'color','w')
figure(2),
subplot(2,2,1),plot(real(q(4,:)),imag(q(4,:))),grid on
subplot(2,2,3),plot(real(q(4,:)),t),grid on     % 画出实信号的时间波形
subplot(2,2,2),plot(t,imag(q(4,:))),grid on     % 画出虚信号的时间波形
set(gcf,'color','w')
shg,pause,figure(3)
subplot(2,1,1),plot(t,real(q(4,:))),grid on     % 画出实信号的时间波形
subplot(2,1,2),plot(t,imag(q(4,:))),grid on     % 画出虚信号的时间波形
shg,set(gcf,'color','w')

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -