北大心理学系.Matlab编程简介.
MATLAB语言简介

Help Window命令:打开MATLAB旳帮助窗口。
Help Tips命令: 打开帮助窗口,并首先显示MATLAB
旳帮助系统旳分类和使用措施。
Help Desk(HTML)命令: 打开系统WWW浏览器,并显示
MATLAB旳帮助桌面。
Examples and Demos命令:能够经过演示MATLAB提供旳
Clf 清理图形窗口
Load 加载指定文件旳变量
Pack 搜集内存碎片
Diary 日志文件命令
Clc 清理工作窗口
Quit 退出
Echo 工作窗信息显示开关 !
调用DOS命令
2.1.6 MATLAB常用旳命令和技巧 2.某些常用操作技巧
利用键盘按键,可实现简易操作:
home 光标置于目前行开头 end 光标置于目前行末尾 esc 清除目前输入行 del 删除光标处旳字符
Edit菜单项:
Undo、Cut、Copy、Paste命令:分别用于撤消上一次操
作、剪切、复制和粘贴。
Clear命令:
删除内容。
Select All命令:
用于选定全部文本内容。
Clear Session命令:
清除命令编辑区旳全部内
容,但并不删除工作空间
中旳变量。
2.1.4 MATLAB旳桌面平台
Help菜单项:
3. 图形功能
MATLAB提供了两个层次旳图形命令:一种是对图形句 柄进行旳低档图形命令,另一种是建立在低档图形命令之上 旳高级图形命令。利用MATLAB旳高级图形命令能够轻而易 举地绘制二维、三维乃至四维图形,并可进行图形和坐标旳 标识、视角和光照设计、色彩精细控制等等。
2.1.1 MATLAB特点
Open命令:
第一章 Matlab简介

~=
三峡大学理学院 杜廷松
它们用于比较两个元素的大小关系,结果是1表明为 它们用于比较两个元素的大小关系,结果是 表明为 结果是0表明为假 表明为假. 真,结果是 表明为假
3.逻辑运算符 逻辑运算符
&与
| 或
~ 非
它们用于元素或矩阵的逻辑运算. 它们用于元素或矩阵的逻辑运算
三峡大学理学院 杜廷松
20
三峡大学理学院 杜廷松
10
(2) 函数 函数zeros和ones分别产生 和1矩阵 例如 分别产生0和 矩阵 矩阵.例如 和 分别产生 zeros(n) 为阶方阵 zeros(m,n) 为阶矩阵 zeros(size(A)) 为与矩阵 同阶的矩阵 为与矩阵A同阶的矩阵 函数ones与此类同 与此类同. 函数 与此类同 (3) 函数 函数rand(m,n)产生阶随机数矩阵 产生阶随机数矩阵. 产生阶随机数矩阵 (4) 函数 函数diag(A),tril(A),triu(A)分别取矩阵 的 对角、 分别取矩阵A的 对角、 , , 分别取矩阵 下三角、上三角部分.其中 三角矩阵包含对角部分. 其中, 下三角、上三角部分 其中,三角矩阵包含对角部分
三峡大学理学院 杜廷松
22
3.矩阵的乘法 3.矩阵的乘法 矩阵的乘、 在Matlab中,矩阵的乘、除、乘方及各种 中 矩阵的乘 函数运算等有两种方式: 函数运算等有两种方式: (1)矩阵运算; 矩阵运算; 矩阵运算 (2)元素运算(.运算) 元素运算( 运算) 元素运算 运算 矩阵乘(*): 两个同维相同的矩阵相乘 两个同维相同的矩阵相乘. 矩阵乘 元素乘(.*): 两个同维的矩阵相应元素 元素乘 相乘. 相乘
二 矩阵运算
1.矩阵转置 矩阵转置
>> x=[1,2,3]' >> A=[1 2 3 456 7 8 9]; >> B=A'
第1章MATLAB简介讲稿

