当前位置:文档之家› 基于MATLAB的数字通信系统仿真设计

基于MATLAB的数字通信系统仿真设计

基于MATLAB的数字通信系统仿真设计
基于MATLAB的数字通信系统仿真设计

基于M A T L A B的数字通信系统仿真设计

The Standardization Office was revised on the afternoon of December 13, 2020

安康学院

学年论文﹙设计﹚

题目基于MATLAB的数字通信系统仿真设计

学生姓名学号

所在院(系)

专业班级

指导教师

2013 年 6 月 23 日

基于MATLAB的模拟通信系统仿真设计

(作者:张小文)

(安康学院电子与信息工程系电子信息工程专业10级,陕西安康 725000)

指导教师:朱燕

【摘要】通信是通过某种媒体进行的信息传递,目的是传输信息,通信系统是用以完成信息传输过程的技术系统的总称,作用是将信息从信源发送到一个或多个目的地。调制与解调在信息的传输过程中占据着重要的地位,是不可或缺的,因此研究系统的调制和解调过程就极为重要。MATLAB是集数值计算、图形绘制、图像处理及系统仿真等强大功能于一体的科学计算语言,它强大的矩阵运算和图形可视化的功能以及丰富的工具箱,为通信系统的调制和解调过程的分析提供了极大的方便。

本论文首先介绍了通信系统的概念,进而引出调制和解调,然后介绍了我们常用的几种调制和解调的方法。由于MATLAB具有的强大功能所以详细介绍了MATLAB通信系统工具箱,并给出了基于MATLAB的通信系统的调制与解调的实现,运用MATLAB仿真软件进行仿真。

【关键词】通信系统;调制与解调; MATLAB;2FSK;2ASK;2PSK;2DPSK

Digital Communication System Simulation Based On

MATLAB

Author: Zhang Xiaowen

(Grade10,Class2, Electronic and Information Engineering ,Department of electronics and Information Engineering .,Ankang University,Ankang 725000,Shaanxi)

Tutor: Zhu Yan

Abstract:Communication is through a media for https://www.doczj.com/doc/513381203.html,munication system which is used to complete the process of information transmission systems ,in general, is to send the information from the source to one or more destinations.

Modulation and demodulation occupied an important position in the transmission of information which is essential, so the research about the modulation and demodulation process in the communication system is extremely important.MATLAB is a numerical computation, graphics rendering, image processing and system simulation and other powerful features in one of the scientific computing language, it is a powerful matrix calculation and graphical visualization features and a rich toolbox provides a great convenience for the communication system of modulation and demodulation process.

This paper introduces the concept of the communication system, and then leads to modulation and demodulation, and then introduced several of our commonly used method of modulation and demodulation.As the power of MATLAB so we introduced the communication system toolbox in the MATLAB. We gives several examples about the communication system based on MATLAB modulation and demodulation and use the software of MATLAB to simulate them.

Key words:Communication Systems;Modulation and demodulation; MATLAB;2FSK;2ASK;2PSK;

2DPSK

0 引言

通信按照传统的理解就是信息的传输,在当今高度信息化得社会,信息和通信已经成为现代社会的“命脉”。信息作为一种资源,只有通过广泛的传播与交流,才能产生利用价值,促进社会成员

之间的合作,推动社会生产力的发展,创造出巨大的经济效益。而通信作为传输信息的手段或方式,与传感技术、计算机技术相互融合,已经成为21世纪国际社会和世界经济发展的强大推动力,所以未来的通信对人们的生活方式和社会的发展将会产生更加重大和意义深远的影响。

在信息传输过程中,要求天线的尺寸要和信号的波长相比拟,信号才能有效的被辐射。对于语音信号来说,相应的天线尺寸要在几十公里以上,实际上不可能实现,所以需要经过调制将信号频谱搬移到较高的频率范围,如果不进行调制就把信号直接辐射出去,那么各电台所发出信号的频率就会相同。调制作用的实质就是使相同频率范围的信号分别依托于不同频率的载波上,接收机就可以分离出所需的频率信号,不致互相干扰。

有时信号过于复杂,人工计算其调制和解调过程较难实现,对其结果的分析又缺乏可视化的直观表现,影响了所得结果在实际生活中的应用,美国MathWorks公司开发的MATLAB解决了这一问题。它应用于自动控制、数学计算、信号分析、信号处理等诸多领域,也是国内高校和研究部门进行许多科学研究的重要工具。MATLAB的出现给通信系统的分析提供了极大的方便。

1 MATLAB简介

美国Mathworks公司于1967年推出了矩阵实验室“Matrix Laboratory”(缩写为Matlab)这就是Matlab最早的雏形。开发的最早的目的是帮助学校的老师和学生更好的授课和学习。Matlab是一种解释性执行语言,具有强大的计算、仿真、绘图等功能。Simulink是MATLAB中的一种可视化仿真工具,也是目前在动态系统的建模和仿真等方面应用最广泛的工具之一。确切的说,Simulink是一个用来对动态系统进行建模、仿真和分析的软件包,它支持线性和非线性系统,连续、离散时间模型,或者是两者的混合。系统还可以使多种采样频率的系统,而且系统可以是多进程的。在Simulink环境中,它为用户提供了方框图进行建模的图形接口,采用这种结构画模型图就如同用手在纸上画模型一样自如、方便,故用户只需进行简单的点击和拖动就能完成建模,并可直接进行系统的仿真,快速的得到仿真结果。但是Simulink不能脱离MATLAB而独立工作。

Matlab将高性能的数值计算和可视化集成在一起,并提供了大量的内置函数,从而被广泛地应用于科学计算、控制系统、信息处理等领域的分析、仿真和设计工作,而且利用Matlab产品的开放式结构,可以非常容易地对Matlab的功能进行扩充,从而在不断深化对问题认识的同时,不断完善Matlab产品以提高产品自身的竞争能力。

利用M 语言还开发了相应的Matlab 专业工具箱函数供用户直接使用。这些工具箱应用的算法是开放的可扩展的,用户不仅可以查看其中的算法,还可以针对一些算法进行修改,甚至允许开发自己的算法扩充工具箱的功能。目前Matlab 产品的工具箱有四十多个,分别涵盖了数据获取、科学计算、控制系统设计与分析、数字信号处理、数字图像处理、金融财务分析以及生物遗传工程等专业领域。

2 二进制数字调制系统的原理及实现

数字通信系统, 按调制方式可以分为基带传输和带通传输。数字基带信号的功率一般处于从零开始到某一频率(如0~6M )低频段,因而在很多实际的通信(如无线信道)中就不能直接进行传输,需要借助载波调制进行频谱搬移,将数字基带信号变换成适合信道传输的数字频带信号进行传输,这种传输方式,称为数字信号的频带传输或调制传输、载波传输。所谓调制,是用基带信号对载波波形的某参量进行控制,使该参量随基带信号的规律变化从而携带消息。对数字信号进行调制可以便于信号的传输;实现信道复用;改变信号占据的带宽;改善系统的性能。

数字基带通信系统中四种基本的调制方式分别称为振幅键控(ASK ,Amplitude-Shift keying )、移频键控( FSK ,Frequency-Shift keying )、移相键控(PSK ,Phase-Shift keying )和差分移相键(DPSK ,Different Phase-Shift keying )。本次课程设计对这四种调制方式进行了仿真。

二进制振幅键控

采用的流程图如图2-1所示:

c ()

s t c

图 2-1 2ASK 调制解调框图

ASK 调制原理

2ASK 二进制振幅调制就是用二进制数字基带信号控制正弦载波的幅度,使载波振幅随着二进制数字基带信号而变化,而其频率和初始相位保持不变。信息比特是通过载波的幅度来传递的。其信号表达式为:0()()cos c e t S t t ω=?,S(t)为单极性数字基带信号。由于调制信号只有0或1两个电平,相乘的结果相当于将载频或者关断,或者接通,它的实际意义是当调制的数字信号“1”时,传输载波;当调制的数字信号为“0”时,不传输载波。2ASK 信号的时间波形e2ASK(t)随二进制基带信号S(t)通断变化。所以又被称为通断键控信号。典型波形如图2-2所示。

图 2-2 典型2ASK波形

e2ASK(t)为已调信号,它的幅度受s(t)控制,也就是说它的幅度上携带有s(t)的信息。2ASK信号的产生方法通常有两种:模拟调制法(相乘器法)和键控法。模拟调制法就是用基带信号与载波相乘,进而把基带信号调制到载波上进行传输。键控法由s(t)来控制电路的开关进而进行调制。两种方法的调制如图2-3和图2-4所示。

图 2-3 模拟调制法(相乘器法)

图 2-4 键控法

ASK解调原理

2ASK有两种基本解调方法:相干解调法(同步检测法)和非相干解调法(包络检波法)。相干解调需要将载频位置的已调信号频谱重新搬回原始基带位置,因此用相乘器与载波相乘来实

现。相乘后的信号只要滤除高频部分就可以了。为确保无失真还原信号,必须在接收端提供一个与调制载波严格同步的本地载波,这是整个解调过程能否顺利完好进行的关键。本次设计采用相干解调法。两种解调原理图如图2-5和图2-6所示。

图 2-5 相干解调法(同步检测法)

图 2-6 非相干解调法(包络检波法)

仿真结果及分析

通过编写M文件程序(见附录),产生随机信号,按图2-1顺序对每一模块编程后。程序中注有需注意语句及解释。运行程序,实现2ASK的调制与解调过程。本次设计采用模拟调制法(相乘器法)和相干解调法。仿真后调制过程及解调过程的图形分别如图2-7和图2-8所示。

图 2-7 2ASK

调制过程仿

真图

图 2-8 2ASK 解调过程仿真图

由图可以看出,产生的数字随机信号为“01”,经载波调制后信号为“1”的时间内有正弦波形,信号为“0”的时间内无波形。经过加随机噪声,相干解调后,恢复出原始信号,与基带信号一致,因此达到本次设计目的。

二进制移频键控 所用流程图如图 2-9所示:

图 2-9 2FSK 调制解调框图 FSK 调制原理

一个FSK 信号可以看成是两个不同载波的2ASK 信号的叠加。其解调和解调方法和FSK 差不多。2FSK 信号的频谱可以看成是f1和f2的两个2ASK 频谱的组合。

频移键控是利用载波的频率来传递数字信号,在2FSK 中,载波的频率随着二进制基带信号在f1和f2两个频率点间变化,频移键控是利用载波的频移变化来传递数字信息的。在2FSK 中,载波的频率随基带信号在f1和f2两个频率点间变化。故其表达式为:

122cos()

()cos()n FSK n A t e t A t ωφωθ+?=?+?

键控法FSK 发生器

乘法器

低通滤波器抽样判决器

c ω()

s t

典型波形如图 2-10所示:

图 2-10 2FSK 典型波形图

2FSK 的调制方式有两种,即模拟调频法和键控法。本次设计采用键控法。键控法中可以用二进制“1”来对应于载频f1,而“0”用来对应于另一频率f2,而这个可以用受矩形脉冲序列控制的开关电路对两个不同的独立的频率源f1、f2进行选择通。键控法原理图如图2-11示

图 2-

11 2FSK 键控法原

理图

FSK 解调原理

2FSK 的解调方式有两种:相干解调方式和非相干解调方式。

非相干解调是经过调制后的2FSK 数字信号通过两个频率不同的带通滤波器f1、f2滤出不需要的信号,然后再将这两种经过滤波的信号分别通过包络检波器检波,最后将两种信号同时输入到抽样判决器同时外加抽样脉冲,最后解调出来的信号就是调制前的输入信号。其原理图如图2-12所示。

1

1

1

1

t

ak

s 1(t)

cos (w1t+θn ) s 2(t) s 1(t) co s(w1t +θn )cos (w2t+φn) s 2(t) cos (w2t+φn)

2FSK 信号

t

t

t

t

t

t

载波 f1

载波 f2

二进制数据

2FS K 输出信号

2FS K 的调制原理图

图 2-12 2FSK 非相干解调原理图

相干解调是根据已调信号由两个载波f1、f2调制而成,则先用两个分别对f1、f2带通的滤波器

对已调信号进行滤波,然后再分别将滤波后的信号与相应的载波f1、f2相乘进行相干解调,再分别低通滤波、用抽样信号进行抽样判决器即可。原理图如图3-14所示。

图 2-13 2FSK 相干解调原理图

仿真结果及分析

通过编写M 文件程序(见附录),产生随机信号,按流程图顺序对每一模块编程后。程序中注有需注意语句及解

释。运行程

序,实现2FSK 的调制与解调过程。本次设计中采用键控法调制法和相

解调法。

仿真后调

输入

带通滤波器 F1

包络检波器带通滤波器 F2包络检波器

抽样脉冲

抽样判决器

非相干方式原理图

输出

输入

带通滤波器 F1

带通滤波器 F2

cos2π f1t

相乘器

低通滤波器

低通滤波器

抽样脉冲

抽样判决器

输出

cos2π f2t

相乘器

相干方式原理图

制过程及解调过程的图形分别如图2-14、图2-15和图2-16所示。

由图可以看出,产生的随机信号为“01”,经过反相产生反码,并分别与两个载波相乘,经过加入随机噪声后波形如图2-15所示。在解调时,分别与对应的载波相乘。解调出基带信号,可以看出实现了本次设计目的。

图 2-14 2FSK键控法调制过程仿真图

图 2-15 2FSK键控法调制过程仿真图

图 2-16 2FSK 相干解调

过程仿真图

二进制相移键控

所用流程图如图2-17所示:

乘法器

+低通

滤波器抽样判决器

+

cos c t

ω()s t 乘法器

cos c t

ω

图 2-17 2PSK 调制解调框图

PSK 调制原理

在二进制数字调制中,当正弦载波的相位随二进制数字基带信号离散变化时,则产生二进制移相键控(2PSK)信号。2PSK 信号调制有两种方法,即模拟调制法和键控法。通常用已调信号载波的 0°和 180°分别表示二进制数字基带信号的 1 和 0,模拟调制法用两个反相的载波信号进行调制。2PSK 以载波的相位变化作为参考基准的,当基带信号为0时相位相对于初始相位为0°,当基带信号为1时相对于初始相位为180°。

键控法,是用载波的相位来携带二进制信息的调制方式。通常用0°和180°来分别代表0和1。其时域表达式为:

t nT t g a e c n s n PSK ωcos )(2??

?

???-=∑

其中,2PSK 的调制中an 必须为双极性码。本次设计中采用模拟调制法。两种方法原理图分别如图2-18和图2-19所示。

图 2-18 模拟调制法原理图

图 2-19 键控法原理图 PSK 解调

原理

由于2PSK 的幅度是恒定的,必须

进行相干解调。

经过带通滤波的信号在相乘器中与本地载波相乘,然后用低通滤波器滤除高频分量,在进行抽样判决。判决器是按极性来判决的。即正抽样值判为1,负抽样值判为0。2PSK 信号的相干解调原理图如图2-20所示,各点的波形如图2-21所示。

由于2PSK 信号的载波回复过程中存在着180°的相位模糊,即恢复的本地载波与所需相干载波可能相同,也可能相反,这种相位关系的不确定性将会造成解调出的数字基带信号与发送的基带信号正好相反,即“1”变成“0”吗“0”变成“1”,判决器输出数字信号全部出错。这种现象称为2PSK 方式的“倒π”现象或“反相工作”。但在本次仿真中是直接给其同频同相的载波信号,所以不存在此问题。

图 2-

20 2PSK 的相干解调原理图

带通滤波器

相乘器

低通滤波器

抽样判决器定时脉冲

输出

)

(2t e PSK t

c cos a

b

c

d

e

图 2-21 相干解调中各点波形图

仿真结果及分析

通过编写M 文件程序(见附录),产生随机信号,按流程图2-17所示顺序对每一模块编程后。

程序中注有需注意语句及解释。运行程序,实现2PSK 的调制与解调过程。本次设计采用模拟调制法和相干解调法。仿真后调制过程及解调过程的图形分别如图2-22和图2-23示。

图 2-22 2PSK 模拟调制方法过程仿真图

1

010s

T t

a

b

c

d 1

t

t

t

t

e 1

1100

图 2-23 2PSK 相干解调过程仿真图

由图可以看出,产生的随机信号为“00”,经过反相产生反码,并将原码跟反码一起合成双极性码,与载波相乘后加入随机噪声。在解调时,与对应的载波相乘经过低通滤波、抽样判决后,解调出基带信号与原基带信号一致,可以看出实现了本次设计目的。

二进制差分相移键控

所用流程图如图2-24所示:

乘法器

+低通

滤波器抽样判决器

+

cos c t

ω()

s t 乘法器

cos c t

ω绝相变换

图2-24 2DPSK 调制解调框图

DPSK 调制原理

二进制差分相移键控。2DPSK 方式是用前后相邻码元的载波相对相位变化来表示数字信息。假设前后相邻码元的载波相位差为??,可定义一种数字信息与??之间的关系为:

00?π??=??

(数字信息“”)(数字信息“1?)

?为前一码元的相位。

实现二进制差分相移键控的最常用的方法是:先对二进制数字基带信号进行差分编码,然后对变换出的差分码进行绝对调相即可。2DPSK调制原理图如图2-25所示。

图 2-25 2DPSK调制原理框图

DPSK解调原理

2DPSK信号解调有相干解调方式和差分相干解调。用差分相干解调这种方法解调时不需要恢复本地载波,只要将DPSK信号精确地延迟一个码元时间间隔,然后与DPSK信号相乘,相乘的结果就反映了前后码元的相对相位关系,经低通滤波后直接抽样判决即可恢复出原始的数字信息,而不需要在进行差分解码。

相干解调码变换法及相干解调法的解调原理是,先对2DPSK信号进行相干解调,恢复出相对码,再通过码反变换器变换为绝对码,从而恢复出发送的二进制数字信息。

在解调过程中,若相干载波产生180 相位模糊,解调出的相对码将产生倒置现象,但是经过码反变换器后,输出的绝对码不会发生任何倒置现象,从而解决了载波相位模糊的问题。本次设计采用相干解调。两种解调方式的原理图如图2-26和图2-27所示。

图 2-26 2DPSK差分相干解调原理图

图 2-27 2DPSK相干解调原理图

2DPSK相干解调各点波形图如图 2-28所示。

图 2-28 2DPSK相干解调各点波形图

仿真结果及分析

通过编写M文件程序(见附录),产生随机信号,按流程图2-24所示顺序对每一模块编程后。程序中注有需注意语句及解释。本次设计采用相干解调法。运行程序,实现2DPSK的调制与解调过程。仿真后调制过程及解调过程的图形分别如图2-29、图2-30和图2-31所示。由图可以看出,产生的绝对随机码为“00”,经码差分变化产生相对码,经反相产生相对码反码,分别与两个载波相乘后加入随机噪声。在解调时,分别与对应的载波相乘经过低通滤波、抽样判决后,解调出基带信号与原基带信号一致,可以看出实现了本次设计目的。

图 2-29 2DPSK调制过程仿真图

Matlab通信系统仿真实验报告

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); %以x,y1绘图 title('plot(x,y1)'); %为第一幅图取名为’plot(x,y1)’ grid on; %为第一幅图绘制网格线 subplot(2,1,2) %确定第二幅图绘图窗口 plot(x,y2); %以x,y2绘图 xlabel('time'),ylabel('y') %第二幅图横坐标为’time’,纵坐标为’y’运行结果如下图: 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);

基于MATLAB的MIMO通信系统仿真(DOC)

目录 (一)基于MATLAB的MIMO通信系统仿真………………………… 一、基本原理……………………………………………………… 二、仿真…………………………………………………………… 三、仿真结果……………………………………………………… 四、仿真结果分析…………………………………………………(二)自选习题部分…………………………………………………(三)总结与体会……………………………………………………(四)参考文献…………………………………………………… 实训报告 (一)基于MATLAB的MIMO通信系统仿真 一、基本原理 二、仿真 三、仿真结果 四、仿真结果分析 OFDM技术通过将频率选择性多径衰落信道在频域内转换为平坦信道,减小了多径衰落的影响。OFDM技术如果要提高传输速率,则要增加带宽、发送功率、子载波数目,这对于频谱资源紧张的无线通信时不现实的。 MIMO能够在空间中产生独立并行信道同时传输多路数据流,即传输速率很高。这些增加的信道容量可以用来提高信息传输速率,也可以通过增加信息冗余来提高通信系统的传输可靠性。但是MIMO却不能够克服频率选择性深衰落。 所以OFDM和MIMO这一对互补的技术自然走到了一起,现在是3G,未来也是4G,以及新一代WLAN技术的核心。总之,是核心物理层技术之一。 1、MIMO系统理论:

