1.Matlab学习笔记之系统环境
1.Matlab的发展
MATLAB是MATrix LABoratory(矩阵实验室)的缩写
由John Little 、Cleve Moler 和 Steve Bangert合作,于1984年成立了MathWorks 公 司,并正式推出了MATLAB 1.0版
早期的MATLAB是用FORTRAN 语言编写,后采用C语言编写
2.MATLAB的主要功能
MATLAB是一种应用于科学计算领域的高级语言,它的主要功能包括:
-
数值计算功能
-
符号计算功能
-
绘图功能
-
程序设计语言功能
MATLAB是解释性语言,程序执行速度较慢
-
工具箱的扩展功能
3.MATLAB操作界面
MATLAB 采用流行的图形用户操作界面,集命令的输入、执行、修改和调试于一体(称为集成开发环境),操作非常直观、方便。
MATLAB 操作界面由多个窗口组成
主窗口
功能区提供了3个选项卡,分别为“主页”、“绘图”和“应用程序”。
命令行窗口
- 命令行窗口用于输入命令并显示除图形以外的所有执行结果,它是MATLAB 的主要交互窗口,用户的大部分操作都是在命令行窗口中完成的。
- MATLAB命令行窗口中的“>>”为命令提示符,表示MATLAB 处于准备状态。
- 在命令提 示符后输入命令并按Enter 键后,MATLAB 就会解释执行所输入的命令,并在命令后面显示执行结果。
- 在命令提示符“>>”的前面有一个“函数浏览”按钮fx, 单击该按钮可以按类别快速查找 MATLAB的函数。
当前文件夹窗口★
-
当前文件夹是指MATLAB运行时的工作文件夹,只有在当前文件夹或搜索路径下的文件、函数才可以被运行或调用。如果没有特殊指明,数据文件也将存放在当前文件夹下。
-
可以通过当前文件夹工具栏中地址框设置某文件夹为当前文件夹,也可使用cd 命令。例如, 将文件夹e:\matlab\work 设置为当前文件夹,可在命令行窗口输入如下命令:>>cd e:\matlab\work
工作区窗口
-
工作区也称为工作空间,它是MATLAB 用于存储各种变量和结果的内存空间。
-
在工作区窗口中,可对变量进行观察、编辑、保存和删除。工作区窗口是MATLAB操作界面的重要组成部分。
-
在该窗口中以表格形式显示工作区中所有变量的名称、取值,从表格标题行的右键快捷菜单中可选择增删显示变量的统计值,如最大值、最小值等
命令历史窗口
4.MATLAB的搜索路径★★★
当用户在命令行窗口输入一条命令后,MATLAB 将按照一定顺序寻找相关的命令对象。基本的搜索过程如下。
(1)检查该命令对象是不是一个变量。
(2)检查该命令对象是不是一个内部函数。
(3)检查该命令对象是否为当前文件夹下的程序文件(在MATLAB 中称为M文件)。
(4)检查该命令对象是否为MATLAB 搜索路径中其他文件夹下的M文件。
当 MATLAB 执行M文件时,都是在当前文件夹和设定好的搜索路径中搜索,如果M文件存放在其他位置,MATLAB 就找不到该文件。 一般情况下,MATLAB系统本身的M文件都存放在系统默认的搜索路径中,而用户建立的文件有可能没有保存在搜索路径中,而保存在自己的工作文件夹中,这时需要将用户的工作文件夹加入到 MATLAB 搜索路径,从而将用户文件 夹纳入MATLAB系统统一管理。
-
用path命令设置搜索路径
使用path 命令可以把用户文件夹临时纳入搜索路径,例如 >>path(path,‘e:\matlab\work’)
-
用对话框设置搜索路径
在 MATLAB “主页”选项卡的“环境”命令组中单击“设置路径”命令按钮,或在命令行 窗口执行 pathtool 命令,将出现“设置路径”对话框;可以通过“上移”“下移”等按钮修改该路径在搜索路径中的顺序
5. MATLAB帮助系统
-
help 命令:只搜索出那些关键字完全匹配的结果
-
lookfor命令:对搜索范围内的M文件进行关键字搜索,条件比较宽松
-
模糊查询:用户只需要输入命令 的前几个字母,然后按Tab 键,系统就会列出所有以这几个字母开头的命令。知道了命令或函 数名之后,可以进一步用help 命令查询其详细用法说明
演示系统
-
在MATLAB主窗口单击“主页”选项卡“资 源”命令组中的“帮助”下拉按钮并选择“示例”命令
-
在命令行窗口输入 demo 或 demos 命令
6.MATLAB基本操作★★★
命令行★
-
一个命令行输入一条命令,命令行以Enter键结束。
-
但一个命令行也可以输入若干条命令,各命令之间以逗号分隔,若前一命令后带有分号,则逗号可以省略
>>p=15,m=35 p = 15 m = 35 >>p=15;m=35 m = 35
续行符★
-
如果一个命令行很长,需要分成两行或多行来输入,则可以在第一个物理行之后加上3个小黑点并按Enter 键,然后接着在下一个物理行继续输入命令的其他部分。
-
3个小黑点称为续行符,即把下面的物理行看做该行的逻辑继续。
>>s=1-1/2+1/3-1/4+1/5-1/6+1/7-... 1/8+1/9-1/10+1/11-1/12;
命令行的编辑★
在 MATLAB 中,有很多的控制键和方向键可用于命令行的编辑。如果能熟练使用这些键将大大提高操作效率。
键 名 | 功 能 | 键 名 | 功 能 |
---|---|---|---|
⬆ | 前寻式调回已输入过的命令 | Home | 将光标移到当前行首端 |
⬇ | 后寻式调回已输入过的命令 | End | 将光标移到当前行末尾 |
⬅ | 在当前行中左移光标 | Del | 删除光标右边的字符 |
➡ | 在当前行中右移光标 | Backspace | 删除光标左边的字符 |
PgUp | 前寻式翻滚一页 | Esc | 删除当前行的全部内容 |
PgDn | 后寻式翻滚一页 | Ctrl+C | 中断一个MATLAB任务 |
注释★
注释以%开头,后面是注释的内容。
7.matlab功能演示
示例1:画函数图像
>>x=-2*pi:pi/180:2*pi;
>>plot(x,2.^(-abs(x)),':',x,sin(x));
示例2:求解方程
2
x
5
−
3
x
3
+
71
x
2
−
9
x
+
13
=
0
2x^5-3x^3+71x^2-9x+13=0
2x5−3x3+71x2−9x+13=0
>> p=[2,0,-3,71,-9,13];
>> x=roots(p)
x =
-3.4914 + 0.0000i
1.6863 + 2.6947i
1.6863 - 2.6947i
0.0594 + 0.4251i
0.0594 - 0.4251i
示例3:解方程组
{
2
x
+
3
y
−
z
=
2
8
x
+
2
y
+
3
z
=
4
45
x
+
3
y
+
9
z
=
23
\begin{cases} 2x+3y-z=2\\ 8x+2y+3z=4\\ 45x+3y+9z=23 \end{cases}
⎩
⎨
⎧2x+3y−z=28x+2y+3z=445x+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
符号计算解方程组
>> 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
z =
-76/273
>> eval([x,y,z])
ans =
0.5531 0.2051 -0.2784
示例4:求定积分
∫
0
1
x
l
n
(
1
+
x
)
d
x
\int_0^1{xln(1+x)dx}
∫01xln(1+x)dx
>>f=@(x)X.*log(1+x); %定义被积函数,log是MATLAB提供的对数函数
>>integral(f,0,1) %求定积分
ans =
0.2500
>>syms x
>>int(x*log(1+x),0,1)
ans =
1/4
Matlab学习笔记内容来源于《MATLAB程序设计与应用 第三版》刘卫国主编