第一篇MATLAB入门第1章MATLAB简介MATLAB(Matrix Laboratory)是由MathWorks公司于1984年推出的一套科学计算软件,分为总包和若干个工具箱。
它具有强大的矩阵计算和数据可视化能力。
1.1 MATLAB的主要特点该软件的主要特点:⑴简单易学:MATLAB是一门编程语言,其语法规则与一般的结构化高级编程语言大同小异,而且使用更方便,具有一般语言基础的用户很快就可以掌握。
⑵代码短小高效:由于MATLAB已经将数学问题的具体算法编成了现成的函数,用户只要熟悉算法的特点、使用场合、函数的调用格式和参数意义等,通过调用函数很快就可以解决问题,而不必花大量的时间纠缠于具体算法的实现。
⑶计算功能非常强大:该软件具有强大的矩阵计算功能,利用一般的符号和函数就可以对矩阵进行加、减、乘、除运算以及转置和求逆等运算,而且可以处理稀疏矩阵等特殊的矩阵,非常适合于有限元等大型数值算法的编程。
此外,该软件现有的数十个工具箱,可以解决应用中的很多数学问题。
⑷强大的图形绘制和处理功能:该软件可以绘制常见的二维三维图形,还可以对三维图形进行颜色、光照、材质、纹理和透明性设置并进行交互处理。
⑸可扩展性能:可扩展性能是该软件的一大优点,用户可以自己编写M文件,组成自己的工具箱,方便地解决本领域内常见的计算问题。
此外,利用MATLAB编译器可以生成独立的可执行程序,从而可以隐藏算法并避免依赖MATLAB。
1.2 MATLAB桌面简介启动MATLAB时,MA TLAB的桌面如图1-1。
可以根据需要改变桌面外观,包括移动、缩放和关闭工具窗口等。
MATLAB桌面包括表1-1中的几种工具窗口,在默认情况下,它们中间有一些没有显示。
1.2.1 启动按钮(“Start”)打开MATLAB主界面以后,单击“Start”按钮,显示一个菜单,利用“Start”菜单及其子菜单中的选项,可以直接打开MA TLAB的有关工具。
Matlab简要总体介绍

例15
求
A
2 0
5 6
4 3
5
1
的转置矩阵。
1 6 5 2
说明:矩阵转置运算的命令为’。
七、矩阵的介绍
判例断16A已是知否矩是阵对称矩阵。
说明:disp( )函数也可以显示字符串。
练习:已知矩阵
A
0 1
1
0, 求A的转置矩阵,并判断A是
否是对称矩阵。
七、矩阵的介绍
八、矩阵的逆运算
1 1 1 0 A1 0 0 1 0 1 0 1 0 0 1 0
在国外发达国家MATLAB是攻读学位的大学生、 硕士生、博士生必须掌握的基本工具,这几乎成了 20世纪90年代新版教科书与旧版书籍的标志性区别。
在国际学术界,MATLAB已经被确认为准确的、 可靠的科学计算标准软件。
二、学习Matlab的意义
在设计研究单位和工业部门,MATLAB是公认 的进行高效研究、开发的首选软件工具。
四、命令窗口的使用及基本命令
二、MATLAB的简单编程 例1 计算当a=1,b=2,c=3时,表达式 2a a cb的值。
b
练1 计算底a为5,高h为3的三角形面积s。
五、运算符和操作符
一、MATLAB运算符 (1)算术运算符
运算符 + * / \
功能 加 减 乘 (左)除 右除
运算符 ^ .* .^ ./ .\
说明:在matlab中使用函数inv( )求解矩阵的逆; 还可以通过幂运算“A^-1”来求解。
七、矩阵的介绍
九、矩阵的混合运算 求
3 2
例19
例已1知8 矩已阵知A 矩阵1 4
2 5
6 3,B1 2
00 .5,C 011 0,I1 0
MATLAB简介

3、矩阵运算
基本算术运算 、-( *(乘 /(右除 右除) 左除) +(加)、-(减)、*(乘)、/(右除)、\(左除)、 ^(乘方 乘方) ^(乘方) • 运算是在矩阵意义下进行的,单个数据的算术 运算是在矩阵意义下进行的, 运算只是一种特例。 运算只是一种特例。 • 加减运算允许参与运算的两矩阵之一是标量。 加减运算允许参与运算的两矩阵之一是标量。 标量与矩阵的所有元素分别进行加减操作。 标量与矩阵的所有元素分别进行加减操作。 • 标量可与任何矩阵相乘。 标量可与任何矩阵相乘。
2、函数文件: 函数文件:
在函数文件中,定义了用户所需要的函数, 在函数文件中,定义了用户所需要的函数, 当某些程序使用该函数时即可调用该函数。 当某些程序使用该函数时即可调用该函数。 MATLAB函数文件的组成: MATLAB函数文件的组成: 函数文件的组成 文件第一行: ★文件第一行:函数定义行
常用的矩阵生成函数有: 常用的矩阵生成函数有: eye 产生单位矩阵 产生0 zeros(m,n) 产生0矩阵 ones(m,n) 产生幺矩阵 rand(m,n) 产生0~1间均匀分布的随机矩阵 产生0 产生均值为0 方差为1 randn 产生均值为0,方差为1的标准正 态分布随机矩阵。 态分布随机矩阵。
function[返回参数1 返回参数2 function[返回参数1,返回参数2,……]= 返回参数 ]= 函数名(输入参数1 输入参数2 函数名(输入参数1,输入参数2,……) )
这一行的有无, 这一行的有无,是区分命令文件与函数文件 的重要标志; 的重要标志; 注意: 注意:函数文件保存的文件名应与用户定义 的函数名一致。 的函数名一致。
MATLAB简介 MATLAB简介
Matlab操作基础 一、Matlab操作基础
matlab的基本语法和编程概念

一、MATLAB语言概述MATLAB是一种专门用于科学计算和工程应用的高级语言和交互式环境。
它可以实现矩阵运算、绘图功能、数据分析等各种功能,被广泛应用于控制系统设计、信号处理、图像处理等领域。
MATLAB的语言能力强大,语法简洁,可读性高,非常适合用于快速原型设计和算法验证。
二、MATLAB的基本数据类型MATLAB支持多种数据类型,包括常见的数值类型(例如整型、浮点型)、字符型、逻辑型和复数型等。
其中,数值类型占据了绝大部分,常用的数值类型包括:1. 整型:int8、int16、int32、int642. 浮点型:single、double3. 复数型plex4. 字符型:char5. 逻辑型:logical三、MATLAB的变量与运算符1. 变量:在MATLAB中,变量的命名遵循标识符命名规则,可以包括字母、数字和下划线,但不能以数字开头,也不能使用MATLAB的保留字作为变量名。
变量的赋值可以使用等号“=”,例如:a = 3。
2. 运算符:MATLAB支持各种常见的数学运算符,例如加减乘除运算符“+、-、*、/”;逻辑运算符“、||、~, xor”;比较运算符“>、<、==、~=”等。
四、MATLAB的控制结构MATLAB支持多种控制结构,包括条件语句、循环语句和程序结构等。
1. 条件语句:MATLAB中的条件语句包括if语句和switch语句,其中if语句用于根据条件的真假执行不同的代码块,switch语句则用于多个条件之间的选择。
2. 循环语句:MATLAB提供了for循环和while循环两种循环结构,用于重复执行特定的代码块,实现程序的迭代。
3. 程序结构:MATLAB中的程序结构包括函数和脚本两种形式,函数是可独立调用的代码块,而脚本则是按顺序执行的代码文件。
五、MATLAB的数组与矩阵运算MATLAB中的数组和矩阵运算是其最强大的特性之一,它提供了丰富的矩阵运算函数和操作符,使得矩阵运算变得非常简洁高效。
matlab编程

while 循环
while expression (条件) ) statement(循环体) ( ) end 循环语句可以嵌套使用 不能在 for 循环体内改变循环变量的值 为了提高代码的运行效率,应尽可能提高代码的向量 化程度,避免 for 循环的使用 如果预先就知道循环的次数,则可以采用 for 循环; 否则,如果预先无法确定循环的次数,则可以使用 while 循环。
在命令窗口中输入 f2cs,即可执行该 M 文件。 脚本文件运行后,文件中所产生的所有变量都驻 所有变量都驻 当前工作空间,可以用 whos 查看。 留在 Matlab 当前工作空间
M文件控制流 文件控制流
程序控制结构有三种:顺序结构、选择结构和循 环结构。任何复杂的程序都由这三种基本结构组成。
顺序结构
if 条件语句
多分支结构 if expression1 (条件1) ) statements1(语句组1) ( ) elseif expression2 (条件2) ) statements2(语句组2) ( ) ... ... elseif expressionm (条件m) ) statementsm(语句组m) ( ) else statements(语句组) ( ) end
x = 2, x = 15 时的值
( x < 1) (1 ≤ x < 10 ) 在 ( x ≥ 10 )
3、利用 for 循环求 1!+2!+3!+…+10!的值。 nπ 4、对 n = 1, 2, ,10 ,求 xn = sin 的值。 12
先建立M文件 再在MATLAB 先建立 文件fun2.m来定义函数 (x),再在 文件 来定义函数f( ) 再在 命令窗口输入fun2(2),fun2(0.5), fun2(-1)即可 即可. 命令窗口输入 即可
超详细的Matlab基本操作与应用

Matlab基本操作与应用北京信息科技大学理学院1 Matlab 概 述Matlab 是由美国Mathworks 公司推出的一个科技应用软件,它的名字是由矩阵(MATrix )和实验室 ( Laboratory)的头三个字母组成。
顾名思义,它相当于把矩阵放在实验室里做实验,Matlab 是以矩阵为单位进行处理的,也就是它把一切都当作矩阵,即使是一个数也是。
Matlab 是一种高性能的、用于工程计算的编程软件,它把科学计算、结果可视化和编程都集中在一个使用非常方便的环境中。
Matlab 语言的首创人是 Cleve Moler 。
1984年 MathWorks 的公司推出了第一个 Matlab 1.0 的商业版本,用 C 语言作了完全的改写,其后又增添了丰富多彩的图形图像处理、多媒体功能、符号运算和它与其他流行软件的接口功能,使得 Matlab 的功能越来越强大。
到九十年代初期,在国际上 30 几个数学类科技应用软件中, Matlab 在数值计算方面独占鳌头,而 Mathematica 和 Maple 则分居符号计算软件的前两名。
历经二十多年的发展与竞争,发展为Matlab 7.0版,已成为国际公认的最优秀的工程应用开发环境。
Matlab 功能强大、简单易学、编程效率高,深受广大科技工作者的欢迎。
在欧美各高等院校,Matlab 已经成为线性代数、自动控制理论、数字信号处理、时间序列分析、动态系统仿真、图像处理等课程的基本教学工具,成为大学生、硕士生以及博士生必须掌握的基本技能。
2 Matlab 环境的进入与退出1、双击Matlab 图标,进入Matlab 主界面 (见图3-1)2、结束Matlab有三种方法可以结束MATLAB : 1.键入exit 2.键入quit3.直接关闭MATLAB 的命令视窗(Command window )命令窗口当前工作目录 命令图 3-13 Matlab 的特点和主要功能1 、Matlab 是一个交互式软件系统给出一条命令,立即就可以得出该命令的结果 2、数值计算功能◆Matlab 以矩阵作为基本单位,但无需预先指定维数(动态定维) ◆ 按照IEEE 的数值计算标准进行计算◆ 提供十分丰富的数值计算函数,方便计算,提高效率◆ Matlab 命令与数学中的符号、公式非常接近,可读性强,容易掌握3、符号运算功能和著名的 Maple 相结合,使得 Matlab 具有强大的符号计算功能4 、绘图功能Matl ab 提供了丰富的绘图命令,能实现一系列的可视化操作5、 编程功能Matlab 具有程序结构控制、函数调用、数据结构、输入输出、面向对象等程序语言特征,而且简单易学、编程效率高。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
二、M文件的调用
三、程序编辑窗口中常用的快捷键
快捷键 Tab 键或 Ctrl+] Ctrl+[ Ctrl+I Ctrl+R Ctrl+T F12 键 F5 键 说 明
增加缩进(对多行有效) 减少缩进(对多行有效) 自动缩进(即自动排版,对多行有效) 添加注释(对多行有效) 去掉注释(对多行有效) 设置或清除断点 运行程序
格 式 说 明 format short format long format short e format long e format short g format long g format short eng format long eng format + format bank format hex format rat 固定短格式,4 位小数。例 3.1416. 固定长格式,14 至 15 位小数(双精度);7 位小数(单精度)。例 3.141592653589793. 浮点短格式,4 位小数。例 3.1416e+000. 浮点长格式,14 至 15 位小数(双精度);7 位小数(单精度)。例 3.141592653589793e+000. 最好的固定或浮点短格式,4 位小数。例 3.1416. 最好的固定或浮点长格式,14 至 15 位小数(双精度);7 位小数(单精度)。例 3.14159265358979. 科学计数法短格式,4 位小数,3 位指数。例 3.1416e+000. 科学计数法长格式,16 位有效数字,3 位指数。例 3.14159265358979e+000. 以“+”号显示 固定的美元和美分格式。例 3.14. 十六进制格式。例 400921fb54442d18. 分式格式,分子分母取尽可能小的整数。例 355/113.
int32 int64
uint62
数据类型
• 默认情况下,MATLAB将所有的数值存储 为双精度浮点型(double) • 整型和单精度浮点型比双精度浮点型占用 较少的内存空间 • 除了int64和uint64两种整型之外,其他的数 值型数据可应用于数学运算。
数组类型
基本 组分
组分内容 双精度实数标量(MATLAB系统 默认) 双精度复数标量 字符 可以存放任意类型、任意大小的 数据 只有结构的“域”可以存放数据, 数据可以是任意类型、任意大小。
N维数组
逻辑型 logical
字符型 char
数值型
函数句柄 function_handle
异质容器
浮点型
整型
基于名字 struct
基于索引 cell
单精度 single
双精度 double 默认类型
有符号 int8 int16
无符号 uint8 uint16 uint32 8位 16位 32位 64位
变量的定义
• • • • 与C语言不同的地方-不用事先申明 以字母开头 对大小写敏感 不使用保留字或matlab预先定义的变量名
数据类型
数据类型
• MATLAB中有15种基本的数据类型,有逻 辑型、字符型、整型、浮点型、结构数组、 元胞数组以及函数句柄等。其中整型又分 为有符号整型和无符号整型,8位整型、16 位整型、32位整型和64位整型,浮点型又 分为单精度浮点型和双精度浮点型。具体 可以通过MATLAB中自带的isa函数查看。
基本组分 占用字节 数 8 16 2
数值数组 (Numeric Array)
字符串数组 (Character String Array) 元胞数组 (Cell Array) 结构数组 (Structure Array)
元素
元素
元胞
不定
结构
不定
元胞数组(cell)
• • • • • • • clear all c = [1:2;3:5] clear c c = {1:2;3:5} c1 = cell2mat(c(1)) c2 = cell2mat(c(2)) c2(2:3) • c = {[ 1 2 3] [4 5 6 7] ['rats mice']; [' d'] [['rats mice'] [' d']] [1 3]}
Ctrl+C
中断程序的运行,用于耗时过长程序的紧急中断
MATLAB搜索路径设置
工作空间窗口(Workspace)
工作空间浏览器(workspace browser) • 查询和编辑已定义变量 • 通过右键菜单进行编辑或绘图等相关操作
程序编辑窗口(Editor)
一、编辑M文件
将M代码保存成扩展名为.m的文件,称之为M文件。M文 件通常在程序编辑窗口(或称脚本编辑窗口)中编写,也 可在记事本、写字板等文本编辑工具中编写,只需保存成 M文件即可。
Matrix Laboratory
主要内容
Matlab的编程环境
Matlab工作界面
运算符 数组运算 M代码的编写与调试 (变量类型 )
MATLAB工作界面布局
工作界面的显示属性和布局调整
MATLAB命令窗口中常用的快捷键
快捷键 方向键↑ 方向键↓ Tab 键
说
明
调出历史命令中的前一个命令 调出历史命令中的后一个命令 输入命令的前几个字符,然后按 Tab 键,会弹出前 面包含这几个字符的所有命令, 方便查找所需命令
• • • • c_first_row = c{1,:,:} c_second_row = c{2,:,:} c_third_row = c{3,:,:} c_third_row_again = c{3}
• • • •
disp('c first row column 1 and second row column 1') % Assigning this to a variable would cause problems c{1:2,1} d = {[1 2] [3 4 5] [6 7] [8 9 10]} • d_first_row_first_column = d{1,1} • d_first_row_first_column_element_1 = d{1,1}(2) • d_second_row_second_column_elements_2_and3 = d{2,2}(2:3)
• Names_and_Numbers = { 'Bob' 90 'Jane' 100 } • cell2mat(Names_and_Numbers(1,1)) • cell2mat(Names_and_Numbers(1,2))
几种数组的转换
mat2cell,将矩阵分块,转为元胞数组 cell2mat,将元胞数组转为矩阵
num2cell ,将数值型数组转为元胞数组
cell2struct,将元胞数组转为结构数组 struct2cell,将结构数组转为元胞数组 num2str,将数值型数组转为字符型数组 str2num,将字符型数组转为数值型数组
三、数据输出格式
MATLAB中值型数据的输出格式可以通过 format 命 令指定
MATLAB编程简介
预备知识
• 线性代数基础 • 常用编程语言的编程基础 • 实验心理学的组内、组间设计及随机化
本章要点
• • • • • 了解Matlab及其特性 熟悉Matlab基本操作 通过 Matlab进行基本的数值运算 掌握心理实验设计常用的Matlab函数 编写简单的 Matlab 程序并进行调试