核心思想:时间上空时信号处理同空间上分集结合。 时间上空时通过在发送端采用空时码实现: 空时分组、空时格码,分层空时码。 空间上分集通过增加空间上天线分布实现。此举可以把原来对用户来说是有害的无线电波多径传播转变为对用户有利。 2、MIMO 系统模型: 11h 12 h 21 h 22 h r n h 1r n h 21 R n h 2 R n h 1 n n R h 可以看到,MIMO 模型中有一个空时编码器,有多根天线,其系统模型和上述MIMO 系统理论一致。为什么说nt>nr ,因为一般来说,移动终端所支持的天线数目总是比基站端要少。 接收矢量为:y Hx n =+,即接收信号为信道衰落系数X 发射信号+接收端噪声 3、MIMO 系统容量分析: (附MIMO 系统容量分析程序) 香农公式的信道容量(即信息传送速率)为: 2log (1/)C B S N =+ 4、在MIMO 中计算信道容量分两种情况: 未知CSI 和已知CSI (CSI 即为信道状态信息),其公式推导较为复杂,推导结果为信道容量是信噪比与接收、发射天线的函数。 在推导已知CSI 中,常用的有waterfilling ,即著名的注水原理。但是,根据相关文献资料,通常情况下CSI 可以当做已知,因为发送,接收端会根据具体信道情况估算CSI 的相关参数。 在这里对注水原理做一个简单介绍:之所以成为注水原理是因为理想的注水原理是在噪声大的时候少分配功率,噪声小时多分配功率,最后噪声+功率=定值,这如果用图形来表示,则类似于给水池注水的时候,水池低的地方就多注水,也就是噪声小分配的功率就多,故称这种达到容量的功率分配方式叫做注水原理。通过给各个天线分配不同的发射功率,增加系统容量。核心思想就是上面所阐述的,信道条件好,则分配更多功率;信道条件差,则分配较少的功率。 在MIMO 的信道容量当中要注意几个问题:(下面说已知CSI 都是加入了估计CSI 的算法,并且采用了注水原理。) 1. 已知CSI 的情况下的信道容量要比发送端未知CSI 的情况下的信道容量高,这是 由于当发送端已知CSI 的时候,发送端可以优化发送信号的协方差矩阵。也就是

机械优化设计MATLAB程序文件

机械优化设计作业1.用二次插值法求函数()()()22 ?极小值,精度e=0.01。 t t =t 1- + 在MATLAB的M文件编辑器中编写的M文件,如下: f=inline('(t+1)*(t-2)^2','t') a=0;b=3;epsilon=0.01; t1=a;f1=f(t1); t3=b;f3=f(t3); t2=0.5*(t1+t3);f2=f(t2); c1=(f3-f1)/(t3-t1); c2=((f2-f1)/(t2-t1)-c1)/(t2-t3); t4=0.5*(t1+t3-c1/c2);f4=f(t4); k=0; while(abs(t4-t2)>=epsilon) if t2f4 f1=f2;t1=t2; t2=t4;f2=f4; else f3=f4;t3=t4; end else if f2>f4 f3=f2;t3=t2; t2=t4;f2=f4; else f1=f4;t2=t4; end end c1=(f3-f1)/(t3-t1); c2=((f2-f1)/(t2-t1)-c1)/(t2-t3); t4=0.5*(t1+t3-c1/c2);f4=f(t4); k=k+1; end %输出最优解 if f2>f4 t=t4;f=f(t4); else t=t2;f=f(t2); end fprintf(1,'迭代计算k=%3.0f\n',k) fprintf(1,'极小点坐标t=%3.0f\n',t) fprintf(1,'函数值f=%3.4f\n',f)

运行结果如下: 迭代计算k= 7 极小点坐标t= 2 函数值f=0.0001 2.用黄金分割法求函数()32321+-=t t t ?的极小值,精度e=0.01。 在MATLAB 的M 文件编辑器中编写的M 文件,如下: f=inline('t^(2/3)-(t^2+1)^(1/3)','t'); a=0;b=3;epsilon=0.01; t1=b-0.618*(b-a);f1=f(t1); t2=a+0.618*(b-a);f2=f(t2); k=1; while abs(b-a)>=epsilon if f1

matlab通信仿真常用函数

信源函数 randerr 产生比特误差样本 randint 产生均匀分布的随机整数矩阵 randsrc 根据给定的数字表产生随机矩阵 wgn 产生高斯白噪声 信号分析函数 biterr 计算比特误差数和比特误差率 eyediagram 绘制眼图 scatterplot 绘制分布图 symerr 计算符号误差数和符号误差率 信源编码 compand mu律/A律压缩/扩张 dpcmdeco DPCM(差分脉冲编码调制)解码dpcmenco DPCM编码 dpcmopt 优化DPCM参数 lloyds Lloyd法则优化量化器参数 quantiz 给出量化后的级和输出值 误差控制编码 bchpoly 给出二进制BCH码的性能参数和产生多项式convenc 产生卷积码 cyclgen 产生循环码的奇偶校验阵和生成矩阵cyclpoly 产生循环码的生成多项式 decode 分组码解码器 encode 分组码编码器 gen2par 将奇偶校验阵和生成矩阵互相转换gfweight 计算线性分组码的最小距离 hammgen 产生汉明码的奇偶校验阵和生成矩阵rsdecof 对Reed-Solomon编码的ASCII文件解码rsencof 用Reed-Solomon码对ASCII文件编码rspoly 给出Reed-Solomon码的生成多项式

syndtable 产生伴随解码表 vitdec 用Viterbi法则解卷积码 (误差控制编码的低级函数) bchdeco BCH解码器 bchenco BCH编码器 rsdeco Reed-Solomon解码器 rsdecode 用指数形式进行Reed-Solomon解码 rsenco Reed-Solomon编码器 rsencode 用指数形式进行Reed-Solomon编码 调制与解调 ademod 模拟通带解调器 ademodce 模拟基带解调器 amod 模拟通带调制器 amodce 模拟基带调制器 apkconst 绘制圆形的复合ASK-PSK星座图 ddemod 数字通带解调器 ddemodce 数字基带解调器 demodmap 解调后的模拟信号星座图反映射到数字信号dmod 数字通带调制器 dmodce 数字基带调制器 modmap 把数字信号映射到模拟信号星座图(以供调制)qaskdeco 从方形的QASK星座图反映射到数字信号qaskenco 把数字信号映射到方形的QASK星座图 专用滤波器 hank2sys 把一个Hankel矩阵转换成一个线性系统模型hilbiir 设计一个希尔伯特变换IIR滤波器 rcosflt 升余弦滤波器 rcosine 设计一个升余弦滤波器 (专用滤波器的低级函数) rcosfir 设计一个升余弦FIR滤波器 rcosiir 设计一个升余弦IIR滤波器 信道函数

