控制系统与MATLAB的菜鸟教程(二)…

为打字方便,以下把MATLAB简称小麦

周六到鸟!!我爱周六!!泡上一杯茶,继续写这个东东……
按上次说的,这篇来个一锅端,内容设涉及到 数值计算,操作矩阵,符号运算,求解微分方程,基本的编程语句等。 所有例子的运行结果我就不给出答案了,可以自己运行一下,一些代码我在输入的时候难免马虎,望包涵,一些可以自行修改,一些可以提出来,我会尽快修正。 一些需要特别注意的问题我用粉红色的四号字标出,大家务必要记住这些内容。

我们还是按套路先从矩阵开始吧!

先来定义一个3阶的矩阵:

(这样的矩阵好像叫帕什么矩阵,知道的说一下哈)

在小麦的命令窗口中输入如下代码就ok了:
  1. A=[1,1,1;1,2,3;1,3,6]
复制代码

这里,逗号也可以用空格代替,然后按回车看看会有什么结果

继续,现在我想把这个帕什么矩阵的第二行取出来。可以运行下面的代码:
  1. a=A(2,:)
复制代码

注意,在小麦里,冒号有很多种含义,可以表示很多种运算的方式,这里可以简单的理解为:“全部元素”。

继续,现在我想取出这个矩阵的第三行第二列的元素也就是3,可以运行下面的代码,在输入“a”看结果:
  1. a=A(3,2);
复制代码


继续,现在我要把若干个上面的矩阵拼在一起组成一个大的矩阵,定义的方式和定义数字矩阵的格式一样,只不过是刚才相应位置上的数字变成的矩阵的名字,可以运行下面的代码,看看有什么结果:
  1. [A,A]
  2. [A,A;A,A]
复制代码



现在来介绍生成一些特殊矩阵的生成方式: 

学线性代数的时候,我们最喜欢的矩阵是0矩阵单位矩阵是吧!OK,先从他们俩开始

先定义个单位矩阵,函数名是eye()
运行下面的代码生成一个4阶单位矩阵:
  1. eye(4);
复制代码


生成0矩阵的函数是zeros()
运行下面的代码生成一个34列的零矩阵:
  1. a=zeros(3,4);
复制代码
注意,可能有的朋友会问:定义零矩阵有什么用呢?
定义一个零矩阵在一些时候有着非常重要的作用,比如后面也许我们会说到,对于一些变量,我们一开始不知道它的个数,这个时候就需要我们为这些不知道的东西预先分配存储空间,然后得到一个就存进去一个,这种预先分配存储的空间的动作可以提高程序运行的效率,其实不光是小麦,这种思想也体现在其他的编程语言之中。


继续,我们喜欢的另一种矩阵就是对角矩阵是吧,现在来定义它
函数名字:diag()
语法:diag(v,k),这里,k远离主对角线的列数,正数是向上远离,负数是向下,如果你不写,默认的就是0
运行下面两段代码,输入"a"回车看能产生什么结果:
  1. v=[1 2 3 4];
  2. k=1;
  3. a=diag(v,k);
复制代码
<

你可能感兴趣的:(matlab控制系统设计)