1MATLAB
1 Matlab系统环境
• 另外,也可以通过符号计算来解。命令如 下: • syms x y z • [x,y,z]=solve(2*x+3*y-z-2,8*x+2*y+3*z-4,... • 45*x+3*y+9*z-23) • 结果:
• • • • • • • • • • • • •
x= 151/273
y=
8/39
1.1.3 Matlab功能演示 例1.1 分别绘制函数y=2-|x|和y=sinx的曲线 命令如下: x=-2*pi:pi/180:2*pi; plot(x,2.^(-abs(x)), ':',x,sin(x));
• • • • • • • • • •
例1.2 求方程2x5-3x3+71x2-9x+13=0的全部根 p=[2,0,-3,71,-9,13]; x=roots(p) 结果: x= -3.4914 1.6863 + 2.6947i 1.6863 - 2.6947i 0.0594 + 0.4251i 0.0594 - 0.4251i
• • • • • • • •
例1.3 求解线性方程组 2x+3y-z=2 8x+2y+3z=4 45x+3y+9z=23 命令: a=[2,3,-1;8,2,3;45,3,9]; b=[2;4;23]; x=inv(a)*b
• 结果: • x= • 0.5531 • 0.2051 • -0.2784 • 说明:第三条命令也可以写为x=a\b
1.4 Matlab帮助系统
• 1.4.1 帮助命令 • 1 help命令
• 查询函数语法的最基本方法,查询信息直接显示在命令窗口。例如:help magicຫໍສະໝຸດ • 2 lookfor命令
实验1-Matlab基本与图像处理基本操作
图像处理工具箱简介
01
MATLAB图像处理工具箱是MATLAB软件中一个专门用于图像处理的工具箱, 它提供了一套完整的图像处理和分析工具,包括图像读取、显示、变换、滤波 、增强、分割、特征提取等功能。
02
该工具箱支持多种图像格式,如BMP、JPG、PNG、TIFF等,并提供了丰富的 图像处理函数和算法,方便用户进行图像处理和分析。
对未来学习的展望
• 深入学习图像处理算法:在未来的学习中,我们将进一步深入学习图像处理的 各种算法和原理,包括图像分割、特征提取、目标检测等,以便更好地应用在 实际问题中。
• 掌握更多图像处理软件:除了Matlab软件外,我们还将学习掌握其他常用的 图像处理软件,如OpenCV、Python图像处理库等,以便更灵活地处理各种 图像问题。
02
学习图像处理基本 操作
了解图像处理基本概念,学习图 像读取、显示、保存等基本操作。
03
掌握图像处理常用 函数
熟悉MATLAB中图像处理工具箱 的常用函数,如图像调整、滤波、 边缘检测等。
实验环境准备
MATLAB软件
确保计算机已安装MATLAB软件,并熟悉软件基 本操作。
图像处理工具箱
安装并配置MATLAB图像处理工具箱,以便进行 图像处理实验。
• 加强实验数据分析处理能力:在未来的实验中,我们将更加注重实验数据的分 析和处理,学习掌握更多的数据处理方法和技巧,以便更准确地评估实验结果 和性能。
• 拓展应用领域:图像处理技术在实际应用中具有广泛的应用领域,如医学影像 处理、智能交通、安全监控等。在未来的学习中,我们将积极探索这些应用领 域,并尝试将所学的图像处理技术应用到实际问题中。
使用图像处理工具箱中的特 征提取函数和分类器函数, 对图像进行特征提取和分类 识别。例如,可以使用灰度 共生矩阵提取图像纹理特征, 然后使用支持向量机(SVM) 进行分类识别。
实验1_Matlab操作入门
实验一 Matlab操作入门实验目的:1.了解Matlab的工作环境。
掌握help命令的使用。
了解general函数库中有哪些常用的函数,掌握who, whos, clear, save, load 等命令的使用。
2.掌握矩阵的输入方法;掌握利用elmat函数库中一些函数,如linspace, logspace, zeros, ones, eye, rand, randn, magic等创建矩阵的方法。
3.了解elmat函数库中的预定义变量。
4.掌握elmat函数库中diag, blkdiag, triu, tril, fliplr, flipud, rot90等函数的用法。
5.掌握elmat函数库中ndims, size, numel, length,disp等函数的使用。
6.掌握datafun函数库中的一些基本统计函数max, min, mean, median, sum, prod 等的基本用法。
7.掌握matfun函数库中的一些基本矩阵操作函数的使用:inv(A)—求矩阵A的逆,det(A)—求矩阵A的行列式值, rank(A)-求矩阵的秩,trace(A)-求矩阵A的迹(即主对角线元素之和),norm(A)-求向量或矩阵的范数,cond(A)-求矩阵A的条件数,etc。
实验内容:一、Matlab环境1.启动Matlab,了解Matlab的主要窗口:命令窗口,当前目录窗口,工作空间窗口,历史命令窗口。
2.输入help, 了解你的计算机上安装的Matlab中,有哪些帮助主题(函数库、工具箱)。
3.输入 help general(通用命令函数库), 了解Matlab中有哪些通用的命令。
4.输入 help syntax,阅读具体的内容,了解Matlab语句或命令的格式。
5.输入 help format, 了解format命令的使用格式。
6.输入help timefun(时间、日期函数库), 了解有哪些时间和日期函数。
重庆大学MATLAB培训-01-MATLAB简介
MATLAB 程序设计
「活页夹」型式的MATLAB桌面(7.X)
点选Desktop/Desktop Layout/All Tabbed可将各个 小窗口改为「活页夹」的型式。
若要回到默认的桌面配置,可点选Desktop/Desktop Layout/Default
MATLAB 程序设计
命令窗口
MATLABLeabharlann 程序设计MATLAB主要功能
此高级语言可用于技术计算 此开发环境可对代码、文件和数据进行管理 交互式工具可以按迭代的方式探查、设计及求解问题 数学函数可用于线性代数、统计、傅立叶分析、筛选、优化 以及数值积分等 二维和三维图形函数可用于可视化数据 各种工具可用于构建自定义的图形用户界面 各种函数可将基于 MATLAB 的算法与外部应用程序和语言( 如 C、C++、Fortran、Java、COM 以及 Microsoft Excel) 集成
MATLAB 程序设计
1-1 MATLAB 由来(2)
MATLAB早在 1978 年即已现身,当时是用 Fortran 撰写的免费软件,其作者是当时任教于新墨西哥大 学的 Cleve Moler 教授。 The Origins of MATLAB
The authors of LINPACK: Jack Dongarra, Cleve Moler, Pete Stewart, and Jim Bunch in 1978.
命令窗口是MATLAB的重要组成部分,是用户和 MATLAB交互的工具,是MATLAB执行函数命令的窗 口。
clc清除命令,home(移动光标),ctrl+c(中断运行)
第1章 MATLAB简介
帮助演示
选择菜单Help中的“Demo”选项。 在帮助导航/浏览器窗口中选择“Demo”面板。 在命令窗口中输入“Demo”命令。
河北科技大学信息学院
27
1.6 SIMULINK简介
1.6.1 Simulink基本知识
Simulink模块库
在命令窗口输入simulink 或者单击工具栏中的 Simulink图标,打开 Simulink模块库窗口。
河北科技大学信息学院
16
MATLAB主窗口
工具栏
工具栏中各项的作用由左到右依次是: 新建一个M文件; 打开一个已有的M文件; 剪切; 复制; 粘贴; 撤销上一步操作; 恢复上一步操作; 打开Simulink仿真器; 打开用户界面设计窗口; 打开MATLAB帮助系统; 设置当前目录
河北科技大学信息学院
河北科技大学信息学院
3
河北科技大学信息学院
4
有用的网址
/products/m
atlab/
/ /
河北科技大学信息学院
5
1.2 MATLAB的特点
友好的工作平台和编程环境
河北科技大学信息学院
30
Logic and Bit Operations:逻辑和位操作模数块组
包含常用的逻辑运算(Logical Operator)和关系运算(Relation Operator)模块, 另外还有检测开区间(Interval Test)、动态检测开区间(Interval Test Dynamic)、组合逻辑(Combinatorial Logic)、与零比较 (Compare to Zero)、与常数比较(Compare to Constant)、 位置位(Bit Set)、位清零(Bit Clear)、逐位操作(Bitwise Operator)、移位运算(Shift Arithmetic)、位提取(Extract Bits)、检测递增(Detect Increase)、检测递减(Detect Decrease)、检测跳变(Detect Change)、检测正上升沿 (Detect Rise Positive)、检测负下降沿(Detect Fall Negative)、检测非负上升沿(Detect Rise Nonnegative)、检 测非负下降沿(Detect Fall Nonnegative)。
第1章matlab基础知识
2.Edit菜单
Undo:取消输入。 Redo:重新输入。 Cut:剪切。 Copy:复制。 Paste:粘贴。 Paste to Workspace:将所选内容粘贴到 工作空间。 Select All:全选。 Delete:删除。 Find:寻找。 Find Files:在指定的文件或路径中寻找。 Clear Command Window:清除命令窗口 中的显示。 Clear Command History:清除命令历史窗 口中的显示。 Clear Workspace:清除工作空间变量。
在命令窗口中运行的命令,都会被保留在Command History(命令历史)窗口中,并且标明指令运行 的日期和时间。
1.3.5 Workspace
用于存储各种变量 和结果的内存空间 ,其中显示了工作 空间中所有变量的 名称、大小、最大 及最小值,可以对 变量进行观察、编 辑、保存和删除等 操作。
(2)直观
程序语言设计符合人们的思维习惯和数学表达方式。 丰富的二、三维图形及动画,对计算结果进行可视化 显示,给用户以直观的认识。 Simulink的仿真环境,省去了用户画图布线的烦恼。
(3)简单
丰富的函数库和工具箱,使用户不必进行具体代码的 编写,只需调用简单的函数指令,就可以执行任务操 作,解决问题。 所有数值对象都默认以双精度浮点类型数组存储,无 须用户进行数据类型的声明和转换。
Save Layout:保存当前布局。 Organize Layout:组织布局。 Command Window:显示或隐藏命令窗口。 Command History:显示或隐藏命令历史窗口。 Current Folder:显示或隐藏当前文件夹。 Workspace:显示或隐藏工作空间。 Help:显示或隐藏帮助。 Profiler:显示或隐藏性能分析器。 File Exchange:用于实现文件的切换。 Editor:显示或隐藏编辑器。 Figures:显示或隐藏图形显示窗口。 Web Browser:打开网络浏览器。 Variable Editor:用于显示变量编辑器。 Comparison Tool:打开对照工具。 Toolbars:显示或隐藏工具栏。 Titles:显示或隐藏窗体标题。
MATLAB1-MATLAB概述与基础解析
逐格修改数组中的元素值。
M文件编辑/调试器窗口(Editor/ Debugger)
启动M文件编辑/调试器窗口的方法: 单 击 MATLAB 界 面 上 的 空 白 页 图 标 , 或 者 单 击 菜 单
“File”→“New”→“M-file”,可打开空白M文件编辑器。 单 击 MATLAB 界 面 上 的 文 件 夹 图 标 , 或 者 单 击 菜 单
MATLAB数据显示的Format格式
命令格式
含义
例子
format
通常保证小数点后四位有效;大于1000的实 314.159显示为314.1590
format short(默认) 数,用5位有效数字的科学计数法显示
3141.59显示为3.1416e+003
format short e format short g
PageDow 向后翻阅当前窗口中
n
的内容
键名
作用
Home End
使光标移到当前行的 开头
使光标移到当前行的 末尾
Delete
删去光标右边的字符
Backspace 删去光标左边的字符
清除当前行的全部内
Esc
容
CTRL+C
中断MATLAB命令 的运行
MATLAB常用标点符号的功能
名称
空格 逗号 点号 分号
命令窗口 历史命令窗口 当前目录浏览器窗口 工作空间浏览器窗口 数组编辑器窗口、交互界面分类目录窗口 M文件编辑/调试窗口 帮助导航/浏览器窗口。
命令窗口(Command Window)
命令窗口默认出现在MATLAB界面右侧,是进行 MATLAB操作的主要窗口。在命令窗口中可键入各种 MATLAB的命令、函数和表达式,并显示除图形外的所 有运算结果。
1第一章 Matlab语言概述
(Ⅰ)基础篇第一章 Matlab语言概述§1.语言特点MATLAB是Mathworks公司于20世纪80年代推出的数值计算软件。
得到了广泛的应用。
MATLAB的全称是Mateix Laboratory,意思是矩阵实验室。
它是以矩阵运算为基础的新一代程序语言。
MATLAB是集数学运算、图形处理、程序设计和系统建模为一体的著名编程语言软件,它具有功能强大、使用简单等优点,是进行科学研究和工程实践的有力工具。
与Fortran和C相比,MATLAB语句更简洁、明了,更加符合人们的思维习惯。
并且还具有良好的数据可视化功能。
MATLAB包括两部分:基本部分-主要指数据计算和可视化功能。
扩展部分-主要指工具箱。
§2 基本操作和简单语句输入1. 简单语句输入(简单计算器用法)例1:计算a⨯y÷⨯=(a = 2,b =3,c = 5 )+acbb[程序] 在命令窗口输入>> a=2;b=3;c=5;>> y=a*b+c*b/a 回车[输出] y =13.5000例2:计算64(tan3⨯+45)/2760cos[程序] >> (tan(pi/4)+cos(pi/3))*27^(1/3)/sqrt(64)ans =0.56252. 变量表达式数值(1)变量* matlab语句一般形式为:变量=表达式(或数),若变量和“=”省略,输出时自动建立“ans”默认变量。
* 对大小写敏感,如sqrt(平方根)对,而SQRT,Sqrt全错。
* 变量名第一个字符必须是英文字母,最多可包含31个字符,(含英文、数字、下连符)。
不得包含空格和标点。
* 系统遇到一个新变量名时,它会自动生成变量,若该变量早已存在,系统会自动更新内容。
表1-1 默认预定义变量(永久变量)例3:无穷大的使用>> x =1/0Warning: Divide by zero.x =Inf* 在MATLAB中这样的操作不会引起程序执行中断,只是在给出警告信息的同时,用一个特殊的符号Inf来表示。
一Matlab的简要介绍
在欧美大学里,诸如应用代数、数理统计、自 动控制、数字信号处理等等课程都把MATLAB作为 教学内容之一。
在国外发达国家MATLAB是攻读学位的大学生、 硕士生、博士生必须掌握的基本工具,这几乎成了 20世纪90年代新版教科书与旧版书籍的标志性区别。
在国际学术界,MATLAB已经被确认为准确的、 可靠的科学计算标准软件。
二、学习Matlab的意义
在设计研究单位和工业部门,MATLAB是公认 的进行高效研究、开发的首选软件工具。
学习MATLAB对于大学生将来毕业后开展工作 或进行进一步的学习,以及运用计算机解决工作、 生活中的实际问题都有着重要的意义。
三、Matlab的窗口和菜单
一、MATLAB的窗口组成 (1) Workspace(工作空间窗口):显示工作空间里 保存的所有变量。 (2) Current Directory(当前目录窗口):显示和管 理当前工作路径下文件夹的文件。 (3) Launch Pad(工具启动平台):此窗口显示 MATLAB工具目录,我们可以通过此窗口使用MATLAB 工具。
四、命令窗口的使用及基本命令
一、命令窗口的使用 在MATLAB的命令窗口直接输入命令、函数、 表达式,再按Enter键运行显示相应的结果。
命令窗口会在输入一条语句之后解释执行一条语 句,所以命令窗口非常适合运行比较简单或者单个的 命令、表达式、函数。
在命令窗口中按↑(↓)键可以查看前一条(后一条) 语句。
例15
求
A
2 0
5 6
4 3
5
1
的转置矩阵。
1
6 5
2
说明:矩阵转置运算的命令为’。
七、矩阵的介绍
判例断16A已是知否矩是阵对称矩阵。
实验1 MATLAB操作基础
实验1 MATLAB 操作基础一、 实验目的1. 熟悉MATLAB 的操作环境及基本操作方法。
2. 掌握MATLAB 的搜索路径及设置方法。
3. 熟悉MATLAB 帮助信息的查阅方法。
二、实验环境(硬/软件要求)PC 机,MATLAB7.0以上。
三、实验内容1. 先建立自己的工作目录,再将自己的工作目录设置到MATLAB 搜索路径下,再试验用help 命令能否查询到自己的工作目录。
2. 在MATLAB 环境下验证例1-1至例1-4,并总结MATLAB 的主要优点。
3. 利用MATLAB 的帮助功能分别查询inv 、plot 、max 、round 等函数的功能及用法。
4. 在命令窗口执行命令完成以下运算,观察workspace 的变化,记录运算结果。
(1)(365-52⨯2-70)÷3(2)>>area=pi*2.5*2.5(3)已知x=3,y=4,在MATLAB 中求z :()232y x y x z -= (4)将下面的矩阵赋值给变量m1,在workspace 中察看m1在内存中占用的字节数。
m1=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡11514412679810115133216 >>m1=[16,2,3,13;5,11,10,8;9,7,6,12;4,14,15,1] (5)执行命令>>x=0:0.1:6*pi;>>y=5*sin(x);>>plot(x,y)5. 完成下列操作:(1)在MATLAB 命令窗口输入以下命令:x=0:pi/10:2*pi;y=sin(x);(2)在工作空间窗口选择变量y ,再在工作空间窗口选择绘图菜单命令或在工具栏中单击绘图命令按钮,绘制变量y 的图形,并分析图形的含义。
MATLAB介绍1
MATLAB介绍1MATLAB介绍1MATLAB(Matrix Laboratory)是一种强大的数值计算环境和编程语言,广泛应用于工程、科学和数学领域。
它被设计用于进行高效的数值计算、数据可视化和科学与工程中的算法开发。
MATLAB的最新版本是MATLAB R2024a,由MathWorks公司开发。
MATLAB的主要特点之一是其强大的矩阵操作能力。
它可以方便地进行矩阵和向量的计算和操作,使得编写线性代数相关的算法变得非常简单。
此外,MATLAB还内置了大量的数值计算和线性代数函数,包括求解线性方程组、特征值分解、矩阵求逆等等,这些函数可以大大提高数值计算的效率。
除了数值计算外,MATLAB还提供了丰富的数据可视化功能。
它可以轻松地生成二维和三维图形,使得用户可以直观地观察和分析数据。
MATLAB支持各种图形类型,包括散点图、曲线图、柱状图、表面图等等。
用户可以通过使用MATLAB的图形函数进行定制和修改,以满足特定的可视化需求。
MATLAB还具有灵活的编程语言,使用户可以轻松地编写和调试自己的算法和函数。
它支持面向对象的编程范式,允许用户创建自定义的数据类型和类,以实现更高级的算法和数据结构。
此外,MATLAB还支持脚本文件和函数文件的编写,用户可以将一系列的计算步骤组织成可重复使用的代码块。
MATLAB支持与其他编程语言和工具的集成,使用户可以方便地与其他软件进行数据交换和通信。
MATLAB可以读取和写入各种文件格式,如文本文件、Excel文件、图像文件和音频文件等。
它还提供了与C、C++、Java和Python等编程语言的接口,使用户可以调用其他编程语言的函数和库。
除了核心功能外,MATLAB还提供了大量的工具箱(Toolbox),用于解决特定领域的问题。
这些工具箱包括信号处理、图像处理、统计分析、控制系统、优化、机器学习等等。
用户可以根据自己的需求选择和安装相关的工具箱,以扩展MATLAB的功能和应用范围。
matlab中while 1的用法
题目:深入探讨MATLAB中while 1的用法一、引言MATLAB(Matrix Laboratory)是一种强大的数学软件,广泛应用于工程、科学领域的数据分析和可视化。
在MATLAB中,while循环是一种常见的控制结构,用于根据特定条件重复执行一段代码。
本文将深入探讨MATLAB中while 1的用法,以便读者更好地理解和应用该特性。
二、while 1的基本语法在MATLAB中,while 1是一种常见的编程技巧,用于创建一个无限循环。
它的基本语法如下:```while 1循环体代码end```其中,while关键字后的条件表达式为1,表示条件始终为真,因此循环将无限执行下去。
在循环体内部,可以编写一系列需重复执行的代码逻辑。
三、while 1的应用场景1. 任务监控在实际编程中,while 1常用于任务监控的场景。
当需要不断监听外部输入或者定时执行某个任务时,可以使用while 1构建一个持续监控的循环。
2. 实时数据处理MATLAB常用于处理实时数据,而while 1循环则可以保证对实时数据进行持续性的处理和分析。
这种用法通常用于传感器数据的采集与处理,网络数据的实时传输等场景。
3. 程序测试与调试在程序测试和调试阶段,while 1循环也具有重要作用。
它能够让程序持续执行,方便程序员观察程序行为、调试代码逻辑、捕捉异常等。
4. 无限循环有些情况下,程序需要执行一个没有终止条件的循环。
此时,while 1循环可派上用场,实现程序的无限循环。
四、while 1的注意事项1. 防止死循环使用while 1循环时,务必小心防止死循环。
在循环体内部必须有合适的跳出机制,否则程序将陷入无尽的循环之中,造成系统资源的浪费和程序的崩溃。
2. 兼顾性能和效率在使用while 1循环时,要注意兼顾性能和效率。
循环体内的代码应尽量简洁高效,避免不必要的计算和重复操作,以提高程序的执行效率。
3. 注意程序运行时间无限循环可能导致程序长时间运行,因此需特别留意程序的运行时间。
1 matlab软件概述
数据导出
利用菜单项File: Import Data
利用操作指令Load(使用方法同save) 例:以数据文件的形式保存变量X,Y,Z。
mkdir(‘d:\’,’mat_study’); %在D盘上创建目录mat_study cd d:\mat_study %将d:\mat_study设置为当前目录 save ex17 X Y Z %将变量保存成ex17.mat数据文件 dir %显示目录上的文件
第一章
matlab语言概述
§1.1 MATLAB简介
matlab语言是由美国的Clever Moler博士于 1980年开发的。设计者的初衷是为解决“线性代数 ”课程的矩阵运算问题,取名MATLAB即Matrix Laboratory 矩阵实验室的意思。
经过几十年的研究与不断完善,已成为应用代 数、数理统计、数字信号处理、自动控制理论等课 程的基本教学工具,成为学生需要掌握的基本软件 之一。
利用path指令
内存变量管理
语句执行后,所有的变量都存储在workspace中。
变量的查询用who或whos指令; 要删除内存中的变量用clear指令;
也可在workspace窗口直接进行相应的操作;
清除工作空间中的所有变量 清除工作空间中的变量var1和var2 清除工作空间中所有的变量、全局 变量、编译过的M函数和MEX链接 清除工作空间中名为fun的函数
当前目录浏览器
Current Directory是指MATLAB运行文件时
的工作目录,在当前目录窗口中可以显示或改
变当前目录,还可以显示当前目录下的文件并 提供相应的操作。 注意:只有在当前目录或搜索路径下的文件、 函数可以被运行或调用。
matlab中生成0到1之间的高斯分布的随机数
在MATLAB中生成0到1之间的高斯分布的随机数可以通过以下步骤实现:1. 导入MATLAB工具箱在MATLAB中进行任何操作之前,需要确保已经导入了Statistics and Machine Learning Toolbox工具箱,因为高斯分布的生成函数位于该工具箱中。
2. 使用randn函数生成高斯分布随机数在MATLAB中,可以使用randn函数来生成服从标准正态分布(均值为0,标准差为1)的随机数。
对生成的随机数进行线性变换,以使其均值为μ,标准差为σ。
具体操作如下:```matlabmu = 0; 均值sigma = 1; 标准差n = 1000; 生成1000个随机数r = mu + sigma.*randn(n,1); 生成均值为mu,标准差为sigma的高斯分布随机数```在这段代码中,mu表示所需的高斯分布的均值,sigma表示所需的高斯分布的标准差,n表示生成随机数的个数。
通过randn函数生成的随机数将被线性变换为均值为μ,标准差为σ的高斯分布随机数。
3. 调整生成的随机数范围如果需要将生成的随机数范围限定在0到1之间,可以通过线性变换的方法实现。
具体来说,可以使用MATLAB中的min和max函数来实现对随机数范围的调整,如下所示:```matlabr_adj = (r - min(r)) / (max(r) - min(r)); 调整随机数范围为0到1之间```通过这段代码,生成的随机数r将被调整为范围在0到1之间的r_adj。
总结通过以上步骤,就可以在MATLAB中生成0到1之间的高斯分布的随机数。
首先使用randn函数生成服从标准正态分布的随机数,然后通过线性变换调整均值和标准差,最终通过调整随机数范围实现生成0到1之间的高斯分布随机数。
这样的操作可以很好地满足实际需求,并且在MATLAB中具有很高的灵活性和可操作性。
生成高质量的高斯分布随机数在统计学、工程学以及计算机科学等领域中都具有重要的应用。
实验1 MATLAB基本操作
一、实验目的1.熟悉MATLAB 的使用方法及特点;学会建立MATLAB 搜索路径;熟悉MATLAB 工作空间、MATLAB 集成环境、命令窗口;掌握MATLAB 的通用命令、管理命令和函数、管理变量和工作空间的使用方法;2.掌握MATLAB 基本操作及矩阵基础知识,包括:输入矩阵、矩阵的转置、矩阵元素求和、矩阵下际、矩阵连接、矩阵行列删除、矩阵产生和操作、逻辑和关系运算、操作符和特殊字符、基本矩阵和矩阵操作、基本矩阵和阵列;掌握特殊变量和常数;掌握基本数学函数。
二、实验内容1.利用基本矩阵产生 3x3 和15x8 的单位阵,全1 阵,全0 阵,均匀分布的随机阵([-1,1]之间),正态分布随机阵(方差4,均值1)eye(3),eye(15,8)ones(3),ones(15,8)zeros(3),zeros(15,8)1-2*rand(3),1-2*rand(15,8)2*randn(3)+1, 2*randn(15,8)+12.利用diag()函数和rot90()产生下列矩阵:0 0 8 2 0 4a= 0 -7 5 b= 0 5 02 3 0 7 0 8然后求解a 阵的逆矩阵aa 及b 阵的特征值和对应特征向量,并利用reshape 将aa 阵变换成行向量。
X=diag([2 -7 8]),Y=diag([3 5],-1),a=rot90(X+Y)M=diag([2 5 8]),N=diag([7 0 4]),b=M+rot90(N)aa=inv(a) reshape(aa,1,9) d=eig(b) [V,D]=eig(b)aa =-0.1339 0.2143 0.50000.0893 -0.1429 00.1250 0 0ans = -0.1339 0.0893 0.1250 0.2143 -0.1429 0 0.5000 0 0d =-1.082811.08285.0000V = -0.7921 -0.4030 00 0 1.00000.6104 -0.9152 0D = -1.0828 0 00 11.0828 00 0 5.00003产生一均匀分布在(-5,5)随机阵(50x2),精确到小数点后一位x=5-round(100*rand(50,2))/104.编程实现当α∈[-π,π],间隔为1o 时,求解正弦和余弦的值,并利用plot()函数绘制正弦,余弦曲线。
MATLAB第一章MATLAB操作基础
绘图功能
利用MATLAB绘图十分方便,它既可以绘制各种图形(包 括二维图形和三维图形),还可以对图形进行修饰和控制,以 增强图形的表现效果。
编程语言
MATLAB具有程序结构控制、函数调用、数据结构、输入 输出、面向对象等程序语言特征,所以可以使用MATLAB进行 程序设计,而且简单易学、编程效率高。因此,对于从事数值 计算、计算机辅助设计和系统仿真等领域的人员来说,用 MLAB编程的确是一个理想的选择。
MATLAB 工具箱
MATLAB包含两部分内容:基本部分和各种可选的工 具箱。
1.3 初识MATLAB
例 1-1 绘制函数 y=2sin(1+x)的图像,并计算当 x=0.5 时的函数 值。
x=(1:0.1:10); %给出自变量 x
的定义域
y=2*sin(1+x); %写出函数形
式
plot(x,y)
%绘出函数图形
y=2*sin(1+0.5) %求当 x=0.5
时的 y 值,其
后不加分号,
直接在窗口中
给出结果
y =1.9950
%输出 y 的计
算结果
例 1-2 绘制函数 y=3x3-10x2+5x-8的图像
for i=1:100 x(i)=0.1*i; y(i)=3*x(i)^310*x(i)^2+5*x(i)-8;
end plot(x,y)
例 1-3 求方程 3x4 7x3 9x2 23 0 的根
(2)开发了与外部进行直接数据交换的组件,打通了MATLAB 进行实时数据分析、处理和硬件开发的道路。
1-Matlab简介详细
2 3 B 5 6 1 0 0 1
0 0 1 1
>> D=[C;eye(2),ones(2,1)] 输出: D= 2 3 0 5 6 0 1 0 1 0 1 1
MATLAB简介 4. 矩阵的运算
MATLAB中常用的算术运算符: + 数量加法,矩阵加法 * 数量乘法,矩阵乘法 数量减法,矩阵减法 .* 数组乘法
☆到20世纪90年代,MATLAB已成为国际控制界的标准计算软件。
MATLAB简介
MATLAB 1.0 1984 MATALB 2 1986 MATLAB 3 1987 MATLAB 3.5 1990 MATLAB 4 1992 MATLAB 4.2c R7 1994 MATLAB 5.0 R8 1996 MATLAB 5.1 R9 1997 MATLAB 5.1.1 R9.1 1997 MATLAB 5.2 R10 1998 MATLAB 5.2.1 R10.1 1998 MATLAB 5.3 R11 1999 MATLAB 5.3.1 R11.1 1999 MATLAB 6.0 R12 2000 MATLAB 6.1 R12.1 2001 MATLAB 6.5 R13 2002 MATLAB 6.5.1 R13SP1 2003 MATLAB 6.5.2 R13SP2 2003 MATLAB 7 R14 2004
MATLAB简介 但是,要用好MATLAB却不是在短时间就可以达到的。 这并不是因为MATLAB语言复杂难懂,而是实际问题的求解 往往更多的是需要使用者具备数学知识和专业知识。 MATLAB使得人们摆脱了常规计算机编程的繁琐,让人们能 够将大部分精力投入到研究问题的数学建模上。可以说,应 用 MATLAB 这一数学计算和系统仿真的强大工具,可以使 科学研究的效率得以成百倍的提高。 目前, MATLAB 已经广泛用于理工科大学从高等数学 到几乎各门专业课程之中,成为这些课程进行虚拟实验的有 效工具。在科研部门,MATLAB更是极为广泛地得到应用, 成为全球科学家和工程师进行学术交流首选的共同语言。在 国内外许多著名学术期刊上登载的论文,大部分的数值结果 和图形都是借助MATLAB来完成的。
1-Matlab基本介绍
文件名是要以字母开头中间不含空格和标点 符号的字符串;不能用汉字、数字和专用变量 名作为文件名,如1,11,pi,ans,eps等。
16
设置个性化路径
(1)程序通常保存在文件夹:\matlab\work中, 此为matlab的默认路径。 (2)程序若要放在其他路径中,则要添加该路径 到matlab的路径设置中,否则程序不能执行。
acot(x) log(x)
x的反正切 x的余切
x的反余切 x的自然对数
cos(x)
asin(x)
x的余弦
x的反正弦
log10(x)
sinh(x)
x的常用对数
双曲正弦
acos(x)
tan(x)
x的反余弦
x的正切
cosh(x)
双曲余弦
22
特殊函数
函数名 含义
计算m除以n 的余数
函数名
含义
取超过x的最 近整数
30
二、数值函数运算
2
什么是数学建模?
数学模型(Mathematical Model)是用数学符号对一类 实际问题或实际发生的现象的(近似的)描述. 数学建模(Mathematical Modeling)则是获得该模型 并对之求解、验证并得到结论的全过程. 数学建模不仅是揭示、了解基本规律, 而且从应用的 观点来看更重要的是预测和控制所建模的系统的行为 的强有力的工具. 数学问题 = 建立数学模型 + 求解数学模型 合理假设、建立模型、 求解模型、解释验证. 记住这12(16)个字, 将会终生受用.
24
⑤有了变量,就可以组成表达式,也就可以对变量 进行赋值。MATLAB的赋值语句有两种形式。
● 变量名=表达式 ● 表达式 在第一种情况下, MATLAB 将右边的表达式的值赋 值给左边的变量,在第二种情况, MATLAB 将表达 式的值赋值给系统变量ans。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
21
四 常见符号计算: 1.微分:diff是求微分最常用的函数。其输入参数既 可以是函数表达式,也可以是符号矩阵。Diff (f, x, n)表示对f关于x求n阶导数。例如: 1).下面程序段将生成表达式sin (ax), 并分别对其中 的x和a求导。 ?syms a x ?f=sin(a*x); ?df=diff(f,x) df = cos(a*x)*a ?dfa=diff(f,a) dfa = cos(a*x)*x
13
2)、[L,U]=lu (A) 将矩阵A做对角线分解,使得 A=L*U,L为下三角矩阵(lower triangular matrix),U为上三角矩阵(upper triangular matrix)。 例如: [L,U]=lu(A) L= 0.1429 1.0000 0 0.5714 0.5000 1.0000 1.0000 0 0 U= 7.0000 8.0000 9.0000 0 0.8571 1.7143 0 0 0.0000
4
MATLAB简介
1 MATLAB的计算功能
(1) MATLAB的数据类型 现有四种基本数据类型:双精度数组、字符串数组、元胞 数组、构架数组。 元胞数组(Cell Array)如同银行里的保险箱库一样。 • 该数组的基本组分是元胞(Cell),以下标来区分。 • 元胞可以存放任何类型、任何大小的数组。 • 同一个元胞数组中各元胞的内容可以不同。(例 1_2_1) 构架数组(Structure Array)也能存放各类数据。 • 该数组的基本组分是构架( Structure ),以下标来区分。 • 构架必须在划分“域”后才能使用。 • 数据不能存放于构架,只能存放在域中。 • 构架的域可以存放任何类型、任何大小的数组。 • 不同构架的同名域中存放的内容可不同。(例 1_2_2 )
8
v= d= 0.2320 0.7858 0.4082 16.1168 0 0 0.5253 0.0868 -0.8165 0 -1.1168 0 0.8187 -0.6123 0.4082 0 0 0.0000 其中v (:,i) 为d (i,i)所对应的特征向量。 2)、det (A) 计算行列式A的值。例如:det (A) 结果为: ans = 0
16
3)、求根:roots指令用于求多项式的根。例如: fx=[1 3 2]; rootoffx=roots(fx) rootoffx = -2 -1 4)、polyval (p,x) 计算多项式p在x出的值,其中x 可以是点或向量或矩阵。 例如: p = [1 -6 11 -6]; x=1; p1=polyval (p,x) 结果为: p1 = 0 x=[1,2,3]; p2=polyval (p,x) 结果为: p2 = 0 0 0
9
3)、expm (A) 对矩阵A求幂。例如:expm (A) 结果为: ans = 1.0e+006 * 1.1189 1.3748 1.6307 2.5339 3.1134 3.6929 3.9489 4.8520 5.7552 4)、inv (A) 求矩阵A的逆。例如:inv (A) 结 果为: Warning: Matrix is close to singular or badly scaled.Results may be inaccurate. RCOND = 2.055969e-018. ans = 1.0e+016 * -0.4504 0.9007 -0.4504 0.9007 -1.8014 0.9007 -0.4504 0.9007 -0.4504 10
17
x=A; p3=polyval (p,x) 结果为: p3 = 0 0 0 6 24 60 120 210 336
5)、polyder (p) 求p的微分多项式。 例如: p=[1 -6 11 -6]; dp=polyder(p) dp = 3 -12 11
18
6)、[r,p,k]=residue (x,y) 求x/y的部分因式分解。 若多项式x,y都没有重根,则可把x/y的比值表示为 x/y=r1/(s-p1)+r2/ (s-p2)+...+rn/ (s-pn)+ks例如 用residue指令求x/(x^2+3x+2)的部分因式分解: x=[1 0]; y=[1 3 2]; [r,p,k]=residue(x,y) r= 2 -1 p= -2 -1 k= []
5)、orth (A) 返回对应于A的正交化矩阵。例如:orth (A) 结果为: ans = 0.2148 0.8872 0.5206 0.2496 0.8263 -0.3879 6)、poly (A) 若A为一矩阵,则返回A的特征多项式。 例如:poly (A) 结果为: ans = 1.0000 -15.0000 -18.0000 -0.0000 若A为一向量,则返回以A的元素为根的特征多项式。 例如: r=[1,2,3]; p= poly (r) 结果为: p= 1 -6 11 -6 7)、rank (A) 计算矩阵A的秩。例如:r=rank (A) 结果 为:r = 2
14
二、多项式: 多项式是用向量形式来表示,从最右边算起,第 一个为0阶系数,第二个为1阶系数,依次类推。 例如一个一元三次多项式:4x^3+3x^2+2x+1 用[4 3 2 1]来表示。 1.多项式的运算: 1)、乘:conv指令执行多项式的相乘运算,指令 格式为:z=conv (x,y) 例如: x=[1 3 5]; y=[2 4 6]; z=conv(x,y) z= 2 10 28 38 30
2
MATLAB语言的主要特点
(1)具有丰富的数学功能 包括矩阵各种运算。如:正交变换、三角分解、特征值、 常见的特殊矩阵等。 包括各种特殊函数。如:贝塞尔函数、勒让德函数、伽码 函数、贝塔函数、椭圆函数等。 包括各种数学运算功能。如:数值微分、数值积分、插值、 求极值、方程求根、FFT 、常微分方程的数值解等。 (2)具有很好的图视系统 可方便地画出两维和三维图形。 高级图形处理。如:色彩控制、句柄图形、动画等。 图形用户界面GUI制作工具,可以制作用户菜单和控件。 使用者可以根据自己的需求编写出满意的图形界面。
5
一. 矩阵: 1.矩阵的建立与表示法: 在命令窗口中输入:A=[1,2,3;4,5,6;7,8,9] 可以得到: A= 1 2 3 4 5 6 7 8 9 若要显示整行或整列,则可以用(:)冒号来表示。冒 (:)代表矩阵中行(ROWS)或列(COLUMNS)的全部。 例如执行命令:A(:,2),就会显示第2列的全部,结果 为: ans = 2 5 8
15
如果要对两个以上的多项式进行相乘,可 以重复使用conv指令,例如:(x,y同上) conv(conv(x,y),x) ans = 2 16 68 172 284 280 150
2)、分解:与1)相反,用deconv指令,其指令 格式为:[z,r]=deconv (x,y)表示x除deconv(z,x) z= 2 4 6 r= 0 0 0 0 0
19
当输入三个参数 r,p,k 时,该函数又会生成 原来的函数。例如: ?[x,y]=residue(r,p,k) x= 1 0 y= 1 3 2
20
三 符号变量、符号表达式、抽象函数:
函数sym用于生成符号变量和符号表达式,如: x=sym(„x‟) a=sym(„alpha‟)分别创建变量x, alpha f=sym(„a*x^2+b*x+c‟)创建变量表达式f ,但要注意 此式并没有自动创建变量a, b, c, x。可以用函数 syms对多个变量同时定义,如 : syms a b c x 函数sym也可以用来表示确定的函数,如 f=sym („f(x)‟) 生成函数f (x) 。
12
4.矩阵分解: 1)、[q,r]=qr (A) 将矩阵A做正交化分解,使得A=q*r。q 为单位矩阵 (unitary matrix),其范数(norm)为1。r为 对角化的上三角矩阵。例如: [q,r]=qr(A) q= -0.1231 0.9045 0.4082 -0.4924 0.3015 -0.8165 -0.8616 -0.3015 0.4082 r= -8.1240 -9.6011 -11.0782 0 0.9045 1.8091 0 0 -0.0000 norm(q) ans = 1.0000
6
其他特殊矩阵的生成方法: 1)、eye (m,n)或eye (m) 产生m*n 或 m*m的单位 矩阵。例如: eye (3,4)与eye (3)分别产生如下矩阵: 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 2)、zeros (m,n) 或 zeros (m) 产生m*n 或m*m 的零 矩阵。例如: zeros (3,4) 与zeros (3) 分别产生如 下矩阵: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
7
3)、ones (m,n) 或ones (m) 产生m*n或m*m的全部 元素为1的矩 阵。例如:ones (3,4)与ones(3)分别产生如下矩阵: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2.常用矩阵函数: 1)、d=eig (A) 返回矩阵A的特征值所组成的列 向量; [v,d]=eig (A) 返回分别由矩阵A的特征向量和特 征值(以其为主对角线元素,其余元素为零) 的两个矩阵。 例如执行命令:[v,d]=eig (A) 结果为:
3
MATLAB语言的主要特点(续)
(3)可以直接处理声言和图形文件。 声言文件。如: WAV文件(例:wavread,sound等)。 图形文件。如: bmp 、gif 、 pcx 、tif 、jpeg等文件。 (4)具有若干功能强大的应用工具箱。 如:SIMULINK、COMM、DSP、 SIGNAL等16种工具箱。 (5)使用方便,具有很好的扩张功能。 使用MATLAB语言编写的程序可以直接运行,无需编译。 可以M文件转变为独立于平台的EXE可执行文件。 MATLAB的应用接口程序API是MATLAB提供的十分重要 的组件 ,由 一系列接口指令组成 。用户就可在FORTRAN 或C中 , 把MATLAB当作计算引擎使用 。 (6)具有很好的帮助功能 提供十分详细的帮助文件(PDF 、HTML 、demo文件)。 联机查询指令:help指令(例:help elfun,help exp,help simulink),lookfor关键词(例: lookfor fourier )。