matlab基础

  • 格式:doc
  • 大小:64.50 KB
  • 文档页数:13

MATLAB基础知识一、简单介绍1、MATLAB俗称矩阵实验室,由美国MathWorks公司研制开发,是以矩阵计算为基础的交互式的功能强大的科学及工程计算软件。

MATLAB将高性能的数值计算和可视化集成在一块,并提供了大量的内置函数,广泛应用于数学计算和分析、自动控制、系统仿真、数字信号处理、图形图像分析、数理统计、人工智能、虚拟现实技术、通信工程等领域。

2、MATLAB带来的是最直观最简单程序开发环境,其主要特点:1)语言简洁紧凑,使用方便灵活,库函数丰富。

2)运算符丰富。

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

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

5)图像功能强大6)缺点是程序执行速度慢,由于MATLAB程序不用编译,也不用生成可执行文件,程序为解释执行,所以速度慢。

7)功能强大的工具箱是MATLAB的一大特色,包括核心部分和各种可选的工具箱,其中核心部分中有数百个核心内部函数。

工具箱分为两类:功能性工具箱和学科性工具箱。

功能性工具箱主要用来扩充其符号计算功能、图示建模仿真功能、文字处理功能以及硬件实时交互功能;学科类工具箱专业性较强,如control toolbox、signal processing toolbox、communication toolbox等,都是由该领域学术水平较高的专家编写的。

所以用户无需编写自己学科的基础程序,就能直接进行高、精、尖的研究。

二、安装和启动三、基本内容1、MATLAB启动界面启动MATLAB后进入默认界面。

第一行是菜单栏,第二行是工具栏。

三个最常用的窗口:右边最大的是命令窗口;以及左(右)上方前台为工作空间窗口;当前目录窗口;命令历史窗口。

(1)命令窗口(Command Window)是进行MATLAB操作的最主要窗口,用于输入运算命令和数据、运行MATLAB函数和脚本并显示结果。

调出命令窗口:Desktop菜单 Command Window。

注意a:“>>”为输入函数提示符,在提示符后输入数据或运行函数;注意b:“%”其后面是用于解释的文字,不参与计算;注意c:在语句末尾添加“;”,可以防止输出结果显示在屏幕上,在创建大矩阵时非常有用;注意d:ans为answer的缩写,它是MATLAB默认的系统变量;注意e:clear为清除工作空间中的变量命令;注意f:clc为清屏命令。

命令窗口中显示数值计算结果有一定格式,默认为短格式,即保留小数点后面4位有效数字,对于大于1000的数值,使用科学计数法表示。

例1-1 在命令窗口输入 1.8,显示为 1.8000; 输入1800.1; 显示为1.8001e+003; 输入x=1.8; y=1800.1; x+y按<Enter>键,显示为ans=1.8019e+003注意:命令窗口如果不执行命令且换行,同时按下<Shift+Enter>键(2)命令历史窗口用于显示记录MATLAB启动时间和命令窗口中最近输入的所有MATLAB命令,可再次执行。

调出命令历史窗口:Desktop菜单→Command History(3)工作空间窗口工作空间窗口由一系列变量组成,可通过使用函数、运行M文件或者载入已存在的工作空间来添加变量。

可以显示每个变量的名称(Name)、值(Value)、数组大小(Size)、字节大小(Bytes)和类型(Class)。

调出工作空间:Desktop菜单→Worksplace有关几个常见的命令:·who : 列出当前工作空间中的所有变量;·whos : 列出变量和它们的大小、类型;·save :将工作空间中的部分或全部变量保存到一个二进制文件(.mat)·load : 将二进制文件(.mat)中的变量装入工作空间。

(4) 当前目录窗口(Current Directory)用于搜索、查看、打开、查找和改变MATLAB路径和文件。

调出当前目录窗口:Desktop菜单 Current Directory(5)菜单栏和工具栏2、数组与矩阵(1) 数组1) 数组的构造a)直接法:用空格或逗号间隔数组元素,然后用中括号“[ ]”括起来。

例1-2x=[0 1 2 3] 或x=[0,1,2,3]句尾直接按下<Enter>键,显示数组;句尾加分号后按<Enter>键,不显示数组。

b)增量法:格式:x=first:step:last; %初值:增量:终值,增量默认为1。

例1-3 输入x=0:1:3或x=0:3;输入x=1:5:100 输入10:-1:1c)linspace函数法格式:x=linspace(first:last:num); %初值:终值:元素个数,需要指定首尾值和元素个素,步长step=(last-first)/(num-1);例1-4 输入x=linspace(0,3,4)2)数组的运算注意:点运算只有点乘、点乘方、点除三个,表示对对应元素之间的运算。

