信号与系统课设

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、

1.正弦信号

A = input('input A=') ;% 给正弦信号的幅度A赋值

w = input('input w=') ; % 给正弦信号的频率w赋值

theta =input('input theta='); % 给正弦信号的初始相位theta 赋值disp(['这个信号是周期信号'])

T=2*pi/w

t = 0 : 0.01 : 3*T ; % 定义时间点

ft = A * sin( w * t + theta ) ; % th计算函数值

plot( t ,ft ) ; % 画图

title( '正弦信号' ) ; % 为图像加标题注释

grid on ; % 在图上画方格

2.复指数信号

j00 = sqrt( - 1 ) ; % 定义复数j

a = input('input a='); % 复指数信号赋值w = input('input w=');

K = input('input K=');

if a==0

disp('这是一个周期信号')

T=2*pi/w

else if a>0

disp('这不是一个周期信号')

else

disp('这不是一个周期信号')

end

end

t = -1.5*abs(a) : 0.01 : 1.5*abs(a) % 定义时间点

ft = K*exp( ( a + j00 * w ) * t ) ;

subplot( 2 , 2 , 1 ) ; plot( t , real( ft ) ) ; title( '实部' ) ; %画图subplot( 2 , 2 , 2 ) ; plot( t , imag( ft ) ) ; title( '虚部' ) ;

subplot( 2 , 2 , 3 ) ; plot( t , abs( ft ) ) ; title( '模' ) ;

subplot( 2 , 2 , 4 ) ; plot( t , angle( ft ) ) ; title( '相角' ) ;

3.实指数信号

A = input('input A=') % 给指数信号中的A赋值

a = input('input a=') % 给指数信号中的a赋值

t = 0 : 0.01 : 10 ; % 定义时间点

ft = A * exp( a * t ) ; % 计算函数值

plot( t , ft ) ; % 以时间为横轴,函数值为纵轴画图title( '实指数信号' ) ; % 为图像加标题注释

grid on ; % 在图上画方格

三、信号的频谱图

w = 0 : 0.025 : 5 ;

b = input('请依次输入bn,bn-1...b0:');

a = input('请依次输入am,am-1...a0:');

H = freqs( b , a , w ) ;

subplot( 2 , 1 , 1 ) ;

plot( w , abs( H ) ) ;

grid on ;

xlabel( '\omega (rad/s)' ) ; ylabel( '|H(j\omega)|' ) ;

title( 'H(j\omega)的幅频特性' ) ; subplot( 2 , 1 , 2 ) ;

plot( w , angle( H ) ) ;

grid on ;

xlabel( '\omega (rad/s)' ) ; ylabel( '\phi(\omega)' ) ;

title( 'H(j\omega)的相频特性' ) ;

四、连续时间信号卷积

dt=0.01;t = - 1 : 0.01 : 4 ;

f1 =input('input f1=');

f2 =input('input f2=');

f = conv( f1 , f2 ) ; % 卷积n = length( f ) ;

tt = ( 0 : n - 1 ) * 0.01-2 ; subplot( 3 , 1 , 1 ) ;

plot( t , f1 ) ;

title( 'f1(t)' ) ;

subplot( 3 , 1 , 2 ) ;

plot( t , f2 ) ;

title( 'f2(t)' ) ;

subplot( 3 , 1 , 3 ) ;

plot( tt , f ) ;

title( 'f1(t)*f2(t)' ) ;

离散时间信号卷积

nx=-1:5;

nh=-2:10;

x=input('input f1=');

h=input('input f2=');

y=conv(x,h);

ny1=nx(1)+nh(1);

ny=ny1+(0:(length(nx)+length(nh)-2)); subplot(311)

stem(nx,x,'fill'),grid on

axis([-4 16 0 3])

xlabel('n'),title('x(n)')

subplot(312)

stem(nh,h,'fill'),grid on

xlabel('n'),title('h(n)')

axis([-4 16 0 3])

subplot(313)

stem(ny,y,'fill'),grid on

xlabel('n'),title('y(n)=x(n)*h(n)') axis([-4 16 0 3])

相关文档
最新文档