77范文网 - 专业文章范例文档资料分享平台

基于MATLAB的CDMA RAKE接收机仿真(2)

来源:网络收集 时间:2019-04-09 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

武汉理工大学本科生毕业设计(论文)

1 MATLAB语言基础

1.1 MATLAB概述

1.1.1 MATLAB的概况

MATLAB是矩阵实验室(Matrix Laboratory)之意。除具备卓越的数值计算能力外,它还提供了专业水平的符号计算,文字处理,可视化建模仿真和实时控制等功能。MATLAB是一门计算机编程语言,取名来源于Matrix Laboratory,本意是专门以矩阵的方式来处理计算机数据,它把数值计算和可视化环境集成到一起,非常直观,而且提供了大量的函数,使其越来越受到人们的喜爱,工具箱越来越多,应用范围也越来越广泛

MATLAB的基本数据单位是矩阵,它的指令表达式与数学,工程中常用的形式十分相似,故用MATLAB来解答问题要比用C、FORTRAN等语言完成相同的事情简捷得多。

当前流行的MATLAB 5.3/Simulink 3.0包括拥有数百个内部函数的主包和三十几种工具包(Toolbox)。工具包又可以分为功能性工具包和学科工具包。功能工具包用来扩充MATLAB的符号计算,可视化建模仿真,文字处理及实时控制等功能。学科工具包是专业性比较强的工具包,控制工具包、信号处理工具包、通信工具包等都属于此类。

开放性使MATLAB广受用户欢迎。除内部函数外,所有MATLAB主包文件和各种工具包都是可读可修改的文件,用户通过对源程序的修改或加入自己编写程序构造新的专用工具包。

1.1.2.MATLAB产生的历史背景

在70年代中期,Cleve Moler博士和其同事在美国国家科学基金的资助下开发了调用EISPACK和LINPACK的FORTRAN子程序库。EISPACK是特征值求解的FOETRAN程序库,LINPACK是解线性方程的程序库。在当时,这两个程序库代表矩阵运算的最高水平。

到70年代后期,身为美国New Mexico大学计算机系系主任的Cleve Moler,在给学生讲授线性代数课程时,想教学生使用EISPACK和LINPACK程序库,但他发现学生用FORTRAN编写接口程序很费时间,于是他开始自己动手,利用业余时间为学生编写EISPACK和LINPACK的接口程序。Cleve Moler给这个接口程序取名为MATLAB,该名为矩阵(matrix)和实验室(labotatory)两个英文单词的前三个字母的组合。在以后的数年里,MATLAB在多所大学里作为教学辅助软件使用,并作为面向

4

武汉理工大学本科生毕业设计(论文)

大众的免费软件广为流传。

1983年春天,Cleve Moler到Standford大学讲学,MATLAB深深地吸引了工程师John Little.John Little敏锐地觉察到MATLAB在工程领域的广阔前景。同年,他和Cleve Moler、Steve Bangert一起,用C语言开发了第二代专业版。这一代的MATLAB语言同时具备了数值计算和数据图示化的功能。

1984年,Cleve Moler和John Little成立了Math Works公司,正式把MATLAB推向市场,并继续进行MATLAB的研究和开发。

在当今30多个数学类科技应用软件中,就软件数学处理的原始内核而言,可分为两大类:一类是数值计算型软件,如MATLAB、Xmath、Gauss等,这类软件长于数值计算,对处理大批数据效率高;另一类是数学分析型软件,Mathematica,Maple等,这类软件以符号计算见长,能给出解析解和任意精确解,其缺点是处理大量数据时效率较低。MathWorks公司顺应多功能需求之潮流,在其卓越数值计算和图示能力的基础上,又率先在专业水平上开拓了其符号计算,文字处理,可视化建模和实时控制能力,开发了适合多学科,多部门要求的新一代科技应用软件MATLAB,经过多年的国际竞争,MATLAB以经占据了数值软件市场的主导地位。