例1-5 已知a=[1 2 3],b=[2 4 6], c=3;执行命令写出下列结果:a+b; a-b; a+c; a*c; a.*b; a.\b; a./b; a.^b; a.^c; c.^a(2)矩阵1)矩阵的创建a) 在命令窗口创建例1-6 x=[1 2 3;4 5 6;7 8 9], 看执行结果b) 通过函数创建例1-7 >>x=0:pi/4:pi;>>y=sin(x) 求结果c)通过特殊矩阵创建,如zeros(m,n); %生成m行n列全零矩阵ones(m,n); %生成m行n列全1矩阵eye(n);%生成n行n列单位矩阵magic(n); %生成n行n列魔方矩阵d)获取矩阵的元素:A(row, column)例1-8 >>A=magic(5) 观察执行结果>>A(3,2) 观察执行结果>>A(:,3:5) 观察执行结果,表示取A的第3列到第5列组成的矩阵>>B=[1 3 5];>>C=A(B,4) %表示取A的第1,3,5行元素组成的矩阵2)矩阵的运算例1-9 已知A=[1 2;3 4], B=[4 3;2 1];分析下列执行结果>>100+A>>A*B %矩阵相乘>>A.*B %A 中的元素乘以B 中的对应元素:A(i,j)*B(i,j)3. 多项式的计算(1) 多项式的建立系数矢量直接输入法:如poly2sym([1,-4,3,2]),返回 x^3-4*x^2+3*x+2,表示32432x x x -++(2) 多项式的四则运算例1-10 求多项式223x x ++与多项式的乘积223x x -+>>p1=[1 2 3];>>p2=[2 -1 3];>>conv(p1,p2) % conv(p1,p2)用于求多项式p1和p2的乘积,其中,p1和p2是两个多项式系数向量。

(3) 多项式的导数例1-11 求多项式434235x x x +++导数>>p1=[4 2 0 3 5];>>polyder(p1) % polyder(p1)为求多项式p1的导数(4) 多项式求值例1-12 已知多项式434235x x x +++ , 分别取x=1和23⨯矩阵为自变量计算该多项式的值。

>> p1=[4 2 0 3 5];>>polyval(p1,1) %polyval 函数用来求代数多项式的值,polyval(P,x) >>polyval(p1,[1 2 3;4 5 6])(5)多项式求根例1-13 求多项式434235x x x +++的根。

>> p1=[4 2 0 3 5];>>x=roots(p1) %求多项式根的函数格式为:x=roots(P)4. MATLAB 程序设计(1) M 文件1) M 文件概述用MATLAB 语言编写的程序,称为M 文件。

M 文件分为:脚本文件(Script File)和函数文件(Function File).脚本文件:在MATLAB 的工作空间内对数据进行操作。

函数文件:可接受输入参数并返回输出参数,第一行包含function 。

例1-14 分别建立脚本文件和函数文件,将华氏温度转换f 为摄氏温度c 。

转换公式:c=5*(f-32)/9程序1(脚本文件): 首先建立脚本文件并以文件名f2c.m 存盘。

clear; %清楚工作空间中的变量f=input(‘Input fahrenheit temperature:’);c=5*(f-32)/9;然后在MATLAB 的命令窗口输入f2c ,将会执行程序,执行情况: Input fahrenheit temperature: 73c=22.7778程序2(函数文件):首先建立函数文件f2c.mfunction c=f2c(f);c=5*(f-32)/9;然后在MATLAB的命令窗口条用该函数文件。

clear;y=input(‘Input fahrenheit temperature:’);x=f2c(y);输出情况:Input fahrenheit temperature: 70c=21.11112) M文件的建立与打开a) 建立新的M文件:菜单操作——从MATLAB主窗口File菜单中选择New菜单项,再选择M-file命令,屏幕上将出现MATLAB文本编辑器窗口。

输入内容并存盘。

b) 打开已有的M文件:菜单操作——File->Open命令,选择相应文件,编辑后存盘。

(2) 程序控制结构1) 顺序结构数据的输入用input函数,格式:A=input(‘提示信息’);数据的输出用disp函数,格式:disp(输出项)程序的暂停:pause(延迟秒数),直接使用pause,将暂停程序。

若要强行重视运行程序使用Ctrl+C命令2) 选择结构a) 但分支if语句if 条件语句组endb) 双分支if语句if 条件语句组1else语句组 2endc) 多分支if语句(同C语言)d) switch语句(同C语言)3) 循环结构a) for语句for 循环变量=表达式1:表达式2:表达式3 循环体语句endb) while语句while(条件)循环体语句end(3) 函数文件1) 函数文件的基本结构函数文件由function语句引导,基本结构:function 输入形参数=函数名(输入形参数)注释说明语句函数体语句当多个输出参数时,用方括号括起来例1-15 编写函数文件,求半径为r的圆的面积和周长函数文件如下:function [s,p]=fcircle(r)% r为圆的半径,s面积,c为周长s=pi*r*r;c=2*pi*r;在命令窗口中输入:>>[s,p]=fcircle(10)s=314.1593p=62.83192) 函数的调用格式:[输出实参数]=函数名(输入实参数表)3) 全局变量和局部变量局部变量作用范围仅限于本函数。