📜  MATLAB在矩阵上的运算

📅  最后修改于: 2021-01-07 03:19:04             🧑  作者: Mango

MATLAB在矩阵上的运算

目的:研究矩阵的算术运算,矩阵的关系运算和矩阵的逻辑运算。

算术运算符:

Operations MATLAB Form Comments
Array
Addition
a+b Array & matrix addition are identical
Array Subtraction a-b Array & matrix subtraction are identical
Array Multiplication a.*b Array multiplication element by element multiplication of a & b
Matrix Multiplication a*b For matrix multiplication no of a column in matrix a=no of a column of matrix b
Array Right Division a./b Element by element division of a & b
Array Left Division a.\b Element by element division of a & b within the Numerator.
Matrix Right Division a/ba* inv(b) where inv represent inverse
Matrix Left Division a\b inv(a)*b
Array Exponential a.^b Element by element exponential of a & b i.e a(i , j) ^ b( i , j)

例子:

>>b=[4,5;6,7]

b =

     4     5
     6     7

>> c= [5,8;9,8]

c =

     5     8
     9     8

>> b+c

ans =

     9    13
    15    15

>> b-c

ans =

    -1    -3
    -3    -1


>> b.^c

ans =

        1024         390625
    10077696     5764801

>> b./c

ans =

    0.8000    0.6250
    0.6667    0.8750

>> b.\c

ans =

    1.2500    1.6000
    1.5000    1.1429

关系运算符:

关系运算符用于表示条件,例如“ space?0”和“ result?25”。它们采用两个数字(或字符串)操作数。它们产生逻辑结果(对或错)。

通用形式为:a1 op a2

a1和a2是算术表达式,变量或字符串。

op是以下之一

Operators Operations
== Equal to
~= Not equal to
> Greater than
>= Greater than equal to
< Less than
<= Less than equal to

例子

>>b=[4,5;6,7]

b =

     4     5
     6     7

>> c=[5,8;9,8]

c =

     5     8
     9     8

>> b>c

ans =

     0     0
     0     0

>> c>b

ans =

     1     1
     1     1

>> c==b

ans =

     0     0
     0     0

>> 'd'<'a'

ans =

     0

逻辑运算符:

  • &&:逻辑AND与快捷方式评估。如果第一个表达式为假,则返回false而不是计算第二个表达式。它仅在定标器值之间起作用。由于部分评估,速度更快。
  • &:逻辑AND评估两个表达式。它适用于定标器和数组值。
  • ||:包含逻辑或或具有快捷方式评估。如果第一个表达式为true,则返回true,而不是计算第二个表达式。它仅在定标器值之间起作用。由于部分评估,速度更快。
  • |:逻辑或评估两个表达式。它适用于定标器和数组值。
  • XOR:逻辑异或当且仅当一个操作数为true而另一个为false时,它返回true。

例子:

>> e=7

e =

     7

>> f=6

f =

     6

>> e&&f

ans =

     1

>> e||f

ans =

     1

>> g=0

g =

     0

>> e&&g

ans =

     0

>> f||g

ans =

     1

>> xor(e,f)

ans =

     0

>>b=[4,5;6,7]

b =

     4     5
     6     7

>> c=[5,8;9,8]

c =

     5     8
     9     8

>> b&c

ans =

     1     1
     1     1

>> b|c

ans =

     1     1
     1     1

>> xor(b,c)

ans =

     0     0
0    0

>> ~b

ans =

     0     0
     0     0

逻辑功能:

  • ischar(a):如果a是字符数组,则返回true,否则返回false。
  • isempty(a):如果a是一个空数组,则返回true,否则返回false。
  • isinf(a):如果a为无限,则返回true,否则返回false。
  • isnan(a):如果a不是数字,则返回true,否则返回false。
  • isnumeric(a):如果a是数字数组,则返回true,否则返回false。
  • 逻辑:将Math 转换为逻辑。

例子:

>> ischar(g)

ans =

     0

>> b

b =

     4     5
     6     7

>> logical(b)

ans =

     1     1
0    1


>> n='y'

n =

y

>> ischar(n)

ans =

     1

>> isempty(n)

ans =

     0

>> isnumeric(n)

ans =

     0

>> y=1234

y =

        1234

>> isnumeric(y)    

ans =

     1