Matlab通信原理仿真
学号: 2142402 姓名: 圣斌
实验一 Matlab 基本语法与信号系统分析
一、 实验目的:
1、掌握MATLAB的基本绘图方法; 2、实现绘制复指数信号的时域波形。
二、 实验设备与软件环境:
1、实验设备:计算机
2、软件环境:MATLAB R2009a
三、 实验内容:
1、MATLAB为用户提供了结果可视化功能,只要在命令行窗口输入相应的命令,结果就会用图形直接表示出来。
MATLAB程序如下:
x = -pi::pi; y1 = sin(x); y2 = cos(x); figure(1); subplot(2,1,1); plot(x,y1); title('plot(x,y1)'); grid on; subplot(2,1,2) plot(x,y2); xlabel('time'),ylabel('y')
%准备绘图数据 %打开图形窗口
%确定第一幅图绘图窗口 %以x,y1绘图
%为第一幅图取名为’plot(x,y1)’ %为第一幅图绘制网格线 %确定第二幅图绘图窗口 %以x,y2绘图
%第二幅图横坐标为’time’,纵坐标为’y’
运行结果如下图:
plot(x,y1)10.50-0.5-1-410.50-0.5-1-4-3-2-101234y-3-2-10time1234
2、上例中的图形使用的是默认的颜色和线型,MATLAB中提供了多种颜色和线型,并且可以绘制出脉冲图、误差条形图等多种形式图:
MATLAB程序如下:
x=-pi:.1:pi; y1=sin (x); y2=cos (x); figure (1);
%subplot (2,1,1); plot (x,y1);
title ('plot (x,y1)'); grid on
%subplot (2,1,2); plot (x,y2); xlabel ('time'); ylabel ('y')
subplot(1,2,1),stem(x,y1,'r') subplot(1,2,2),stem(x,y1,'g')
%绘制红色的脉冲图
%绘制绿色的误差条形图
运行结果如下图:
110.80.80.60.60.40.40.20.200-0.2-0.2-0.4-0.4-0.6-0.6-0.8-0.8-1-4-3-2-101234-1-4-3-2-101234
3、一个复指数信号可以分解为实部和虚部两部分。实际通信信道并不能产生复指数信号,但可以用复指数信号描述其他基本信号,因此在通信系统分析和仿真中复指数信号起到十分重要的作用。 从严格意义上讲,计算机并不能处理连续信号。在MATLAB中,连续信号是用信号在等时间间隔点的采样值来近似表示的。当采样间隔足够小时,就可以比较好的近似连续信号。例如绘制复指数信号时域波形的MATLAB实现如下。
MATLAB程序如下:
function sigexp(a,s,w,t1,t2)
%本函数实现绘制复指数信号时域波形 %a:复指数信号幅度 %s:复指数信号频率实部 %w:复指数信号频率虚部 %t1,t2:绘制波形的时间范围 t=t1::t2; theta=s+j*w;
fc=a*exp(theta*t); real_fc=real(fc); imag_fc=imag(fc); mag_fc=abs(fc); phase_fc=angle(fc); subplot(2,2,1); plot(t,real_fc);
title('êμ2?');xlabel('t');
axis([t1,t2,-(max(mag_fc)+,max(mag_fc)+]); subplot(2,2,2) plot(t,imag_fc);
title('Dé2?');xlabel('t');
axis([t1,t2,-(max(mag_fc)+,max(mag_fc)+]); subplot(2,2,3) plot(t,mag_fc); title('?£');xlabel('t')
axis([t1,t2,0,max(mag_fc)+]); subplot(2,2,4); plot(t,phase_fc); title('?à??');xlabel('t');
axis([t1,t2,-(max(phase_fc)+,max(phase_fc)+]);
在命令行中输入sigexp(3,,5,0,5),得到下图: