实验一:了解数学软件MATLAB
实验目的与要求:
了解MATLAB的基本特点,掌握MATLAB界面上的主要窗口,熟练掌握MATLAB的帮助系统。
实验内容:
1、启动按钮
打开MATLAB主页面以后,单击“Start”按钮,显示一个菜单,利用“Start”菜单及其子菜单中的选项,打开MATLAB的有关工具。
2、命令窗口
命令窗口(Command Window)是用于输入数据,运行MATLAB函数和脚本并显示结果的主要工具之一。命令窗口没有打开时,从“Desktop”菜单中选择“Command Window”选项可以打开它。
在命令窗口中键入命令并执行:a=[1 2 3;4 5 6;7 8 9]
在上述语句末尾加分号“;”,结果是什么?请与不加分号情况作比较。
a=[1 2 3;4 5 6;7 8 9]
a =
1 2 3
4 5 6
7 8 9
a=[1 2 3;4 5 6;7 8 9];
在语句末尾加分号(;),可以防止输出结果显示到屏幕上。
命令窗口中有一些常用的功能键,利用他们可以使操作更简便快捷。说明常用的功能键的功能。
命令窗口常用功能键
功能键
功 能
↑,ctrl-P
重新调入上命令行
↓,ctrl-N
重新调入下命令行
←,ctrl-B
光标左移一个字符
→,ctrl-F
光标右移一个字符
Home
光标移到行首
End
光标移到行尾
Esc
清除命令行
Del
删除光标处字符
Backspace
删除光标左边字符
Ctrl+k
删除至行尾
3、命令历史窗口
命令历史窗口(Command history)显示命令窗口中最近输入的所有语句。先关闭命令历史窗口,再分别用“desktop”菜单打开它和用Command history命令打开它。
(1)将命令历史窗口中的语句复制到命令窗口中;
(2)直接双击命令历史窗口中的语句。
4、工作空间窗口
清空工作空间的命令是:clear
清空命令窗口的命令是:clc
在命令窗口中键入:
t=0:pi/4:2*pi
y=sin(t)
t =
Columns 1 through 8
0 0.7854 1.5708 2.3562 3.1416 3.9270 4.7124 5.4978
Column 9
6.2832
y =
Columns 1 through 8
0 0.7071 1.0000 0.7071 0.0000 -0.7071 -1.0000 -0.7071
Column 9
-0.0000
在命令窗口中键入:who,看运行结果;
who
Your variables are:
a t y
在命令窗口中键入:whos,看运行结果;
whos
Name Size Bytes Class
a 3x3 72 double array
t 1x9 72 double array
y 1x9 72 double array
Grand total is 27 elements using 216 bytes
在命令窗口中键入:whos y,看运行结果;
whos y
Name Size Bytes Class
y 1x9 72 double array
Grand total is 9 elements using 72 bytes
退出MATLAB时,工作空间中的内容随之清除。可以将当前空间中的部分或全部变量保存到一个MATLAB文件中,它是一种二进制文件,扩展名为.mat,然后可以在以后使用它时载入它,请练习这一操作过程。
5、帮助浏览器
使用帮助浏览器可以搜索和查询所有Math Works产品的文档和演示。帮助浏览器是集成到MATLAB桌面上的一个HTML查看器。请打开帮助浏览器,熟悉它。分别用Help函数和doc函数获取format函数的帮助,进而说明format函数的功能。
实验二:数学软件MATLAB的数据类型
实验目的与要求:
掌握MATLAB的数组,矩阵,字符串,多维数组,结构数组,单元数组和函数句柄等数据类型。
实验内容:
1、常数
在命令窗口中分别键入:
Rho=(sqrt(5)-1)/2
A=abs(3+4i)
Realmax
Huge=exp(log(realmax))
Toobig=pi*huge
观察执行结果
rho=(sqrt(5)-1)/2
rho =
0.6180
a=abs(3+4i)
a =
5
realmax
ans =
1.7977e+308
huge=exp(log(realmax))
huge =
1.7977e+308
toobig=pi*huge
toobig =
Inf
2、变量
函数iskeyword的功能是:列出所有预留的关键字
在命令窗口中键入命令iskeyword并记结果。
iskeyword
ans =
'break'
'case'
'catch'
'continue'
'else'
'elseif'
'end'
'for'
'function'
'global'
'if'
'otherwise'
'persistent'
'return'
'switch'
'try'
'while'
3、输出格式
练习使用format命令设置变量的输出格式
format: 以5位定点格式输出变量值。
format short e: 以5位浮点格式输出变量值。
format short g: 在5位定点与5位浮点中选择最好的格式
示。
format long: 以15位定点格式输出double型变量值。
format long e: 以15位浮点格式输出double型变量值。
format hex: 以16进制输出变量值。
format +: 在矩阵中,用符号+,—和空格分别表示正号,负号和零。
format compact: 变量之间没有空行。
format loose: 变量之间有空行。
4、练习在MATLAB中构造一维数组的方法。
x=[1 2 3 4 5 6]
x =
1 2 3 4 5 6
5、练习在MATLAB中构造二维数组(矩阵)的方法。
a=[1 2 3;4 5 6;7 8 9]
a =
1 2 3
4 5 6
7 8 9
6、练习在MATLAB中如何获取矩阵的元素。
a=magic(4)%
a =
16 2 3 13
5 11 10 8
9 7 6 12
4 14 15 1
b1=A(4,3)%获取矩阵A的第4行第3列元素
b1=
15
b2=A(1,end)%获取矩阵A的第1行的最后一列元素
b2=
13
b3=A(end)%获取矩阵A的最后一行的最后一列元素
b3=
1
b4=A(end,3)%获取矩阵A的第3列的最后一行元素
b4=
15
7、练习在MATLAB中如何获取与矩阵有关的信息。
a=[1 2;3 4;5 6];
b=[2 2;2 2;1 1];
c=cat(3,a,b)
c(:,:,1) =
1 2
3 4
5 6
c(:,:,2) =
2 2
2 2
1 1
m=length(c)
m =
3
n=ndims(c)
n =
3
N=numel(c)
N =
12
size(c)
ans =
3 2 2
8、练习在MATLAB中如何创建字符串。
a='china' ;
whos a
Name Size Bytes Class
a 1x5 10 char array
Grand total is 5 elements using 10 bytes
可见,a是一个1行5列的字符数组。
9、练习在MATLAB中如何创建二维字符串。
name=['li yi';'hu xu']
name =
li yi
hu xu
10、练习在MATLAB中数据类型的转换。
a={'sunjunfang','new student','beijing'}%
a =
'sunjunfang' 'new student' 'beijing'
whos a
Name Size Bytes Class
a 1x3 236 cell array
Grand total is 31 elements using 236 bytes
b=char(a)%
b =
sunjunfang
new student
beijing
whos b
Name Size Bytes Class
b 3x11 66 char array