matlab程序设计实践-牛顿法解非线性方程

中南大学MATLAB程序设计实践学长有爱奉献,下载填上信息即可上交,没有下载券的自行百度。所需m文件照本文档做即可,即新建(FILE)→脚本(NEW-Sscript)→复制本文档代码→运行(会跳出保存界面,文件名默认不要修改,保存)→结果。第一题需要把数据文本文档和m文件放在一起。全部测试无误,放心使用。本文档针对做牛顿法求非线性函数题目的同学,当然第一题都一样,所有人都可以用。←记得删掉这段话 班级: ? 学号: 姓名:

一、《MATLAB程序设计实践》Matlab基础 表示多晶体材料织构的三维取向分布函数(f=f(φ1,φ,φ2))是一个非常复杂的函数,难以精确的用解析函数表达,通常采用离散 空间函数值来表示取向分布函数,是三维取向分布函数的一个实例。 由于数据量非常大,不便于分析,需要借助图形来分析。请你编写一 个matlab程序画出如下的几种图形来分析其取向分布特征: (1)用Slice函数给出其整体分布特征; " ~ (2)用pcolor或contour函数分别给出(φ2=0, 5, 10, 15, 20, 25, 30, 35 … 90)切面上f分布情况(需要用到subplot函数);

(3) 用plot函数给出沿α取向线(φ1=0~90,φ=45,φ2=0)的f分布情况。 (

备注:数据格式说明 解: (1)( (2)将文件内的数据按照要求读取到矩阵f(phi1,phi,phi2)中,代码如 下: fid=fopen(''); for i=1:18 tline=fgetl(fid); end phi1=1;phi=1;phi2=1;line=0; f=zeros(19,19,19); [ while ~feof(fid) tline=fgetl(fid); data=str2num(tline); line=line+1;数据说明部分,与 作图无关此方向表示f随着 φ1从0,5,10,15, 20 …到90的变化而 变化 此方向表示f随着φ 从0,5,10,15, 20 … 到90的变化而变化 表示以下数据为φ2=0的数据,即f(φ1,φ,0)

MATLAB实现通信系统仿真实例

补充内容:模拟调制系统的MATLAB 仿真 1.抽样定理 为了用实验的手段对连续信号分析,需要先对信号进行抽样(时间上的离散化),把连续数据转变为离散数据分析。抽样(时间离散化)是模拟信号数字化的第一步。 Nyquist 抽样定律:要无失真地恢复出抽样前的信号,要求抽样频率要大于等于两倍基带信号带宽。 抽样定理建立了模拟信号和离散信号之间的关系,在Matlab 中对模拟信号的实验仿真都是通过先抽样,转变成离散信号,然后用该离散信号近似替代原来的模拟信号进行分析的。 【例1】用图形表示DSB 调制波形)4cos()2cos(t t y ππ= 及其包络线。 clf %%计算抽样时间间隔 fh=1;%%调制信号带宽(Hz) fs=100*fh;%%一般选取的抽样频率要远大于基带信号频率,即抽样时间间隔要尽可能短。 ts=1/fs; %%根据抽样时间间隔进行抽样,并计算出信号和包络 t=(0:ts:pi/2)';%抽样时间间隔要足够小,要满足抽样定理。 envelop=cos(2*pi*t);%%DSB 信号包络 y=cos(2*pi*t).*cos(4*pi*t);%已调信号 %画出已调信号包络线 plot(t,envelop,'r:','LineWidth',3); hold on plot(t,-envelop,'r:','LineWidth',3); %画出已调信号波形 plot(t,y,'b','LineWidth',3); axis([0,pi/2,-1,1])% hold off% xlabel('t'); %写出图例 【例2】用图形表示DSB 调制波形)6cos()2cos(t t y ππ= 及其包络线。 clf %%计算抽样时间间隔 fh=1;%%调制信号带宽(Hz) fs=100*fh;%抽样时间间隔要足够小,要满足抽样定理。 ts=1/fs; %%根据抽样时间间隔进行抽样

MATLAB通信系统仿真心得体会

MATLAB通信系统仿真心得体会 课程名称(中文) MATLAB通信系统仿真成绩姓名班级学号日期 学习MATLAB通信系统仿真心得体会 经过一学期的MATLAB通信系统仿真的学习,使我对通信原 理及仿真实践有了更深层次的理解。在学习过程当中,了解到了MATLAB的语言基础以及应用的界面环境,基本操作和语法,通信仿真工具箱的应用,simulink 仿真基础,信号系统分析等一系列的内容。我明白学好这门课程是非常的重要。 在学习当中,我首先明白了通信系统仿真的现实意义,系统模型是对实际系统的一种抽象,是对系统本质(或是系统的某种特性)的一种描述。模型可视为对真实世界中物体或过程的信息进行形式化的结果。模型具有与系统相似的特性,可以以各种形式给出我们所感兴趣的信息。知道了通信系统仿真的必要性,利用系统建模和软件仿真技术,我们几乎可以对所有的设计细节进行分层次的建模和评估。通过仿真技术和方法,我们可以有效地将数学分析模型和经验模型结合起来。利用系统仿真方法,可以迅速构建一个通信系统模型,提供一个便捷,高效和精确的评估平台。明白了MATLAB通信系统仿真课程重点就是系统仿真软件 Matlab / Simulink 在通信系统建模仿真和性能评估方面的应用原理,通信系统仿真的一般原理和方法。 MATLAB集成度高,使用方便,输入简捷,运算高效,内容丰富,并且很容易由用户自行扩展,与其它计算机语言相比, MATLAB有以下显著特点:1.MATLAB是一种解释性语言;2(变量的“多功能性”;3.运算符号的“多功能性”;4(人机界面适合科技人员;5(强大而简易的作图功能;6(智能化程度高;7(功能丰富,可扩展性强。在MATLAB的Communication Toolbox(通 信工具箱)中提供了许多仿真函数和模块,用于对通信系统进行仿真和分析。

简述基于MATLAB的优化设计

基于MATLAB 的曲柄摇杆机构优化设计 1. 问题的提出 根据机械的用途和性能要求的不同,对连杆机构设计的要求是多种多样的,但这些设计要求可归纳为以下三种问题:(1)满足预定的运动规律要求;(2)满足预定的连杆位置要求;(3)满足预定的轨迹要求。在在第一个问题里按照期望函数设计的思想,要求曲柄摇杆机构的曲柄与摇杆转角之间按照()f φ?=(称为期望函数)的关系实现运动,由于机构的待定参数较少,故一般不能准确实现该期望函数,设实际的函数为()F φ?=(称为再现函数),而再现函数一般是与期望函数不一致的,因此在设计时应使机构再现函数()F φ?=尽可能逼近所要求的期望函数()f φ?=。这时需按机械优化设计方法来设计曲柄连杆,建立优化数学模型,研究并提出其优化求解算法,并应用于优化模型的求解,求解得到更优的设计参数。 2. 曲柄摇杆机构的设计 在图 1 所示的曲柄摇杆机构中,1l 、2l 、3l 、 4l 分别是曲柄AB 、连杆BC 、摇杆CD 和机架AD 的长度。这里规定0?为摇杆在右极限位置0φ时的曲柄起始位置角,它们由1l 、2l 、3l 和4l 确定。 图1 曲柄摇杆机构简图 设计时,可在给定最大和最小传动角的前提下,当曲柄从0?转到090??+时,要求摇杆的输出角最优地实现一个给定的运动规律()f ?。这里假设要求: ()()2 0023E f φ?φ??π ==+ - (1)

对于这样的设计问题,可以取机构的期望输出角()E f φ?=和实际输出角 ()F φ?=的平方误差之和作为目标函数,使得它的值达到最小。 2.1 设计变量的确定 决定机构尺寸的各杆长度1l 、2l 、3l 和4l ,以及当摇杆按已知运动规律开始运行时,曲柄所处的位置角0?应列为设计变量,即: []12340T x l l l l ?= (2) 考虑到机构的杆长按比例变化时,不会改变其运动规律,通常设定曲柄长度 1l =1.0,在这里可给定4l =5.0,其他杆长则按比例取为1l 的倍数。若取曲柄的初始 位置角为极位角,则?及相应的摇杆l 位置角φ均为杆长的函数,其关系式为: ()()()()222221243230124225arccos 210l l l l l l l l l l l l ?????++-+-+==????++???????? (3) ()()22222124323034325arccos 210l l l l l l l l l l ????? +--+--==???????????? (4) 因此,只有2l 、3l 为独立变量,则设计变量为[][]2312T T x l l x x ==。 2.2目标函数的建立 目标函数可根据已知的运动规律与机构实际运动规律之间的偏差最小为指标来建立,即: ()()2 1min m Ei i i f x φφ==-→∑ (5) 式中,Ei φ-期望输出角;m -输出角的等分数;i φ-实际输出角,由图 1 可知: ()()02i i i i i i i παβ?πφπαβπ?π--≤≤??=?-+≤≤?? (6) 式中,222222322132arccos arccos 22i i i i i r l l r x x rl r x α???? +-+-== ? ????? (7) 222241424arccos arccos 210i i i i i r l l r rl r β???? +-+== ? ????? (8) i r == (9) 2.3约束条件

1实验一 Matlab程序设计与M文件(1)

实验一 Matlab 程序设计与M 文件 一、实验目的 1. 掌握Matlab 程序设计常用命令,如,循环、选择、暂停、显示输出、输入变量值等。 2. 掌握Matlab 的M 文件的创建于使用,包括脚本文件和函数文件。 3. 掌握常用的编程技巧。 二、实验内容 1. 输入一个百分制成绩,要求输出成绩等级A 、B 、C 、D 、E 。其中90分~100分为A ,80分~89分为B ,79分~79分为C ,60分~69分为D ,60分以下为E 。 要求: (1) 分别用if 语句和switch 语句实现。 (2) 输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。 2. 硅谷公司员工的工资计算方法如下: (1) 工作时数超过120小时者,超过部分加发15%。 (2) 工作时数低于60小时者,扣发700元。 (3) 其余按每小时84元计发。 试编程按输入的工号和该号员工的工时数,计算应发工资。 3. 根据2 222211116123n π=++++,求π的近似值。当n 分别取100、1000、10000时,结果是多少? 要求:分别用循环结构和向量运算(使用sum 函数)来实现。 4. 考虑以下迭代公式: 1n n a x b x +=+ 其中a 、b 为正的学数。 (1) 编写程序求迭代的结果,迭代的终止条件为|x n+1-x n |≤10-5,迭代初值x 0=1.0,迭代次数不超过500次。 (2) 如果迭代过程收敛于r ,那么r 的准确值是,当(a,b)的值 取(1,1)、(8,3)、(10,0.1)时,分别对迭代结果和准确值进行比较。

5. 已知 12312311021 323 n n n n f n f n f n f f f f n ---==??==??==??=-+>? 求f 1~f 100中: (1) 最大值、最小值、各数之和。 (2) 正数、零、负数的个数。 6. 若两个连续自然数的乘积减1是素数,则称这两个边疆自然数是亲密数对,该素数是亲密素数。例如,2×3-1=5,由于5是素数,所以2和3是亲密数,5是亲密素数。求[2,50]区间内: (1) 亲密数对的对数。 (2) 与上述亲密数对对应的所有亲密素数之和。 7. 设2411()(2)0.1(3)0.01 f x x x =+-+-+,编写一个MATLAB 函数文件fx.m ,使得调用f(x)时,x 可用矩阵代入,得出的f(x)为同阶矩阵。 8. 一物理系统可用下列方程组来表示: 111211 12 220cos sin 0sin 0cos 000sin 000cos 1a m m a m g m N m N m g θθθθθθ--??????????????????=??????-??????-?????? 从键盘输入m 1、m 2和θ的值,求a 1、a 2、N 1和N 2的值。其中g 取9.8,输入θ时以角度为单位。 要求:定义一个求解线性方程组AX=B 的函数文件,然后在命令文件中调用该函数文件。

MATLAB 2psk通信系统仿真报告

实验一 2PSK调制数字通信系统 一实验题目 设计一个采用2PSK调制的数字通信系统 设计系统整体框图及数学模型; 产生离散二进制信源,进行信道编码(汉明码),产生BPSK信号; 加入信道噪声(高斯白噪声); BPSK信号相干解调,信道解码; 系统性能分析(信号波形、频谱,白噪声的波形、频谱,信道编解 二实验基本原理 数字信号的传输方式分为基带传输和带通传输,在实际应用中,大多数信道具有带通特性而不能直接传输基带信号。为了使数字信号在带通信道中传输,必须使用数字基带信号对载波进行调制,以使信号与信道的特性相匹配。这种用数字基带信号控制载波,把数字基带信号变换为数字带通信号的过程称为数字调制。 数字调制技术的两种方法:①利用模拟调制的方法去实现数字式调制,即把数字调制看成是模拟调制的一个特例,把数字基带信号当做模拟信号的特殊情况处理;②利用数字信号的离散取值特点通过开关键控载波,从而实现数字调制。这种方法通常称为键控法,比如对载波的相位进行键控,便可获得相移键控(PSK)基本的调制方式。 图1 相应的信号波形的示例 1 0 1 调制原理 数字调相:如果两个频率相同的载波同时开始振荡,这两个频率同时达到正最大值,同时达到零值,同时达到负最大值,它们应处于"同相"状态;如果其中一个开始得迟了一点,就可能不相同了。如果一个达到正最大值时,另一个达到负最大值,则称为"反相"。一般把信号振荡一次(一周)作为360度。如果一个波比另一个波相差半个周期,我们说两个波的

相位差180度,也就是反相。当传输数字信号时,"1"码控制发0度相位,"0"码控制发180度相位。载波的初始相位就有了移动,也就带上了信息。 相移键控是利用载波的相位变化来传递数字信息,而振幅和频率保持不变。在2PSK中,通常用初始相位0和π分别表示二进制“1”和“0”。因此,2PSK信号的时域表达式为(t)=Acos t+) 其中,表示第n个符号的绝对相位: = 因此,上式可以改写为 图2 2PSK信号波形 解调原理 2PSK信号的解调方法是相干解调法。由于PSK信号本身就是利用相位传递信息的,所以在接收端必须利用信号的相位信息来解调信号。下图2-3中给出了一种2PSK信号相干接收设备的原理框图。图中经过带通滤波的信号在相乘器中与本地载波相乘,然后用低通滤波器滤除高频分量,在进行抽样判决。判决器是按极性来判决的。即正抽样值判为1,负抽样值判为0. 2PSK信号相干解调各点时间波形如图 3 所示. 当恢复的相干载波产生180°倒相时,解调出的数字基带信号将与发送的数字基带信号正好是相反,解调器输出数字基带信号全部出错.

(完整版)基于matlab的通信系统仿真毕业论文

创新实践报告
报 告 题 目: 学 院 名 称: 姓 名:
基于 matlab 的通信系统仿真 信息工程学院 余盛泽
班 级 学 号: 指 导 老 师: 温 靖

二 O 一四年十月十五日
目录
一、引言........................................................................................................................ 3 二、仿真分析与测试 ................................................................................................... 4
2.1 随机信号的生成 ............................................................................................................... 4 2.2 信道编译码 ........................................................................................................................ 4 2.2.1 卷积码的原理 ........................................................................................................ 4 2.2.2 译码原理 ................................................................................................................ 5 2.3 调制与解调 ....................................................................................................................... 5 2.3.1 BPSK 的调制原理 .................................................................................................. 5 2.3.2 BPSK 解调原理 ...................................................................................................... 6 2.3.3 QPSK 调制与解调 ................................................................................................. 7 2.4 信道 .................................................................................................................................... 8

matlab程序设计作业

Matlab程序设计作业 姓名: 学号: 专业:

? MATLAB 程序设计》作业 1、考虑如下x-y 一组实验数据: x=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] y 二[1.2, 3, 4, 4, 5, 4.7, 5, 5.2, 6, 7.2] 分别绘出plot 的原始数据、一次拟合曲线和三次拟合曲线,给出 原始曲线 MATLAB 代码和运行结果。 7 6 5 4 3 2 2 3 4 5 6 7 8 9 10

7 6.5 6 5.5 5 4.5 4 3.5 3 2.5 10 一次拟合 三次拟合

x=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; y=[1.2, 3, 4, 4, 5, 4.7, 5, 5.2, 6, 7.2]; figure; plot(x,y) p1=polyfit(x,y,1); y1=polyval(p1,x); figure; plot(x,y1) p2=polyfit(x,y,3); y2=polyval(p2,x); figure; plot(x,y2) 2、在[0, 3n区间,绘制y二Sin(x)曲线(要求消去负半波,即(n 2n)区间内的函数值置零),求出曲线y 的平均值,以及y 的最大值及其最大值的位置。给出执行代码和运行结果。 x=0:pi/1000:3*pi; y=Sin(x); y1=(y>=0).*y; %消去负半波figure(1); plot(x,y1, 'b' ); a=mean(y1) %求出y1 的平均值 b=max(y1) %求出y1 的最大值b, 以及最大值在矩阵中的位置; d=x(find(y1==b)) >> ex1 a = 0.4243 b = 1 d = 1.5708 7.8540 >>

Matlab通信系统建模与仿真例题源代码-第三章

% ch3example1A.m clear; f_p=2400; f_s=5000; R_p=3; R_s=25; % 设计要求指标 [n, fn]=buttord(f_p,f_s,R_p,R_s, 's'); % 计算阶数和截止频率 Wn=2*pi*fn; % 转换为角频率 [b,a]=butter(n, Wn, 's'); % 计算H(s) f=0:100:10000; % 计算频率点和频率范围 s=j*2*pi*f; % s=jw=j*2*pi*f H_s=polyval(b,s)./polyval(a,s); % 计算相应频率点处H(s)的值 figure(1); subplot(2,1,1); plot(f, 20*log10(abs(H_s))); % 幅频特性 axis([0 10000 -40 1]); xlabel('频率Hz');ylabel('幅度dB'); subplot(2,1,2); plot(f, angle(H_s)); % 相频特性 xlabel('频率Hz');ylabel('相角rad'); figure(2); freqs(b,a); % 也可用指令freqs直接画出H(s)的频率响应曲线。 % ch3example1B.m clear; f_p=2400; f_s=5000; R_p=3; R_s=25; % 设计要求指标 [n, fn]=ellipord(f_p,f_s,R_p,R_s,'s'); % 计算阶数和截止频率 Wn=2*pi*fn; % 转换为角频率 [b,a]=ellip(n,R_p,R_s,Wn,'s'); % 计算H(s) f=0:100:10000; % 计算频率点和频率范围 s=j*2*pi*f; % s=jw=j*2*pi*f H_s=polyval(b,s)./polyval(a,s); % 计算相应频率点处H(s)的值 figure(1); subplot(2,1,1); plot(f, 20*log10(abs(H_s))); % 幅频特性 axis([0 10000 -40 1]); xlabel('频率Hz');ylabel('幅度dB'); subplot(2,1,2); plot(f, angle(H_s)); % 相频特性 xlabel('频率Hz');ylabel('相角rad'); figure(2); freqs(b,a); % 也可用指令freqs直接画出H(s)的频率响应曲线。 % ch3example2A.m f_N=8000; % 采样率 f_p=2100; f_s=2500; R_p=3; R_s=25; % 设计要求指标 Ws=f_s/(f_N/2); Wp=f_p/(f_N/2); % 计算归一化频率 [n, Wn]=buttord(Wp,Ws,R_p,R_s); % 计算阶数和截止频率 [b,a]=butter(n, Wn); % 计算H(z) figure(1); freqz(b,a, 1000, 8000) % 作出H(z)的幅频相频图, freqz(b,a, 计算点数, 采样率)

matlab程序设计与应用(第二版)第三章部分课后答案

第三章1. (1)A=eye(3) (2)A=100+100*rand(5,6) (3)A=1+sqrt(0.2)*randn(10,50) (4)B=ones(size(A)) (5)A+30*eye(size(A)) (6)B=diag(diag(A)) 2. B=rot90(A) C=rot90(A,-1) 3. B=inv(A) ;A的逆矩阵 C=det(A) ;A的行列式的值 D=A*B E=B*A D=E 因此A与A-1是互逆的。 4. A=[4 2 -1;3 -1 2;12 3 0]; b=[2;10;8]; x=inv(A)*b x = -6.0000 26.6667 27.3333 5. (1) diag(A) ;主对角线元素 ans = 1 1 5 9 triu(A) ;上三角阵

ans = 1 -1 2 3 0 1 -4 2 0 0 5 2 0 0 0 9 tril(A) ;下三角阵 ans = 1 0 0 0 5 1 0 0 3 0 5 0 11 15 0 9 rank(A) ;秩 ans = 4 norm(A) ;范数 ans = 21.3005 cond(A) ;条件数 ans = 11.1739 trace(A) ;迹 ans = 16 (2)略 6. A=[1 1 0.5;1 1 0.25;0.5 0.25 2] A = 1.0000 1.0000 0.5000 1.0000 1.0000 0.2500 0.5000 0.2500 2.0000

[V,D]=eig(A) V = 0.7212 0.4443 0.5315 -0.6863 0.5621 0.4615 -0.0937 -0.6976 0.7103 D = -0.0166 0 0 0 1.4801 0 0 0 2.5365

matlab程序设计与应用实验指导书

附件2 《matlab程序设计与应用》实验指导书 山东建筑大学信息与电气工程学院

前言 一、实验目的 本课程是电气工程及其自动化、自动化、电力工程与管理专业本科生的 学科基础选修课,它在线性代数、信号分析和处理、控制系统设计和仿真等 方面有着广泛的应用。主要是学习MATLAB的语法规则、基本命令和使用环境,使学生掌握MATLAB的基本命令和基本程序设计方法,提高使用该语言 的应用能力,具有使用MATLAB语言编程和调试的能力,以便为后续多门课 程使用该语言奠定必要的基础。 通过上机实验,使学生掌握MATLAB在线帮助功能的使用、熟悉MATLAB运行环境和MATLAB语言的主要特点,掌握MA TLAB语言的基本 语法规则及基本操作命令的使用,学会M文件的建立和使用方法以及应用MATLAB实现二维和三维图形的绘制方法,具有使用MATLAB语言编程和 调试的能力。 二、实验前预习 每次实验前,学生须仔细阅读本实验指导书的相关内容,明确实验目的、要求;明确实验步骤、测试数据及需观察的现象;复习与实验内容有关的理论知识;预习仪器设备的使用方法、操作规程及注意事项;做好预习要求中提出的其它事项。 三、实验注意事项 1.实验开始前,应先检查本组电脑设备是否工作正常,matlab软件工作是否正常。 2.实验时每位同学应独立完成实验任务,避免抄袭。 3.实验后应及时将实验数据进行记录与存盘,避免因电脑故障或其它原因造成实验数据的丢失。 4.实验中严格遵循电脑操作规程,如电脑发生异常现象,应立即切断电源,

报告指导教师检查处理。 5.测量数据或观察现象要认真细致,实事求是。 6.未经许可,不得对电脑进行软件及硬件的更改操作。 7.实验结束后,实验记录交指导教师查看并认为无误后,方可关掉电脑离开。 8.爱护公物,发生仪器设备等损坏事故时,应及时报告指导教师,按有关实验管理规定处理。 9.自觉遵守学校和实验室管理的其它有关规定。 四、实验总结 每次实验后,应对实验进行总结,即实验数据进行整理,绘制波形和图表,分析实验现象,撰写实验报告。实验报告除写明实验名称、日期、实验者姓名、同组实验者姓名外,还包括: 1.实验目的; 2.实验内容 3.实验流程图; 4.程序命令清单; 5.运行结果; 6.实验的收获与体会; 7.回答每项实验的有关问答题。

机械优化设计MATLAB程序

t t t 机械优化设计作业 1.用二次插值法求函数?( )= ( +1)( - 2)2 极小值,精度 e=0.01。 在 MA TLAB 的 M 文件编辑器中编写的 M 文件,如下: f=inline('(t+1)*(t -2)^2','t') a=0;b=3;epsilon=0.01; t1=a;f1=f(t1); t3=b;f3=f(t3); t2=0.5*(t1+t3);f2=f(t2); c1=(f3-f1)/(t3-t1); c2=((f2-f1)/(t2-t1)-c1)/(t2-t3); t4=0.5*(t1+t3-c1/c2);f4=f(t4); k=0; while(abs(t4-t2)>=epsilon) if t2f4 f1=f2;t1=t2; t2=t4;f2=f4; else f3=f4;t3=t4; end else if f2>f4 f3=f2;t3=t2; t2=t4;f2=f4; else f1=f4;t2=t4; end end c1=(f3-f1)/(t3-t1); c2=((f2-f1)/(t2-t1)-c1)/(t2-t3); t4=0.5*(t1+t3-c1/c2);f4=f(t4); k=k+1; end %输出最优解 if f2>f4 t=t4;f=f(t4); else t=t2;f=f(t2); end fprintf(1,'迭代计算 k=%3.0f\n',k) fprintf(1,'极小点坐标 t=%3.0f\n',t) fprintf(1,'函数值 f=%3.4f\n',f)

3.用牛顿法、阻尼牛顿法及变尺度法求函数 的极小点。( ) ( ) ( )21121 22, xxxxxf -+-= 4 2 (1)在用牛顿法在 MATLAB 的 M 文件编辑器中编写的 M 文件,如下: function [x,fx,k]=niudunfa(x0) syms x1 x2 f=(x1-2)^4+(x1-2*x2)^2; fx=0; v=[x1,x2]; df=jacobian(f,v); df=df.'; G=jacobian(df,v); epson=1e -12; g1=subs(df,{x1,x2},{x0(1,1),x0(2,1)}); G1=subs(G,{x1,x2},{x0(1,1),x0(2,1)}); k=0; p=-G1\g1; x0=x0+p; while(norm(g1)>epson) p=-G1\g1; x0=x0+p; g1=subs(df,{x1,x2},{x0(1,1),x0(2,1)}); G1=subs(G,{x1,x2},{x0(1,1),x0(2,1)}); k=k+1; end x=x0; fx=subs(f,{x1,x2},{x(1,1),x(2,1)}); 运行结果如下: >> [x,fx,k]=niudunfa([1;1]) x =1.9999554476059523381489991377897 0.99997772380297616907449956889483 fx =0.0000000000000000039398907941382470301534502947647 k =23 (2)用阻尼牛顿法在 MA TLAB 的 M 文件编辑器中编写的 M 文件,如下: function [x,fx,k]=zuniniudunfa(x0)%阻尼牛顿法 syms x1 x2 f=(x1-2)^4+(x1-2*x2)^2; fx=0; v=[x1,x2]; df=jacobian(f,v); df=df.'; G=jacobian(df,v); epson=1e -12;%停机原则

相关主题
文本预览
相关文档 最新文档