您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 总结/报告 > 第一次汇报(请重做)
第一次汇报2015.1.25秦鹏杰一、MATLAB矩阵及其运算1.变量和数据操作1.1变量与赋值MATLAB赋值语句有两种格式(1)变量=表达式(2)表达式1.2预定义变量(驻留在系统本身定义的变量)注意:尽量避免对这些变量再赋值。需要记住的常用预定义变量:ans,pi,i,j,inf,Inf等等。clear命令用于删除MATLAB工作空间中的变量,clc命令用于清除命令窗口中的指令。who和whos这两个命令用于显示在MATLAB工作空间中已经驻留的变量名清单。1.3MATLAB常用的数学函数:(1)abs函数可以求实数的绝对值,复数的模。(2)用于取整数的函数有fix,floor,ceil,round。2.矩阵的建立2.1直接输入法同一行元素之间用空格或者逗号分隔,不同行的元素之间用分号分隔,也可以用回车键代替分号。2.2利用M文件建立矩阵针对较大且比较复杂的矩阵。(1)启动有关编辑程序或者MATLAB文本编辑器,并输入待建矩阵。(2)把输入的内容以纯文本方式存盘(设文件名为.m)。(3)在MATLAB命令窗口中输入文件名,即运行该M文件。2.3利用冒号表达式建立一个向量一般格式:e1:e2:e3,其中e1为初始值;e2为步长;e3为终止值。表示以e1开始到e3结束,以步长e2自增的行向量。2.4建立大矩阵大矩阵可由方括号中的小矩阵或向量建立起来。3矩阵的拆分MATLAB允许用户对一个矩阵的单个元素进行赋值和操作。如果给出的行下标或列下标大于原来矩阵的行数和列数,则MATLAB将自动扩展原来的矩阵,未赋值的自动变为0.4.特殊矩阵4.1通用的特殊矩阵常用的特殊矩阵函数有:zeros:产生全0矩阵,eye:产生单位矩阵;ones:产生全1矩阵。其调用格式为:zeros(m):产生M*M零矩阵。zeros(size(A)):产生与矩阵A同样大小的零矩阵。5.MATLAB运算5.1算术运算(1)基本算术运算MATLAB的基本算术运算有:加(+),减(—),乘(*),/(右除),\(左除),^(乘方)。一个标量也可以和其他不同维数的矩阵进行加减运算。矩阵乘法必须满足A和B相乘,要求A的列数与B的行数相等。矩阵除法:A\B等效于A的逆左乘B矩阵,也就是inv(A)*B。(2)点运算点运算符号有.*,./,.\和.^。两矩阵进行点运算是指他们的对应元素进行相关运算,要求两矩阵的维参数相同。二、函数文件1.M文件概述通常M文件可以根据调用方式的不同分为两类:命令文件和函数文件,他们的扩展名均为.m。主要区别:命令文件可以直接运行,在MATLAB命令窗口中输入命令文件的名字,就会顺序执行命令文件的命令,而函数文件不能直接运行,而要以函数调用的方式来调用。2.数据的输入input函数的调用格式为:A=input(提示信息,选项);执行以上语句后,首先得屏幕上显示提示信息,然后等待用户从键盘输入A矩阵的值。3.数据的输出调用格式为:disp(输出项),其中输出项既可以为字符串,也可以为矩阵。4.函数文件的基本结构函数文件由function语句引导,基本结构为:function[输出形参表]=函数名(输入形参表)注释说明部分函数体语句5.函数调用函数文件编制好后,就可以调用函数进行计算,调用的一般格式为:[输出实参表]=函数名(输入实参表)三、文本文件的读写操作1.读文本文件fscanf函数可以读取文本文件的内容,并按指定格式存入矩阵。其调用格式为:[A,COUNT]=fscanf(fid,format,size);读取文本文件的函数还有fgetl和fgets他们读取一行数据,当作字符来处理。2.写文本文件fprintf函数调用格式为:COUNT=fprintf(fid,format,A)。MATLAB文件打开操作:fid=fopen(文件名,’打开方式’).常见的打开方式有:’r’,’r+’,’w’,’w+’,’a’,’a+’。关闭文件:文件在进行完读,写操作后,应及时关闭,以免数据丢失。关闭文件用fclose函数,调用格式为:sta=fclose(fid)。3.其他的文件读写函数拓展a.fread函数可以读取二进制文件的数据,并将数据存入矩阵。其调用格式为:[A,COUNT]=fread(fid,size,precision)其中A用于存放读取的数据,COUNT返回所读取的数据元索个数,fid为文件句柄为可选项,若不选用则读取整个文件内容,若选用则它的值可以是下列值:(1)N表示读取N个元素到—个列向量。(2)lnf表示读取整个文件。(3)[M,N]表示读数据到M*N的矩阵中,数据按列存放。b.fwrite函数按照指定的数据类型将矩阵中的元素写入到文件中。其调用格式为:COUNT=fwrite(fid,A,precision)其中COUNT返回所写的数据元素个数,fid为文件句柄,A用来存放写入文件的数据,precision用于控制所写数据的类型,其形式与fread函数相同。例如:fid=fopen[‘aaa.bin’,’w’);fwrite(fid,x,’float’);将矩阵x中的数据用浮点格式写入aaa.bin文件。四、绘制曲线1.单根二维plot函数的基本调用格式为:plot(x,y),其中x,y为长度相同的向量,分别用于存储x坐标和y坐标数据,x,y所包含的元素个数相等,y(i)是x(i)点的函数值。例如:t=0:0.1:2*pi;x=t.*sin(3*t);y=t.*sin(t).*sin(t);plot(x,y)2.绘制多根二维曲线注意:linspace函数的功能。(1)当x是向量,y是有一维与x同维的矩阵时。(2)当x,y是同维矩阵时,则x,y对应列元素为横纵坐标,曲线条数等于矩阵的列数。例如:x=0:pi/100:2*pi;y=[sin(x);1+sin(x);2+sin(x)];plot(x,y)3.绘制三维图形最基本的三维图形函数为plot3,其调用格式为:plot3(x1,y1,z1,选项,x2,y2,z2,选项..........)。其中每一组x,y,z组成一组曲线的坐标参数。当x,y,z是同维向量时,则x,y,z对应元素构成一条三维曲线。当x,y,z是同维矩阵时,则x,y,z对应列元素绘制三维曲线,曲线条数等于矩阵列数。例如:t=0:pi/100:2*pi;x=sin(t);y=cos(t);z=t.*sin(t).*cos(t);plot3(x,y,z);gridon4.其他二维图形二维数据曲线图除采用直角坐标外,还可以采用对数坐标或者极坐标。(1)对数坐标图形MATLAB提供了绘制对数和半对数坐标曲线的函数,调用格式为:semilogx(x1,y1,选项1........)semilogy(x1,y1,选项1........)loglog(x1,y1,选项1............)其中选项的定义与plot函数完全一致,不同的是坐标函数。loglog函数使用全对数坐标,x,y轴采用对数刻度,semilogx采用半对数坐标,x轴为常用对数刻度,而y轴仍然保持线性刻度,semilogy同理可得。例如:x=0:0.1:10;y=10*x.*x;subplot(221);semilogx(x,y);subplot(222);semilogy(x,y);subplot(223);loglog(x,x);(2)极坐标:polar函数常用来绘制极坐标,其调用格式为:polar(theta,rho,选项),其中theta为极坐标极角,rho为极坐标矢径,选项的内容与plot一样。例如:t=0:pi/50:2*pi;r=sin(t).*cos(t);polar(t,r);注:subplot函数使用方法:subplot(mnp),subplot(mnp)或者subplot(m,n,p);m表示图形排成m行,n表示图形排成n列,p表示图所在位置(从左往右,从上往下)。5.其他三维图形三维图形的条形图,杆图,饼图和填充图等特殊图形,他们的函数分别为bar3,stem3,pie3和fill3。bar3函数绘制三维条形图,常用的调用格式:bar3(y)bar3(x,y)第一种格式中,y的每一个元素对应于一个条形。第二种格式在x指定位置上绘制y中元素的条形图。stem3函数绘制离散序列数据的三维杆图,常用调用格式:stem3(z)stem3(x,y,z)第一种格式将数据序列z表示为从xy平面向上延伸的杆图,x和y自动生成。第二种格式在x和y指定的位置上绘制数据序列z的杆图,x,y,z的维数必须相同。pie3函数绘制三维饼图,常用的调用格式:pie3(x)其中x为向量,用x中的数据绘制一个三维饼图。fill3函数等效于三维函数fill,可在三维空间内绘制出填充过的多边形,常用格式为:fill3(x,y,z,c)使用x,y,z作为多边形的顶点,而c指定了填充的颜色。5.图形标注有关图形标注函数的调用格式有:title(图形名称)xlabel(x轴说明)ylabel(y轴说明)text(x,y图形说明)五、程序举例例:用筛选法求某自然数范围内的全部素数。m=input(‘m=’);P=2:m;fori=2:sqrt(m)n=find(rem(p,i)==0&p~=i);p(n)=[];endp
本文标题:第一次汇报(请重做)
链接地址:https://www.777doc.com/doc-2201457 .html