Matlab變量

在MATLAB環境中,每個變量都是數組或矩陣。

可以以簡單的方式分配變量。 例如,

x = 12       % defining x and initializing it with a value

MATLAB執行上述語句並返回以下結果 -

Trial>> x = 12       % defining x and initializing it with a value

x =

    12

它創建一個名爲x1×1矩陣,並將值3存儲在其元素中。再來看一個例子,如下,

x = sqrt(16)     % defining x and initializing it with an expression

MATLAB執行上述語句並返回以下結果 -

Trial>> x = sqrt(16)     % defining x and initializing it with an expression

x =

     4

請注意 -

  • 當變量輸入到系統中,可以在接下來代碼中引用。
  • 變量在使用前必須有值。
  • 當表達式返回未分配給任何變量的結果時,系統將其分配給名爲ans的變量,稍後可以使用它。

例如,

sqrt(99)

MATLAB執行上述語句並返回以下結果 -

Trial>> sqrt(99)

ans =

    9.9499

可以使用這個ans變量 -

sqrt(99);
99.499/ans

MATLAB執行上述語句並返回以下結果 -

Trial>> sqrt(99);
99.499/ans

ans =

   10.0000

下面我們再來看另一個例子 -

x = 7 * 8;
y = x * 7.89

MATLAB執行上述語句並返回以下結果 -

Trial>> x = 7 * 8;
y = x * 7.89

y =

  441.8400

多重分配賦值

可以在同一行上擁有多個賦值。 例如,

a = 2; b = 7; c = a * b

MATLAB執行上述語句並返回以下結果 -

c = 14

變量歷史

who命令顯示使用過的所有變量名。

Trial>> who

您的變量爲:

ans  x    y

whos命令更多地顯示變量 -

  • 當前在內存中的變量
  • 每個變量的類型
  • 每個變量的內存分配
  • 是否是複合的變量?

執行結果如下 -

Trial>> whos 
  Name      Size            Bytes  Class     Attributes

  ans       1x1                 8  double              
  x         1x1                 8  double              
  y         1x1                 8  double

清除命令從存儲器中刪除所有(或指定的)變量。

clear x     % it will delete x, won't display anything
clear          % it will delete all variables in the workspace
            %  peacefully and unobtrusively

長任務

長任務可以通過使用省略號(...)擴展到另一行。 例如,

initial_velocity = 0;
acceleration = 9.8;
time = 20;
final_velocity = initial_velocity ...
    + acceleration * time

MATLAB執行上述語句並返回以下結果 -

Trial>> initial_velocity = 0;
acceleration = 9.8;
time = 20;
final_velocity = initial_velocity + acceleration * time

final_velocity =

   196

格式命令

默認情況下,MATLAB顯示四位小數位數。這稱爲:短格式

但是,如果要更精確,則需要使用format命令。

format long命令顯示十進制後的16位數字。

例如 -

Trial>> format long
x = 7 + 10/3 + 5 ^ 1.2

x =

  17.231981640639408

另一個示例如下 -

Trial>> format short
x = 7 + 10/3 + 5 ^ 1.2

x =

   17.2320

format bank命令將數字舍入到小數點後兩位。例如,

format bank
daily_wage = 177.45;
weekly_wage = daily_wage * 6

MATLAB執行上述語句並返回以下結果 -

Trial>> format bank
daily_wage = 177.45;
weekly_wage = daily_wage * 6

weekly_wage =

       1064.70

MATLAB使用指數符號顯示大數字。

format short e命令以指數形式顯示四位小數加上指數。

例如,

format short e
4.678 * 4.9

MATLAB執行上述語句並返回以下結果 -

Trial>> format short e
4.678 * 4.9

ans =

   2.2922e+01

format long e命令允許以指數形式顯示十六位小數加上指數。 例如,

format long e
x = pi

MATLAB執行上述語句並返回以下結果 -

Trial>> format long e
x = pi

x =

     3.141592653589793e+00

format rat命令給出計算結果最接近的合理表達式。 例如,

format rat
4.678 * 4.9

MATLAB執行上述語句並返回以下結果 -

Trial>> format rat
4.678 * 4.9

ans =

    2063/90

創建向量

向量是數字的一維數組。MATLAB允許創建兩種類型的向量:

  • 行向量
  • 列向量

行向量是通過用方括號中的元素集合來創建的,使用空格或逗號分隔元素。

例如,

r = [7 8 9 10 11]

MATLAB執行上述語句並返回以下結果 -

Trial>> r = [7 8 9 10 11]

r =

       7              8              9             10             11

另一個示例

r = [7 8 9 10 11];
t = [2, 3, 4, 5, 6];
res = r + t

MATLAB執行上述語句並返回以下結果 -

Trial>> r = [7 8 9 10 11];
t = [2, 3, 4, 5, 6];
res = r + t

res =

       9             11             13             15             17

列向量通過用方括號中的元素集合來創建,使用分號(;)來分隔元素。

c = [7;  8;  9;  10; 11]

MATLAB執行上述語句並返回以下結果 -

Trial>> c = [7;  8;  9;  10; 11]

c =

       7       
       8       
       9       
      10       
      11

創建矩陣

矩陣是數字的二維數組。

在MATLAB中,通過將每行作爲一系列空格或逗號分隔的元素輸入矩陣,並以行號分隔一行。 例如,創建一個3x3的矩陣:

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

MATLAB執行上述語句並返回以下結果 -

Trial>> m = [1 2 3; 4 5 6; 7 8 9]

m =

       1              2              3       
       4              5              6       
       7              8              9