命令(Commands)

命令(Commands)是一種特別的函數,他只能接受字串的輸入參數,它可用類似一般函數的方式呼叫,也可以不使用小括號,例如:

my_command hello world

這樣呼叫等同於

my_command("hello", "world")

命令的標準使用方式為:

name arg1 arg2 ...

Octave 會將其轉換為

name ("arg1", "arg2", ...)

一般的函數若其參數皆為字串,也可以使用這樣的方式呼叫,但在呼叫之前必須要使用 mark_as_command 指令將此函數標示為命令,例如:

mark_as_command name

其中 name 就是要標示為命令的函數名稱。

當一個要傳給命令的參數儲存在變數中時,無法直接以命令呼叫的方式傳入變數,因為 Octave 無法區分傳入的是變數名稱還是一般的字串,這個時候唯一的辦法就是以一般函數的呼叫方式來呼叫。

Octave 函數架構(Organization of Functions)

許多 Octave 的標準函數都是以函數檔案的方式儲存,其存放的位置為 <octave-home>/lib/octave/<version>/m 目錄,此目錄中又以不同的主題區分為多個子目錄,以下是各個子目錄名稱與其包含的函數類型:

  • audio:播放與錄製聲音的相關函數。
  • control:自動控制系統的設計與模擬的相關函數。
  • elfun:基本函數。
  • finance:財務函數。
  • general:各種矩陣操作與其他函數。
  • image:影像處理函數。
  • io:輸入與輸出函數。
  • linear-algebra:線性代數相關函數。
  • miscellaneous:雜項。
  • optimization:最佳化函數。
  • path:路徑管理函數。
  • pkg:安裝 Octave 套件。
  • plot:2D 與 3D 繪圖函數。
  • polynomial:多項式函數。
  • set:集合相關函數。
  • signal:數位訊號處理函數。
  • sparse:稀疏矩陣相關函數。
  • specfun:特殊函數。
  • special-matrix:特殊矩陣函數。
  • startup:Octave 系統啟動函數。
  • statistics:統計相關函數。
  • strings:字串相關函數。
  • testfun:測試用函數。
  • time:時間紀錄函數。