您的位置:首页 > 编程语言 > MATLAB

Matlab学习(三)

2016-07-11 11:05 357 查看

文件存储

.mat

在Matlab中,为了方便我们在之后的工作中随时进行中断的工作,我们可以在IDE中通过:

点击“文件(File)”下接菜单

选择“保存工作区为(Save Workspace As…)”

输入文件名

点击“保存(Save)”按钮

将当前工作状态保存为.mat文件,之后我们就可以随时、随地在任何安装Matlab软件的计算机上使用当前工作状态。

.m

有时候,特别是复杂工程,我们可能无法坐在一个地方把所有的表达式全部输进去。把很长的一系列命令保存到一个文件中,然后仅在命令窗口输入一个简单命令就能执行。这就是创建脚本文件。

脚本文件(script file)就能这样做了。这种类型的文件被称为MATLAB程序,以.M 为扩展名保存。因此,我们也称为 M 文件。我们也可以创建全是 函数(function)的 M 文件

在IDE中点击New Script按钮,新建脚本文件

输入以下示例代码

x = [1:2:3:4]; %x赋值为数组,元素之间以:或者;间隔
y = exp(x)


保存为文件Untitled.m

在Command Window中输入Untitled

显示
exp(x)
结果
2.7183    7.3891   20.0855   54.5982


向量

列向量

MATLAB 允许你创建列向量和行向量,列向量通过在方括号内把数值用分号(;)隔开来创建,对元素的个数没有限制。

例如,要创建一个含有三个元素的向量,我们写成:

a = [2; 1; 4]
a =
2
1
4

>> a*3

ans =

3
6
9


行向量

要创建行向量,我们仍然是把一组数值用方括号括起来,不过这次使用的分隔符是空格

(space)或逗号(,)。例如:

>> v = [2 0 4]

v =
2 0 4
% 或者使用逗号:
>> w = [1,1,9]

w =
1 1 9


转置

使用转置操作可以进行列向量与行向量之间的相互转换。

在 MATLAB 中,我们用单引号(’)代表转置操作,把列向量与行向量互相转换的例子为:

>> a = [2; 1; 4];
>> y = a'
y =
2 1 4

>> Q = [2 1 3]
Q =
2 1 3
>> R = Q'
R =
2
1
3


其他使用

>> A = [1; 4; 5];
>> B = [2; 3; 3];
>> D = [A;B]
D =
1
4
5
2
3
3


也可能使用行向量来创建新向量。要从带有 m 个元素的行向量 r 和带有 n 个元素的行向量 s 中创建带有 m+n 个元素的行向量 u,我们写成 u = [r, s]。例如:

>> R = [12, 11, 9];
>> S = [1, 4];
>> T = [R, S]
T =
12 11 9 1 4


等差元素vector

有时需要创建带有等差元素的向量,差值为q为一个实数。创建一个首元素为s,末元素为e的向量x的语法如下:

x = [ s : q : e ]
>> x = [0:2:10]
x =
0 2 4 6 8 10

>> x = [0:0.1:1]

x =

Columns 1 through 10

0    0.1000    0.2000    0.3000    0.4000    0.5000    0.6000    0.7000    0.8000    0.9000

Column 11

1.0000


这里要注意的是,在数组(包括行向量、列向量)使用幂函数、或者与其他向量一一运算时,与其他operator不同:

Inputs must be a scalar and a square matrix.

To compute elementwise POWER, use POWER (.^) instead.

也就是说需要在数组变量中加上
.


>> y=x.^2

y =

Columns 1 through 10

0    0.0100    0.0400    0.0900    0.1600    0.2500    0.3600    0.4900    0.6400    0.8100

Column 11

1.0000


命令 length 返回向量中包含元素的个数

length(y)
ans=
11


向量乘

点乘

在MATLAB中,a、b两向量的点乘可以使用
dot(a, b)
命令计算。

两个向量点乘的结果是数量,也即是说,它只是一个数值。我们使用MATLAB计算一个简单的例子:

>> a = [1;4;7]; b = [2;-1;5];
>> c = dot(a,b)
c =
33


点乘可以用来计算向量的模,所需要的只是把向量同时传递给 dot 命令的两个参数。考

虑上一节的向量:

>> J = [0; 3; 4];


调用 dot 命令我们得到:

>> dot(J, J)
ans =
25


或者我们也可以用下面这种方式计算向量的模:

>> mag = sqrt(dot(J,J))
mag =
5


对于带有复数元素的向量,dot 操作也能正确计算:

>> u = [-i; 1 + i; 4 + 4*i];
>> dot(u, u)
ans =
35


叉乘

要计算向量的叉乘,这两个向量必须是的三维的

>> A = [1 2 3]; B = [2 3 4];
>> C = cross(A, B)
C =
-1 2 -1
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: