Matlab 導引:變數

Matlab 的變數名稱是一個字串 (string),其命名規則如下:

Matlab 有一些內建變數:

eps
稱為 machine epsilon,它是機器中能夠使得 1+x 的浮點計算結果會 > 1 的最小正浮點數 x。通常是 2 的次方,可以用 log2(eps) 檢查其次方數。
pi
圓周率。機器所能提供的最精確值,也就是 4*atan(1) 的值。
i
單位虛數,也就是 (-1) 的平方根。
ans
如果一個指令不是以分號 (;) 結束,但是也沒有將執行結果指定給一個變數名, 則自動將結果指定為 ans 的值。例如
>> 1+1
ans =
     2
>> ans/2
ans =
     1
Inf
無限大 (infinity)。嚴格來說這並不是一個變數,這是 IEEE 浮點計算標準中的一個記號。 1/0 就會產生這個結果。
NaN
非數 (Not a Number)。嚴格來說這並不是一個變數,這是 IEEE 浮點計算標準中的一個記號。 0/0 就會產生這個結果。
Matlab 並不會阻止您改變這些變數的值。但是要盡量小心不要更動到它們的值, 否則可能產生難以預期的錯誤 (除了 ans 之外)。 也就是說,請將以上變數名視為 Matlab 的保留字, 盡量不要去動它。

who 檢查目前的 Matlab 工作環境中記得哪些變數。例如
>> n=1;
>> x=[1 2 3]';
>> A=rand(3,3);
>> s='Hello, world.';
>> who
Your variables are:
A         ans       n         s         x
whos 列出目前 Matlab 工作環境中所有變數的陣列維度、 資料形態以及資料含量。例如
>> whos
  Name      Size         Bytes  Class
  A         3x3             72  double array
  ans       1x1              8  double array
  n         1x1              8  double array
  s         1x13            26  char array
  x         3x1             24  double array

Grand total is 27 elements using 138 bytes
注意所有數都以雙精度浮點數的資料型態 (double) 儲存, 字串以雙字元資料型態 (char) 儲存。 一個雙精度浮點數的資料含量是 8 拜或 64 畢, 一個雙字元的資料含量是 2 拜或 16 畢。 Matlab 為了國際化而選擇一律以 16 畢來儲存文字,可以說是為了 Unicode 的來臨做了準備。 純量被視為 1 乘 1 的陣列。

clear 清除所有在此工作環境中的變數,釋放記憶空間。 但內建變數不會被清除。 如果只要清除某些變數,就一一列出它們的名字,以空格隔開。例如
>> clear x ans
>> who
Your variables are:
A         n         s
>> clear
>> who
>>



[ 下一單元 ]    [ 上層目錄 ]

單維彰
中央大學數學系
桃園,中壢 320
shann@math.ncu.edu.tw
(C) Copyright 2000 Wei-Chang Shann 單維彰
建立:2000/01/09‧修改:2000/01/09