第1-2章MATLAB基本知识
- 格式:doc
- 大小:56.00 KB
- 文档页数:6
MATLAB讲义第一章 MATLAB系统概述1.1 MATLAB系统概述MATLAB(MATrix LABoratory)矩阵实验室的缩写,全部用C语言编写。
特点:(1)以复数矩阵作为基本编程单元,矩阵运算如同其它高级语言中的语言变量操作一样方便,而且矩阵无需定义即可采用。
(2)语句书写简单。
(3)语句功能强大。
(4)有丰富的图形功能。
如plot,plot3语句等。
(5)提供了许多面向应用问题求解的工具箱函数。
目前,有20多个工具箱函数,如信号处理、图像处理、控制系统、系统识别、最优化、神经网络的模糊系统等。
(6)易扩充。
1.2 MATLAB系统组成(1)MATLAB语言MATLAB语言是高级的矩阵、矢量语言,具有控制流向语句、函数、数据结构、输入输出等功能。
同时MATLAB又具有面向对象编程特色。
MATLAB语言包括运算符和特殊字符、编程语言结构、字符串、文件输入/输出、时间和日期、数据类型和结构等部分。
(2)开发环境MATLAB开发环境有一系列的工具和功能体,其中大部分具有图形用户界面,包括MATLAB桌面、命令窗口、命令历史窗口、帮助游览器、工作空间、文件和搜索路径等。
(3)图形处理图形处理包括二维、三维数据可视化,图像处理、模拟、图形表示等图形命令。
还包括低级的图形命令,供用户自由制作、控制图形特性之用。
(4)数学函数库有求和、正弦、余弦等基本函数到矩阵求逆、求矩阵特征值和特征矢量等。
MATLAB数学函数库可分为基本矩阵和操作、基本数学函数、特殊化数学函数、线性矩阵函数、数学分析和付里叶变换、多项式和二重函数等。
(5)MATLAB应用程序接口(API)MATLAB程序可以和C/C++语言及FORTRAN程序结合起来,可将以前编写的C/C++、FORTRAN语言程序移植到MATLAB中。
1.3 MATLAB的应用范围包括:MATLAB的典型应用包括:●数学计算●算法开发●建模、仿真和演算●数据分析和可视化●科学与工程绘图●应用开发(包括建立图形用户界面)以矩阵为基本对象第二章 Matlab基础2.1 MATLAB快速入门(1)搜索路径搜索路径也被看作是MATLAB的路径,其包含的文件被认为在路径上。
MATLAB基础知识及常用功能介绍第一章:MATLAB简介及安装MATLAB是一种强大且广泛应用的数值计算软件,它提供了许多用于科学计算和工程设计的功能。
MATLAB是矩阵实验室(Matrix Laboratory)的缩写,其主要特点是在操作矩阵和各种数学函数上非常高效。
要安装MATLAB,只需下载安装程序然后按照提示进行安装即可。
第二章:MATLAB基本操作在MATLAB中,可以使用各种命令来进行基本的数学运算,例如加减乘除、幂运算等。
此外,还可以定义变量、矩阵和向量,并进行复杂的数学运算。
提示:使用分号可以取消输出结果。
第三章:MATLAB脚本和函数脚本是一系列MATLAB命令的集合,可以保存并重复执行。
函数是一段具有输入和输出的可执行代码块,可以通过函数名和输入参数来调用。
编写脚本和函数有助于提高代码的可读性和可重复性。
第四章:MATLAB图形化界面MATLAB提供了图形化界面(GUI)工具箱,用于创建交互式应用程序和图形用户界面。
利用GUI工具箱,可以通过拖拽和放置的方式创建界面,并通过设置属性和回调函数实现交互功能。
第五章:MATLAB数据可视化MATLAB拥有丰富的数据可视化功能,可以将数据以各种图表形式呈现出来,如散点图、柱状图、曲线图等。
此外,还可以对图表进行自定义设置,如添加图例、调整轴范围、添加标题等。
第六章:MATLAB图像处理MATLAB提供了强大的图像处理工具箱,可以用于图像的滤波、锐化、模糊、边缘检测等操作。
此外,还可以进行图像的变换和特征提取,用于图像识别和分析。
第七章:MATLAB信号处理MATLAB信号处理工具箱提供了一系列用于处理、分析和合成信号的函数和工具。
可以进行信号滤波、频谱分析、时域分析等操作。
此外,还可以进行数字滤波器设计和滤波器实现。
第八章:MATLAB数学建模MATLAB是数学建模的重要工具,可以用于建立各种数学模型并进行仿真和优化。
可以利用MATLAB解方程、求解微分方程、进行符号计算等,用于解决各种实际问题。
第1章MATLAB操作基础1.1 MATLAB概述1.1.2 MATLAB的主要功能1.数值计算MATLAB以矩阵作为数据操作的基本单位,还提供了十分丰富的数值计算函数。
2.绘图功能可以绘制二维、三维图形,还可以绘制特殊图形(与统计有关的图,例如:区域图、直方图、饼图、柱状图等)。
3.编程语言MATLAB具有程序结构控制、函数调用、数据结构、输入输出、面向对象等程序语言特征,而且简单易学、编程效率高。
4.MATLAB工具箱MATLAB包含两部分内容:基本部分和各种可选的工具箱。
MATLAB工具箱分为两大类:功能性工具箱和学科性工具箱。
1.1.3MATLAB语言的特点❖语言简洁紧凑,使用方便灵活,易学易用。
例如:A=[1 2 3;4 5 6;7 8 9]一条语句实现了对3x3矩阵的输入。
❖语句功能强大,一条语句相当于其它语言的一个子程序,例如fft。
❖语句简单,内涵丰富。
同一个函数有不同的输入变量和输出变量,分别代表不同的含义。
❖Matlab既具有结构化的控制语句(if、for、while)又支持面向对象的程序设计。
❖方便的绘图功能。
❖包含功能强劲的工具箱。
❖易于扩展。
1.1.4 初识MATLAB例1-1 绘制正弦曲线和余弦曲线。
x=[0:0.5:360]*pi/180;plot(x,sin(x),x,cos(x));例1-2 求方程3x4+7x3+9x2-23=0的全部根。
p=[3,7,9,0,-23]; %建立多项式系数向量x=roots(p) %求根例1-3 求积分quad('x.*log(1+x)',0,1)例1-4 求解线性方程组。
a=[2,-3,1;8,3,2;45,1,-9];b=[4;2;17];x=inv(a)*b1.2 MATLAB的运行环境与安装1.2.1 MATLAB的运行环境硬件环境:(1) CPU(2) 内存(3) 硬盘(4) CD-ROM驱动器和鼠标软件环境:(1) Windows 98/NT/2000 或Windows XP(2) 其他软件根据需要选用1.2.2 MATLAB的安装运行系统的安装程序setup.exe,可以按照安装提示依次操作。
MATLAB基础知识及使用方法第一章:MATLAB简介与环境介绍1.1 MATLAB概述MATLAB是一种高级编程语言和数值计算环境,广泛应用于科学计算、工程设计、数据分析和算法开发等领域。
它提供了强大的数值计算工具和图形绘制功能,并有丰富的库函数和工具箱可供使用。
1.2 MATLAB环境介绍MATLAB的主要界面包括命令窗口、编辑器、工作区和命令历史等。
命令窗口用于交互式执行命令和脚本,编辑器用于编写和编辑脚本文件,工作区用于显示和管理变量,命令历史用于查看和管理执行过的命令。
第二章:MATLAB基本语法2.1 变量和数据类型在MATLAB中,变量可以通过简单的赋值来创建,并且不需要事先声明变量类型。
常见的数据类型包括数值类型(整数、浮点数)、字符类型和逻辑类型(布尔型)等。
MATLAB还提供了复数类型和矩阵类型,具有丰富的数值计算功能。
2.2 运算符和表达式MATLAB支持常见的数学运算符,如加减乘除、取余和乘方等。
此外,还提供了矩阵运算符和逻辑运算符,方便处理矩阵和逻辑表达式。
表达式可以由变量、常数和运算符组合而成,并且支持函数调用。
2.3 控制流程MATLAB提供了条件语句(if-else)、循环语句(for、while)和函数等控制流程结构,以实现不同的程序逻辑。
条件语句根据条件的真假执行不同的代码块,循环语句重复执行一段代码块,函数封装了一段可重复使用的代码。
第三章:MATLAB图形绘制3.1 二维图形绘制MATLAB提供了丰富的函数和工具箱,以绘制各种二维图形,如线图、散点图、柱状图和饼图等。
用户可以自定义图形样式、坐标轴刻度、图例和注释等,以满足不同的数据可视化需求。
3.2 三维图形绘制除了二维图形外,MATLAB还支持绘制三维图形,如曲面图和体积图等。
通过调整视角、设置颜色映射和光照效果,用户可以更直观地表达三维数据的特征和分布情况。
3.3 动态图形绘制MATLAB中的图形绘制功能不仅限于静态图形,还可用于生成动态图形。
第1章MA TLAB基本知识1.MA TLAB的功能与特点2.系统要求3.安装4.MA TLAB的启动与退出5.命令行编辑器6.MA TLAB搜索路径第2章基本操作命令一.基本知识1.简单矩阵的输入2.矩阵元素通过矩阵修改/扩充矩阵c.大矩阵中抽取一小矩阵b=a(1:3,:)3.复数和复数矩阵4.MA TLAB语句和变量语言:变量=表达式[;]a为:表达式[;]5.固定变量ans:系统默认变量名.Eps:容许误差Pi:即是πInf:正无穷大Nan:表示不定值,它由Inf/Inf或o/o定算6.获取工作空间信息;who 显示工作空间中何存的变量名.whos 显示工作空间中各变量的属性(它包括大小元素个数,所占用的字节数;元素精度.7.退出和何存工作空间退出:quit或exit保存:save文件名变量名列表装入:load 文件名变量名列表8.常数与算术运算符.+..-- * /.(右除)\ (左除). ^幂指数9. 转入格式, formatformat shortformat longformat +format compat (紧奏格式),主消去矩阵之间的间隔行.10.函数①..MA TLAB的内部函数②..MA TLAB系统附带的各种工具箱中的M文件所提供的实用函数③由用户自己增加的函数11. 帮助命令三矩阵运算1.矩阵转置X=[-1,0,2]2.矩阵加,减要求:A,B两矩阵整数相同:对应位量上的元素相加.减矩阵与标量加.,减: 矩阵中的每个元素都与标量进行加.,减运算3.矩阵乘法要求:前一点矩阵的列数等于后一点矩阵的行数①矩阵与点矩阵相乘②矩阵与标量相乘每个元素均乘以某一个标量4.矩阵的附除法, (左除\). (右除/)a\b=inv(a)*b a×=b x=a-1bb/a=b*inv(a) x*a=b x=b*a-15.矩阵的乘方^当A为方阵,P为大于是的整数时.6.矩阵超越数子函数超越数字函数可以在函数名为加M构成,如. Expm(a),sgvlm(a)logm(a)分别为矩阵指数,矩阵开方和矩阵对数函数poly 特征多项式det 行列式值三,数理运算(元素对元素的算术运算)在运算符前加上句点(.)就表示数组运算1.加法运算同距阵加减法运算2.乘除运算符*——数组乘法运算符\——左除/——右除上面除以下面的3.平方四.关系运算五.逻辑运算六.数字函数基本数字函数,主从作用于数组的每一个元素a=[1 2 3 ;4 5 6];b=f:x(pi*a);c=cos(pi*6);四,向量和距阵操作(一)向量产生1.[变量=]n:s:m产生从n到m,步长为s的一系列值2.用linspace 函数和logspace函数产生格式:linspace(n,m,k)产生一个从n到m等间隔的向量,其点数为kx=cinspace(1.100.3)1.0000 50.5000 100.0000格式2: logspace(n,m,k)产生一个等对数增量的向量y=cogspace(1.100.2)二.下标三.在下标中使用0-1向量四.空矩阵语句x=[ ]分配一个0*0的矩阵X,这同后读操作在使用X时不会产生错误五.特殊矩阵矩阵函数zeros——零矩阵ones——常数矩阵rand——均匀分布的随机数矩阵randn——正态分布的随机数矩阵六.构造大矩阵七.矩阵操作rodqo——点矩阵旋转fliplr——点矩阵作左右翻转flipua——点矩阵作上下翻转第三章高级操作命令一.数据分析(一)面向列的数据分析1.ASCII码数据文件的建立与获取任何软件下,如Win98附件下的写字板程序存盘时,文件各要带扩展名(.TXT或DA T)获取:load 盘符\(路径)文件名,扩展名如load c:\isg\ls.txt将在工作空间中产生一个ls矩阵2.基本函数max min mean median(中值) std——标准差sort diff 近似值corrcoef ——机关函数cov——协方差矩阵(二)缺值(三)删除无关项(四)加归二.矩阵函数(一)三角分解1.[l,u]=cu(a)l为准量换后的下三角阵。
U为上三角阵2.X=inv(a) 求a的递阵x=ynv(a) *inv(L)y=det(a) 求a 的行列式值y=det(u)*det(l)求解ax=b时,边可以利用lu分解来简化计算ax=b [l,u]=lu(a)x=a\b y=c\bx=u\g(二)正交分解,可将方阵和长方矩阵分解成一个正交矩阵和一个上三角阵的乘积(三)奇异值分解,常用函数rank(a)求矩阵a的(四)特征值分解1.[x.d]=eig(a)x——特征向量d——徨征值(对角线元素)2eig(a)或x=eig(a)仅返回矩阵的特征值三.多项式(一)多项式常用函数1.用按降幂排列的多项式系数构成的行向量来表示多项式p=anx n+anx n-1+an-2x n-2+….+a1x1+ao2.常用函数poly——求矩阵的特征多项式roots——求多项式的根polyval——求未知数为某人数字值时的多项式的值(二)卷积和解卷积1.向量卷积和解卷积对应于多项式的乘法和除法conv和deconv分别为卷积函数和解卷积函数如a(s)=s2+2s+3 b(s)=4s2+5s+6a=[1 2 3]b=[4 5 6]c=conv(a b )c=4 13 28 27 18 4s4+13s2+28s2+27s+18[g r]=deconv(c a)g=4 5 6r=0 0 0 0 02.同polyder求c=a*b的导数g=polyder(c)同[g d]=polyder(a,d)g-3 -12 -3d=16 40 73 60 36a(s)\b(s)的导数(-3s2-12s-3)\(16s4+40s3+73s2+60s+36)(三)多项式拟合原理:最小二的意义上,拟合给数据的多项式系数p=polyfi+(x,y,n)x,y为已知的横坐标和纵坐标向量n 为多项式的次数举例x1 x2 y y=a 0+a 1x 1+a 2x 2x1=[o.2 0.5 0.6 0.8 1.0 1.1]x2=[0.1 0.3 0.4 0.9 1.1 1.4]y=[0.17 0.26 0.28 0.23 0.27 0.24]a 0+a 1x 1+a 2x 2=ya 0 +a 1 +a 2 =x=[ones(size(x1)) x1 x2]a=x\ya=0.108=0.4844=-0.28473.多项式一阶、二阶….n 阶拟合polyfit(x,y,n) p48-50(四) 双重函数双重函数是指函数的输入参数为数学函数而不是数值矩阵 主要同于数值积分,非线性方程求解,做分方程求解1.函数的文件表示m 用的函数表示m 函数格式: function 输出参数=函数名(输入参数)函数体中至少有一条语句给输出参数赋值function y=A(x)y=3.0/((x-4).n2+0.01)+5/((x-13).n2+0.04)+62.函数的绘制fplot(函数名,区间)区间=[x 最小 x 最大 y 最小 y 最大]=[x min x max y min y max ]fplot(A,[-5,15]) 默认横坐标区间, 函数名必须单引号引起来fplot(A,[-5 ,15 ,100,140])3.求函数的极值和根①函数fmin_-----求单变量函数的最小值格式:x=f(函数,x1,x2,option)x1,x2指定求极小值的区options 第1个分量为正,则显示函数的定行步骤如x=fmin(A,0,3,1)②函数fmins 同于求多求量函数的极小值格式:fmins(函数名,初始极值向量)步骤:先建立含有两个变量的函数twv-war111111 0.1 0.3 0.4 0.9 1.1 1.4 0.2 0.50.6 0.8 1.0 1.1 1 0.2 0.1 1 0.5 0.3 1 0.6 0.4 1 0.8 0.9 1 1.0 1.1 1 1.1 1.4A0 A1 A2functim b=two-var(v)x=v(1), y =v(2)b=x^2+y^2+x^2*yx2③fzero求单变量函数值为0的自变量的值a=fzero(‘函数名’,0,2)函数在x=0.2附近的值(四)数值积分迭代算法求数值积分guad采用自适应的辛普生法guad8采用的Neiton cote8 panel法则Q=g uad(‘F’,A,B,TOL,TRACE)F——函数名,A,B指定积分区间TOL迭代的误差限TRACE不为0,将会自生所采用的积分点图形1.一维积分3.二维积分ablguad(五) 常做分方程的值问题。