Matlab基本语法和基本操作

来源:互联网 发布:索引超出了数组界限 编辑:程序博客网 时间:2024/05/18 18:20

Contents

  • 1.2.1 变量赋值:
  • 1.2.2 矩阵运算
  • 1.2.3 程序控制语句
  • if语句
  • 循环语句
  • 1.2.4 基本绘图方法
  • 绘图的基本步骤:
  • 三维图形的绘制
  • 空间曲面的绘制

1.2.1 变量赋值:

一般形式: 变量 = 表达式(数)

a = [1 2 3 ; 4 5 6 ; 7 8 9 ]    %矩阵形式赋值.a = 1:2:10                      %固定步长的矩阵.zeros(3,2)                      %三行两列的全零矩阵.who                 %   检查工作空间的变量whos                %   检查存于工作空间变量的详细资料
a =     1     2     3     4     5     6     7     8     9a =     1     3     5     7     9ans =     0     0     0     0     0     0Your variables are:A    B    C    X    Y    Z    a    ans  b    f1   f2   fs   i    num  t    x    y    y1   y2   yy     Name       Size             Bytes  Class     Attributes  A          3x3                 72  double                B          3x3                 72  double                C          3x3                 72  double                X         21x21              3528  double                Y         21x21              3528  double                Z         21x21              3528  double                a          1x5                 40  double                ans        3x2                 48  double                b          1x32               256  double                f1         1x1                  8  double                f2         1x1                  8  double                fs         1x1                  8  double                i          1x1                  8  double                num        1x1                  8  double                t          1x221             1768  double                x          1x21               168  double                y          1x21               168  double                y1         1x126             1008  double                y2         1x126             1008  double                yy         1x221             1768  double              

1.2.2 矩阵运算

常用函数:

%* norm    范数% * det     行列式% * inv     方阵的逆矩阵% * size    矩阵的阶数% * rank    秩% * trace   迹% * eig     特征值和特征向量% * ^       乘方运算% * sqrtm   开方运算% * expm    指数运算% * logm    对数运算A = [6 7 5 ; 3 6 9 ; 4 1 5 ]B = 20 + AC = inv (A) * Beig(C)      %求矩阵的特征根% 矩阵的乘方运算和开方运算A = [6 7 5 ; 3 6 9 ; 4 1 5 ]B = A^2C = sqrtm(B)
A =     6     7     5     3     6     9     4     1     5B =    26    27    25    23    26    29    24    21    25C =    3.8571    2.8571    2.8571   -0.9524    0.0476   -0.9524    1.9048    1.9048    2.9048ans =    4.8095    1.0000    1.0000A =     6     7     5     3     6     9     4     1     5B =    77    89   118    72    66   114    47    39    54C =    6.0000    7.0000    5.0000    3.0000    6.0000    9.0000    4.0000    1.0000    5.0000

1.2.3 程序控制语句

  • if语句
  • 循环语句

if语句

x = 32 ; y = 86;if x > y    'x 大于 y'elseif  x < y    'x 小于 y'elseif x == y   ' x 等于y'else 'error'end
ans =x 小于 y

循环语句

 
  • for 循环的基本格式为:

for 循环变量 = 起始值 : 步长 : 终止值 
   循环体 
end

 

% for循环使用示例a = 0;for i = 1:1:10    a = a + i ;enda
a =    55

 

  • while循环语句基本格式为

while    表达式 
     循环体 
end

 

% while循环使用示例num = 0; a = 5;while a >1    a = a/2;    num = num + 1;endnum
num =     3

1.2.4 基本绘图方法

  • plot 二维线性图
  • subplot 绘制子图
  • figure() 创建一个图的窗口
  • titel 图的标题
  • xlabel x坐标
  • ylabel y坐标
  • grid 图显示网格
  • hold 保持当前图形
  • clf 清除图形和属性
  • mesh 三维网线图
  • plot3 三维图形
  • surf 三维表面图
  • 绘图的基本步骤
  • 三维图形的绘制
  • 空间曲面的绘制

绘图的基本步骤:

x = -pi:.1:pi;y1 = sin(x);y2 = cos(x);        %准备绘图数据figure(1)           %打开图形窗口subplot(2,1,1)      %确定第一幅图绘图窗口plot(x,y1)          %以x,y1绘图title('绘图的基本步骤') %为第一幅图设置标题:"绘图的基本步骤"grid on             %显示网格线subplot(2,1,2)      %确定第二幅图绘图窗口plot(x,y2)          %以x,y2绘图xlabel('time')      %为第二幅设置x坐标名'time'ylabel('y')         %为第二幅设置y坐标名'y'figure(2)           %打开图形窗口subplot(1,2,1),stem(x,y1,'r')       %绘制红色的脉冲图subplot(1,2,2),errorbar(x,y1,'g')   %绘制绿色的误差条形图

 

chapter1_2_01

 

chapter1_2_02

三维图形的绘制

figure(3)x = 0:0.1:4*pi;y1 = sin(x);y2 = cos(x);plot3(y1,y2,x)title('绘图的三维图形')grid on

 

chapter1_2_03

 

空间曲面的绘制

x = [-2:0.2:2];y = x;[X,Y] = meshgrid(x,y);Z = X.*exp(-X.^2-Y.^2);subplot(2,2,1)          % 绘制子图第一幅surf(Z);shading flatsubplot(2,2,2)           % 绘制子图第二幅mesh(Z);subplot(2,2,3)           % 绘制子图第三幅meshc(Z)subplot(2,2,4)           % 绘制子图第四幅surfl(Z)view(20,7)

 

 

chapter1_2_04

0 0
原创粉丝点击