文档介绍:
计算机仿真技术实验指导书河南科技大学电子信息工程学院二〇一〇年五月计算机仿真技术实验指导书 MATLAB 是一种交互式的以矩阵为基本数据结构的系统。在生成矩阵对象时, 不要求明确的维数说明。所谓交互式,是指 MATLAB 的草稿纸编程环境。与C 语言或 FORTRON 语言作科学数值计算的程序设计相比较,利用 MATLAB 可节省大量的编程时间。本实验指导书主要讨论四个实验。实验一信号与系统的时域分析以及信号合成与分解 1.实验目的(1) 连续时间信号的向量表示法和符号运算表示法,典型离散信号表示; (2) 连续信号和离散信号的时域运算与时域变换; (3) 连续系统和离散系统的卷积,以及冲激响应、阶跃响应、单位响应、零状态响应; (4)周期信号的傅立叶级数分解与综合(以周期方波为例); 2.实验原理与方法(1) 信号在 MATLAB 中的表示方法 MATLA B用两种方法来表示连续信号,一种是用向量的方法来表示信号, 另一种则是符号运算的方法来表示信号。用适当的 MATLAB 语句表示出信号后,就可以利用 MATLAB 的绘图命令绘制出直观的信号时域波形。向量表示法表示信号的方法是: MATLAB 用一个向量表示连续信号的时间范围,另一个向量表示连续信号在该时间范围内的对应样值。如下列代码 p=0.001; t=-pi:p:pi; f=1+cos(t); plot(t,f) title('f(t)=1+cos(t)') xlabel('t') axis([-pi,pi,-0.2,2.4]) 执行后即可绘制连续信号 1+cos(t) 的时域波形。借助于符号运算以及符号绘图函数 ezplot ,也可以绘制连续信号时域波形。如下列代码 f=sym('1+cos(t)') % 定义符号表达式 ezplot(f,[-pi,pi]) % 绘制符号表达式波形 set(gcf,'color','w') % 设置当前图形背景颜色为白色执行后即可绘制连续信号 1+cos(t) 的时域波形。说明: gcf %获取当前图形窗口句柄与连续信号的表示相似,在 MATLAB 中, 离散信号也需要用两个向量来表示,其中一个向量表示离散信号的时间范围,另一个向量表示该离散信号在该时间范围内的对应样值。但与连续信号表示有所不同的是,表示离散信号时间范围向量的元素必须为整数。如下列代码 n=[-3,-2,-1,0,1,2,3]; x=[-3,2,-1,3,1,-2,1]; stem(n,x,'filled') set(gcf,'color','w') title('x(n)') xlabel('n') 执行后即可绘制离散信号 x(n)={ -3,2,-1,3,1,-2,1 }的时域波形。↑n=0 (2) 连续信号和离散信号的时域运算与时域变换对连续信号而言,其基本时域变换有反褶、平移、尺度变换、倒相。利用 MATLAB 的符号运算功能以及符号绘图函数 ezplot ,可以直观的观察和分析连续信号的时域运算与时域变换。如下列代码 syms t; f=sym('(t+1)*(heaviside(t+1)-heaviside(t))'); f=f+sym('(heaviside(t)-heaviside(t-1))'); % 定义信号符号表达式 ezplot(f,[-3,3]) % 绘制信号波形 axis([-3,3,-1.2,1.2]) set(gcf,'color','w') title('f(t)') pause f1=subs(f,t,t+1.5); % 变量替换 ezplot(f1,[-3,3]) % 绘制 f(t+1.5) 波形 title('f(t+1.5)') pause f2=subs(f,t,t-1.5); ezplot(f2,[-3,3]) % 绘制 f(t-1.5) 波形 title('f(t-1.5)') pause f3=subs(f,t,-t); ezplot(f3,[-3,3]) % 绘制 f(-t) 波形 title('f(-t)') pause f4=-f; ezplot(f4,[-3,3]) % 绘制-f(t) 波形 title('-f(t)') pause f5=subs(f,t,(1/2)*t); ezplot(f5,[-3,3]) % 绘制 f(0.5t) 波形 title('f(0.5t)') 执行后即可实现连续信号的四种基本时域变换。说明:pause 命令用来使程序运行暂停,等待用户按任意键继续;用于程序调试或查看中间结果,也可以用来控制动画执行的速度。对离散信号而言,其基本时域变换有反褶、平移、倒相。其基本原理同连续信号时域变换。(3) 连续系统和离散系统的卷积,以及冲激响应、阶跃响应、单位响应、零状态响应卷积积分是连续
内容来自淘豆网www.taodocs.com转载请标明出处.