在MATLAB进入市场前,国际上的许多软件包都是直接以FORTRAN/C语言等编程语言开发的。这种软件的缺点是使用面窄,接口简陋,程序结构不开放以及没有标准的基库,很难适应各学科的最新发展,因而很难推广。MATLAB的出现,为各国科学家开发学科软件提供了新的基础。在MATLAB问世不久的80年代中期,原先控制领域里的一些软件包纷纷被淘汰或在MATLAB上重建。

MathWorks公司1993年推出了MATLAB 4.0版,1995年推出4.2C版(for win3.X)1997年推出5.0版。1999年推出5.3版。MATLAB 5.X较MATLAB 4.X无论是界面还是内容都有长足的进展,其帮助信息采用超文本格式和PDF格式,在Netscape 3.0或IE 4.0及以上版本,Acrobat Reader中可以方便地浏览。

时至今日,经过MathWorks公司的不断完善,MATLAB已经发展成为适合多学科,多种工作平台的功能强大的大型软件。在国外,MATLAB已经经受了多年考验。在欧美等高校,MATLAB已经成为线性代数,自动控制理论,数理统计,数字信号处理,时间序列分析,动态系统仿真等高级课程的基本教学工具;成为攻读学位的大学生,硕士生,博士生必须掌握的基本技能。在设计研究单位和工业部门,MATLAB被广泛用于科学研究和解决各种具体问题。在国内,特别是工程界,MATLAB已经盛行起来。可以说,无论你从事工程方面的哪个学科,都能在MATLAB里找到合适的功能。

1.1.3 MATLAB的语言特点

一种语言之所以能如此迅速地普及,显示出如此旺盛的生命力,是由于它有着

5

武汉理工大学本科生毕业设计(论文)

不同于其他语言的特点,正如同FORTRAN和C等高级语言使人们摆脱了需要直接对计算机硬件资源进行操作一样,被称作为第四代计算机语言的MATLAB,利用其丰富的函数资源,使编程人员从繁琐的程序代码中解放出来。MATLAB最突出的特点就是语言简洁。MATLAB用更直观的,符合人们思维习惯的代码,代替了C和FORTRAN语言的冗长代码。MATLAB给用户带来的是最直观,最简洁的程序开发环境。

以下简单介绍一下MATLAB的主要特点。

1)。语言简洁紧凑,使用方便灵活,库函数极其丰富。

MATLAB程序书写形式自由,利用起丰富的库函数避开繁杂的子程序编程任务,压缩了一切不必要的编程工作。由于库函数都由本领域的专家编写,用户不必担心函数的可靠性。可以说,用MATLAB进行科技开发是站在专家的肩膀上。

具有FORTRAN和C等高级语言知识的读者可能已经注意到,如果用FORTRAN或C语言去编写程序,尤其当涉及矩阵运算和画图时,编程会很麻烦。例如,如果用户想求解一个线性代数方程,就得编写一个程序块读入数据,然后再使用一种求解线性方程的算法(例如追赶法)编写一个程序块来求解方程,最后再输出计算结果。在求解过程中,最麻烦的要算第二部分。解线性方程的麻烦在于要对矩阵的元素作循环,选择稳定的算法以及代码的调试都不容易。即使有部分源代码,用户也会感到麻烦,且不能保证运算的稳定性。解线性方程的程序用FORTRAN和C这样的高级语言编写,至少需要四百多行,调试这种几百行的计算程序可以说很困难。

2)运算符丰富。

由于MATLAB是用C语言编写的,MATLAB提供了和C语言几乎一样多的运算符,灵活使用MATLAB的运算符将使程序变得极为简短。

3)MATLAB既具有结构化的控制语句(如for循环,while循环,break语句和if语句),又有面向对象编程的特性。

4)程序限制不严格,程序设计自由度大。

例如,在MATLAB里,用户无需对矩阵预定义就可使用。

5)程序的可移植性很好,基本上不做修改就可以在各种型号的计算机和操作系统上运行。

6)MATLAB的图形功能强大。

在FORTRAN和C语言里,绘图都很不容易,但在MATLAB里,数据的可视化非常简单。MATLAB还具有较强的编辑图形界面的能力。

7)MATLAB的缺点是,它和其他高级程序相比,程序的执行速度较慢。 由于MATLAB的程序不用编译等预处理,也不生成可执行文件,程序为解释执行,所以速度较慢。

8)功能强大的工具箱是MATLAB的另一特色。

6

武汉理工大学本科生毕业设计(论文)

MATLAB包含两个部分:核心部分和各种可选的工具箱。核心部分中有数百个核心内部函数。其工具箱又分为两类:功能性工具箱和学科性工具箱。功能性工具箱主要用来扩充其符号计算功能,图示建模仿真功能,文字处理功能以及与硬件实时交互功能。功能性工具箱用于多种学科。而学科性工具箱是专业性比较强的,如control,toolbox,signl proceessing toolbox,commumnication toolbox等。这些工具箱都是由该领域内学术水平很高的专家编写的,所以用户无需编写自己学科范围内的基础程序,而直接进行高,精,尖的研究。

9)源程序的开放性。开放性也许是MATLAB最受人们欢迎的特点。 除内部函数以外,所有MATLAB的核心文件和工具箱文件都是可读可改的源文件,用户可通过对源文件的修改以及加入自己的文件构成新的工具箱。

1.2 MATLAB的安装于使用 1.2.1 MATLAB安装

MATLAB的安装非常简单,这里以Windows版本6为例。运行setup后,输入正确的序列号,选择好安装路径和安装的模块,几乎是一直回车就可以了。这里有一点要注意的是,由于不同操作系统设置,可能会出现一些意外错误,而且越高版本的MATLAB对计算机系统的性能要求也越高,如6.1版本要求至少64M内存,最好128M。(当然,现在的计算机内存一般都能满足要求,用户不必担心这一点。)所以根据自身情况选择适合的版本安装,最好还要在操作系统初安装后就安装,避免出现意外。

1.2.2 MATLAB运行

MATLAB的启动运行:#:\\MATLAB6p1\\bin\\win32\\matlab.exe(其中#为安装盘符。)但一般安装完毕后会在安装目录下有一个快捷运行方式。

MATLAB启动后显示的窗口称为命令窗口,提示符为“>>”。一般可以在命令窗口中直接进行简单的算术运算和函数调用。如果重复输入一组表达式或计算复杂,则可以定义程序文件来执行达到目的。程序文件扩展名为“.m”,以文本文件形式保存。有两种方式运行程序文件:一是直接在MATLAB命令窗口输入文件名,二是选择File-Open打开m文件,弹出的窗口为MATLAB编辑器。这时可选择它的Debug菜单的Run子菜单运行。

1.2.3结束MATLAB

有三种方法可以结束MATLAB: 1.键入exit

7

武汉理工大学本科生毕业设计(论文)

2.键入quit

3.直接关闭MATLAB的命令视窗(Command window)

1.3 MATLAB 基本语法和基本操作

1.3.1数值运算的功能

命令行的基本操作 1、创建矩阵的方法

直接输入法 规则:

1 矩阵元素必须用[ ]括住

2矩阵元素必须用逗号或空格分隔 3 在[ ]内矩阵的行与行之间必须 用分号分隔

2、矩阵元素

矩阵元素可以是任何matlab表达式 ,可以是实数 ,也可以是复数,复数可用特殊函数I,j 输入

a=[1 2 3;4 5 6] x=[2 pi/2;sqrt(3) 3+5i]

1.3.2符号的作用

1、逗号和分号的作用

1、逗号和分号可作为指令间的分隔符,matlab允许多条语句在同一行出现。 2、分号如果出现在指令后,屏幕上将不显示结果。 2、冒号的作用

1、用于生成等间隔的向量,默认间隔为1。X=1:6 2、用于选出矩阵指定行、列及元素。x(2,:), x(:,2) 3、循环语句 k=1:0.2:2 format , format rat

1.3.3用matlab函数创建矩阵

空阵 [ ] — matlab允许输入空阵,当一项操作无结果时,返回空阵。 rand —— 随机矩阵 rand(4) eye —— 单位矩阵 eye(4)

zeros —全部元素都为0的矩阵 zeros(7)

8

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库基于MATLAB的CDMA RAKE接收机仿真(2)在线全文阅读。

基于MATLAB的CDMA RAKE接收机仿真(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/581801.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: