MATLAB程序设计(通信).ppt
《MATLAB程序设计(通信).ppt》由会员分享,可在线阅读,更多相关《MATLAB程序设计(通信).ppt(45页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、第 3 章 MATLAB程序设计湖南工程学院湖南工程学院第第3章章 MATLAB程序设计程序设计 2.1 变量及其赋值变量及其赋值 2.2 运算符与数学表达式运算符与数学表达式 2.3 控制流控制流 2.4 数据的输入输出及文件的读写数据的输入输出及文件的读写2.5 基本数学函数基本数学函数2.6 基本绘图方法基本绘图方法2.7 M文件及程序调试文件及程序调试 第 3 章 MATLAB程序设计湖南工程学院湖南工程学院2.5 基本数学函数 2.5.1 三角函数1正弦正弦sin函数与反正弦函数函数与反正弦函数asin函数函数格式:格式:Asin(X)功能:对矩阵或数组X的每个元素求正弦值,所有角度
2、用弧度表示。格式:格式:Xasin(A)功能:对于A的元素求反正弦值,结果为弧度。2 2双曲正弦双曲正弦sinhsinh函数与反双曲正弦函数函数与反双曲正弦函数asinhasinh函数函数格式:格式:A Asinh(X)sinh(X)功能:对矩阵或数组X的每个元素求双曲正弦值。格式:格式:Xasinh(A)功能:对于A的元素求反双曲正弦值。第 3 章 MATLAB程序设计湖南工程学院湖南工程学院3余弦余弦cos函数与反余弦函数函数与反余弦函数acos函数函数格式:格式:Acos(X)功能:对矩阵或数组X的每个元素求余弦值,所有角度用弧度表示。格式:格式:Xacos(A)功能:对于A的元素求反余
3、弦值,结果为弧度。4双曲余弦双曲余弦cosh函数与反双曲余弦函数函数与反双曲余弦函数acosh函数函数格式:格式:Acosh(X)功能:对矩阵或数组X的元素求双曲余弦值。格式:格式:Xacosh(A)功能:对于A的元素求反双曲余弦值。5正切正切tan函数与反正切函数函数与反正切函数atan函数函数格式:格式:Atan(X)功能:对矩阵或数组X的每个元素求正切值,所有角度用弧度表示。格式:格式:Xatan(A)功能:对于A的每个元素求反正切值,结果为弧度。第 3 章 MATLAB程序设计湖南工程学院湖南工程学院6四象限反正切四象限反正切atan2函数函数格式:格式:P=atan2(Y,X)功能:
4、四象限反正切函数。返回大小与Y、X相同的矩阵或数组,由Y和X对应元素的实部求反正切值得到,其中虚部忽略。7 7双曲正切双曲正切tanhtanh函数与反双曲正切函数与反双曲正切atanhatanh函数函数格式:格式:A Atanh(X)tanh(X)功能:对于X的每个元素求双曲正切值。格式:格式:Xatanh(A)功能:对于A的每个元素求反双曲正切值。8 8正割正割secsec函数与反正割函数与反正割asecasec函数函数格式:格式:A Asec(X)sec(X)功能:对X的每个元素求正割。格式:格式:Xasec(A)功能:返回A的每个元素的反正割值。第 3 章 MATLAB程序设计湖南工程学
5、院湖南工程学院9 9双曲正割双曲正割secsec函数与反双曲正割函数与反双曲正割asecasec函数函数格式:格式:A Asech(X)sech(X)功能:对X的每个元素求双曲正割。格式:格式:Xasech(A)功能:返回A的每个元素的反双曲正割值。1010余割余割csccsc函数与反余割函数与反余割acscacsc函数函数格式:格式:A Acsc(X)csc(X)功能:对X的每个元素求正割。格式:格式:Xachc(A)功能:返回A的每个元素的反正割值。第 3 章 MATLAB程序设计湖南工程学院湖南工程学院11双曲余割双曲余割csch函数与反双曲余割函数与反双曲余割asch函数函数格式:格式
6、:A=csch(X)功能:对X的每个元素求双曲余割。格式:格式:Xacsch(A)功能:返回A的每个元素的反双曲余割值。12余切余切cot函数与反余切函数与反余切acot函数函数格式:格式:A=cot(X)功能:对X的每个元素求余切。格式:格式:Xacot(A)功能:返回A的每个元素的反余切值。13双曲余切双曲余切coth函数与反双曲余切函数函数与反双曲余切函数acoth函数函数格式:格式:A=coth(X)功能:对X的每个元素求双曲余切。格式:格式:Xacoth(A)功能:返回A的每个元素的反双曲余切值第 3 章 MATLAB程序设计湖南工程学院湖南工程学院2.5.2 2.5.2 指数、对数
7、、幂运算指数、对数、幂运算 1指数指数exp函数与自然对数函数与自然对数log函数函数格式:格式:Aexp(X)功能:返回X每个元素的以e为底的指数值。格式:格式:Xlog(A)功能:返回A的每个元素的自然对数。2常用对数常用对数logl0函数函数格式:格式:Xlogl0(A)功能:对A的每个元素求常用对数。3 log2函数和幂函数函数和幂函数pow2格式:格式:Xlog2(A)功能:对A的每个元素计算其以2为底的对数。格式:格式:A=pow2(X)功能:A的元素为2对X每个元素求幂得到。4平方根函数平方根函数格式:格式:A=sqrt(X)功能:返回对数组X每个元素求平方根的数组,如果元素为负
8、或复数,则结果为复数。第 3 章 MATLAB程序设计湖南工程学院湖南工程学院复数的基本运算复数的基本运算 1求复数实部函数求复数实部函数real格式:格式:X=real(Z)功能:返回复数Z的每个元素的实部。2求复数的虚部函数求复数的虚部函数imag格式:格式:Y=imag(Z)功能:返回复数Z的每个元素的虚部。3绝对值和复数模函数绝对值和复数模函数abs格式:格式:A=abs(Z)功能:返回Z每个元素的绝对值。如果Z的元素是复数,则返回其模。4求相角函数求相角函数angle格式:格式:P=angle(Z)功能:对Z的每个元素求相角。5共轭函数共轭函数conj格式:格式:C=conj(Z)功
9、能:对Z的每个元素求共轭复数。第 3 章 MATLAB程序设计湖南工程学院湖南工程学院数据的取舍与保留数据的取舍与保留1向向0方向取整数函数方向取整数函数fix格式:格式:I=fix(X)返回X中每个元素的最靠近零的整数。若X为复数,则分别对X的实部和虚部取整。2向向-方向取整数函数方向取整数函数floor格式:格式:I=floor(X)返回X中每个元素的最靠近该元素的最小整数。若X为复数,则分别对X的实部和虚部取最小整。3向向-方向取整数函数方向取整数函数ceil格式:格式:I=ceil(X)返回X中每个元素的最靠近该元素的最大整数。若X为复数,则分别对X的实部和虚部取最大整数。4四舍五入取
10、整数函数四舍五入取整数函数round格式:格式:I=round(X)返回X中每个元素的最靠近该元素的整数。若X为复数,则分别对X的实部和虚部取整数。第 3 章 MATLAB程序设计湖南工程学院湖南工程学院5模数余函数模数余函数mod格式:格式:M=mod(X,Y)返回X关于Y的余数。6除后余数函数除后余数函数rem格式:格式:M=rem(X,Y)功能:返回X关于Y的余数。7符号函数符号函数sign格式:格式:s=sign(X)如果X大于零,则返回1;如果X等于零,则返回0;如果X小于零,则返回-1。如果X为复数,则算法为:SIGN(X)=X./ABS(X)。第 3 章 MATLAB程序设计湖南
11、工程学院湖南工程学院3.1 M文件及其使用方法文件及其使用方法M文文件件:由由MATLAB命命令令语语句句构构成成的的程程序序文文件件称称作作M文文件件,它它将将.m作作为为文文件件的的扩扩展展名名。可可以以直直接接阅阅读读并并用用任任何何文文本本编编辑辑器来建立这种文件。器来建立这种文件。M文件可分为两种文件可分为两种:主程序和子程序。:主程序和子程序。主主程程序序(也也称称主主程程序序文文件件,脚脚本本文文件件):一一般般是是由由用用户户为解决特定的问题而编制的程序。为解决特定的问题而编制的程序。子子程程序序(称称为为函函数数文文件件):它它必必须须由由其其它它M文文件件来来调调用用。函函
12、数数文文件件往往往往具具有有一一定定的的通通用用性性,并并且且可可以以进进行行递递归归调调用。用。第 3 章 MATLAB程序设计湖南工程学院湖南工程学院(1)有有关关程程序序的的功功能能、使使用用方方法法等等内内容容的的注注释释。主主程程序序前前面面的若干行通常是程序的注释,每行以的若干行通常是程序的注释,每行以“”开始。开始。(2)程序的主体。程序的主体。(3)整整个个程程序序应应按按MATLAB标标识识符符的的要要求求起起文文件件名名,并并加加上上后缀后缀m。脚本文件脚本文件主程序文件的格式特征如下:主程序文件的格式特征如下:第 3 章 MATLAB程序设计湖南工程学院湖南工程学院对主程
13、序文件的运行方式通常有两种:对主程序文件的运行方式通常有两种:在在MATLAB的的命命令令窗窗口口中中运运行行:在在MATLAB的的命命令令窗窗中中键键入入此此程程序序的的文文件件名名后后,系系统统就就开开始始执执行行文文件件中中的的程程序;序;在在编编辑辑窗窗口口中中运运行行:通通过过编编辑辑窗窗口口打打开开所所要要运运行行的的文文件件,然然后后再再运运行行。主主程程序序文文件件中中的的语语句句可可以以对对MATLAB工工作作空间中的所有数据进行运算操作。空间中的所有数据进行运算操作。第 3 章 MATLAB程序设计湖南工程学院湖南工程学院函数文件结构函数文件结构函函数数文文件件是是用用来来
14、定定义义子子程程序序的的。它它与与主主程程序序文文件件的的主主要要区区别别有三点:有三点:(1)由由function起头,后跟的函数名必须与文件名相同;起头,后跟的函数名必须与文件名相同;(2)有输入输出变元有输入输出变元(变量变量),可进行变量传递;,可进行变量传递;(3)除除非非用用global声声明明,程程序序中中的的变变量量均均为为局局部部变变量量,不不保保存在工作空间中。存在工作空间中。第 3 章 MATLAB程序设计湖南工程学院湖南工程学院通常,函数文件由五部分构成:通常,函数文件由五部分构成:函数定义行;函数定义行;H1行;行;函数帮助文本;函数帮助文本;函数体;函数体;注释。注
15、释。第 3 章 MATLAB程序设计湖南工程学院湖南工程学院函数定义命令函数定义命令function()格式:格式:function output1,output2,=functionname(input1,input2,.)功功能能:定定义义函函数数名名为为functionname的的函函数数(或或子子程程序序),该该函函数数的的输输出出变变量量为为output1,output2,,输出变量为,输出变量为(input1,input2,.)。例如:例如:function y=mean(x,dim)function为为函函数数定定义义的的关关键键字字,mean为为函函数数名名,y为为输输出出变变
16、量量,x和和dim为为输输入入变变量。量。注注意意:当当函函数数具具有有多多个个输输出出变变量量时时,则则以以方方括括号号括括起起;当当函函数数具具有有多多个个输输入入变变量量时时,则则直直接接用用圆圆括括号号括括起起。例例如如:functionfunctionxx,y y,zzsphere(thetasphere(theta,phiphi,rho)rho)。当当函函数数不不含含输输出出变变量量时时,则直接略去输出部分或采用空方括号表示。则直接略去输出部分或采用空方括号表示。第 3 章 MATLAB程序设计湖南工程学院湖南工程学院2.7.2 2.7.2 局部变量与全局变量局部变量与全局变量通常
17、,在MATALB工作空间中,变量有三类:由调用函数传递输入和输出数据的变量;在函数内临时产生的变量称为局部变量由调用函数空间、基本工作空间或其它函数工作空间提供的变量称为全局变量。在MATLAB中对变量以及全局变量管理提供了以下的命令:1.global格式:格式:global X Y Z功能:将变量 X、Y、Z定义成全局变量。2Persistent格式:格式:persistent X Y Z功能:将变量X、Y、Z定义成永久变量。persistent 函数只用于函数文件中,使在每次调用时保持变量的值不变。第 3 章 MATLAB程序设计湖南工程学院湖南工程学院2.7.3 2.7.3 程序的调试程
18、序的调试1.MATLAB的主程序的调试:的主程序的调试:MATLAB的查错能力很强,加上工作空间中变量的保存和显示功能不需要专门的调试命令,因此,主程序的调试很方便地进行。2.函数程序的调试:函数程序的调试:因为在函数程序中出错而停机时,其变量不作保存。虽然它也会指出出错的语句,但因为子程序中的变量(局部变量)在程序执行完毕后会自动消失,其它现场数据又无记录,会给调试带来很大困难。可采用下列措施:(1)把某些分号改为逗号,使中间结果能显示在屏幕上,作为查错的依据。(2)在子程序中适当部位加keyboard命令,到了此处,系统会暂停而等待用户键入命令。这时子程序中的变量还存于工作空间中,可以对它
19、进行检查。(3)将函数文件的第一行前加“%”号,使它成为程序文件来作初步调试。第一行中的输入变元,可改用input或赋值语句来输入,调试好后再改回为函数文件。(4)在程序中使用以下人机交互命令,也可大大提高程序的调试程度。第 3 章 MATLAB程序设计湖南工程学院湖南工程学院2.4 2.4 数据的输入输出及文件的读写 2.4.1 2.4.1 交互输入与输出命令和函数交互输入与输出命令和函数1键盘输入命令键盘输入命令input格式一:格式一:u=input(提示内容提示内容)格式二:格式二:u=input(提示内容提示内容,s)在屏幕上显示提示内容,等待从键盘输入,将输入的符号以字符串赋给文本
20、(字符串)变量u。2.菜单输入命令菜单输入命令menu功能:产生一个供用户输入的选择菜单。格式:格式:k=menu(title,选项选项1,选项选项2,选项选项n)显示以字符串变量title为标题的菜单,选择为字符变量:选项1,选项2,选项n,并将所输入的值赋给变量k。3暂停执行命令暂停执行命令pausepause 常用在M文件中,用于停止执行,直接按任意键继续执行;pause(n)暂停执行n秒后继续执行;pause on 允许一系列pause命令暂停程序执行;pause off 保证任何pause命令和pausea(n)语句不能暂停程序执行。第 3 章 MATLAB程序设计湖南工程学院湖南工
21、程学院4显示命令显示命令 disp功能:显示指定的变量或变量的内容。调用格式:调用格式:disp(变量名变量名)5按格式要求输出变量命令按格式要求输出变量命令sprintf功能:按格式要求输出变量调用格式:调用格式:sprintf(显示格式显示格式,变量变量)。2.4.2 文件输入输出命令与函数 1save功能:用以将工作空间中的变量保存到磁盘上。格式一:格式一:save 将工作空间中的所有变量保存在一个名为:“matlab.mat”的二进制格式文件中,该文件可通过load命令来重新装入工作空间。格式二:格式二:save文件名文件名 变量名变量名将工作空间中指定的“变量名”保存在指定“文件名.
22、mat”的二进制格式文件中。格式三:格式三:save文件名文件名 选项选项使用“选项”指定ASCII文件格式,将工作实间中所有变量保存到“文件名”所指定的文件中。第 3 章 MATLAB程序设计湖南工程学院湖南工程学院2.load:功能:从磁盘文件中重新调入变量内容到工作空间。格式一:格式一:load 将保存在“matlab.mat”文件中的所有变量调入到工作空间。格式二:格式二:load 文件名文件名从“文件名.mat”中调入变量,可给出全部路径。3.fopen功能:打开文件或获得打开文件信息。格式一:格式一:f_id=fopen(文件名,文件名,允许模式允许模式)以允许模式指定的模式打开“
23、文件名”所指定的文件,返回文件标识f_id;允许模式允许模式 可以是下列几个字符串之一:r :打开文件进行读(缺省型式);w:删除己存在文件中的内容或生成一个新文件,打开进行写操作;a :打开一个己存在的文件或生成并打开一个新文件,进行写操作,在文件末尾添加数据;第 3 章 MATLAB程序设计湖南工程学院湖南工程学院格式二:格式二:f_id,message=fopen(文件名,文件名,允许模式允许模式,格式,格式)功能:用指定的数据“格式”打开数据文件,返回文件标识和打开文件信息两个参数。“数据格式数据格式”。如果fopen成功打开文件,则返回文件标识f_id,message内容为空,如果不
24、能成功打开,则返回f_id值为1,message中返回一个有助于判断错误类型的字符串。有三个值是预先定义的,不能打开或关闭:0:表示标准输入,一直处于打开读入状态。1:表示标准输出,一直处于打开追加状态。2:表示标准错误,一直处于打开追加状态。4fclose功能:关闭一个或多个已打开的文件。格式一:格式一:status=fclose(f_id)关闭指定文件,返回0表示成功,返回-1表示失败。格式二格式二status=fclose(all)功能:关闭所有文件,返回0表示成功,返回-1表示失败。第 3 章 MATLAB程序设计湖南工程学院湖南工程学院5fread格式一:格式一:A,count=fr
25、ead(f_id,size,精度精度)功能:从指定文件中读入二进制数据,将数据写入到矩阵A中;可选输出count返回成功读入元素个数;f_id为整数文件标识,其值由fopen函数得到;可选参数size确定读入多少数据,如果不指定参数size,则一直读到文件结束为止,参数size合法选择有:n:读入n个元素到一个列向量;inf:读到文件结束,返回一个与文件数据元素相同的列向量;m,n:读入足够元素填充一个mn阶矩阵,填充按列顺序进行,如果文件不够大,则填充0。精度表示读入数据精度的字符串,控制读入每个值的数据位,这些位可以是整数型、浮点值或字符。格式二:格式二:A,count=fread(f_i
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB 程序设计 通信
限制150内