首页 > 代码库 > Matlab自带教程学习笔记2

Matlab自带教程学习笔记2

定义复数,类似:

x=3+4i

 

定义矩阵,类似:

a=[1 2 3;4 5 6;7 8 9]

 

使用Shift+F1查看可用函数,或是直接单击fx按钮,类似:

 

 

使用rand获取随机数(0-1内)

例如,使用

rand(3,3)

生成一个3行3列的随机数矩阵;

若要生成一个行列相等的随机数方阵,可以使用rand(n)函数,类似:

rand(5);

将生成5x5的随机数方阵;

 

使用size获取变量的大小,类似:

t=[1 2 3 4 5];

size(t);

得到的是1 5,就是1行5列;

 

t=[1 2 3;4 5 6;7 8 9];

size(t);

得到的就是3行3列;

 

矩阵转置,类似:

a=[1 2 3;4 5 6;7 8 9];

b=a‘;

就是在a后加上一个单引号;

 

使用*可以直接进行矩阵乘法,但是注意,必须符合规范才能进行乘法;

否则出错,类似:

a=[1 2 3;4 5 6;7 8 9]

b=[1 2;3 4]

则a*b会报错如下:“

??? Error using ==> mtimes
Inner matrix dimensions must agree.

 

.运算,类似

a.*b

就是将a和b对应的元素做乘法;同理可以用在/(除法)上,但是除法因为使用/和\的不同而分为左点除和右点除;

类似;

a=[1 2;3 4]

b=a‘

c=a./b

则输出:

c =

1.0000 0.6667
1.5000 1.0000

 

而是用a.\b的时候则会输出:

c =

1.0000 1.5000
0.6667 1.0000

 

使用inv(n)求矩阵的逆矩阵,类似

a=[1 2;3 4]

inv(a)

输出就是:

ans =

-2.0000 1.0000
1.5000 -0.5000

 

使用矩阵或是数组名a(m,n)可以获取矩阵m行n列的数值,类似

a=[1 2 3;4 5 6;7 8 9]

a(2,3)

输出:

ans = 6

 

使用如下类似的语法可以输出矩阵的特定区域,类似:

a(1:3,2:end)

输出

矩阵从1-3行,2-end列的值

 

使用

a(1:3,:)表示输出1-3行的所有值,:代替所有列,同理a(:,2:end)输出2-结束的所有列;

 

对于以上的表达式均可以赋值,因为他们的副作用并非是输出值,而是取出矩阵中的值;

因此

a(:,2:end)=0

之后,再输出a的话就是这样:

a =

1 0 0 0
4 0 0 0
7 0 0 0
3 0 0 0

 

使用surf可以制作三维着色表面图(  三维表面图 表面图)(我也不知道是什么)

按照百度知道上的说法做了一个:

y=[1:100];

w=y‘*y;

surf(w);

绘制出来的图像像这样:

 

Matlab自带教程学习笔记2