没有合适的资源?快使用搜索试试~ 我知道了~
首页scilab官方教程PDF
资源详情
资源评论
资源推荐

目 錄
1 Scilab 簡介 2
1.1 中文版前言 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Scilab 是什麼? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3 軟體架構 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.4 安裝及系統需求 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.5 文件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2 Scilab 簡易教學 6
2.1 啟動 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2 編輯 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.3 變數宣告、分行、多行連結及註解 . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.4 計算環境、系統變數、常數及特殊變數 . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.5 矩陣數內容的設定及讀取 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.6 函數呼叫 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.7 使用多項式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.8 多項式矩陣及行列式之符號運算 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.9 分式多項式矩陣及其分子及分母多項式 . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.10 計算環境之層次 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.11 頻率響應及繪圖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.12 合成函數 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.13 動態系統、狀態空間及轉換函數 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.14 狀態空間資料的詳細內容 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.15 動態子系統之並聯 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.16 設計 Scilab 函數 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.17 補償器設計範例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.18 執行系統指令 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.19 以 Fortran 或 C 語言提供動態程式庫 . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.20 常微分方程組應用範例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.21 運算子設計 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.22 函數參數的傳遞 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3 操作環境 26
3.1 輸入輸出及環境 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.1.1 環境 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.1.2 Scilab 之啟動指令 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.1.3 輸入及輸出 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
i

3.2 線上手冊 (Help) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.3 常用函數 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.4 非線性計算 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.4.1 基楚觀念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.4.2 函數參數 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.5 交談式選單 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.6 TCL/TK Tk-Tcl 選單 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
4 資料型態 (Data Types) 30
4.1 特殊常數 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.2 數值矩陣 (Constant Matrices) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.2.1 純量 (Scalars) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.2.2 向量 (Vectors) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.2.3 矩陣 (Matrices) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.3 字串矩陣 (Matrices of Character Strings) . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.4 多項式及多項式矩陣 (Polynomial Matrices) . . . . . . . . . . . . . . . . . . . . . . . 38
4.4.1 分式多項式之簡化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.5 布林矩陣 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.6 整數矩陣 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4.7 串列 (Lists) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.8 N-維列陣 (N-dimensionnal arrays) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.9 線性系統之表示式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.10 函數 (巨集) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
4.11 程式庫 (Libraries) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.12 物件 (Objects) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.13 矩陣運算 Matrix Operations) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.14 指標 (Indexing) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.14.1 矩陣指標 (Indexing in matrices) . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.14.2 串列標定 (Indexing in lists) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
5 語言結構及函數 73
5.1 Scilab 語言控制結構 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
5.1.1 比較運算子 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
5.1.2 迴圈 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
5.1.3 條件式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
5.2 函數定義及使用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
5.2.1 函數結構 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
5.2.2 載入函數 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
5.2.3 全域及局部變數 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
5.2.4 特殊函數指令 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
5.3 定義新資料型態之運算函數 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
5.4 偵錯 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
6 繪圖 86
6.1 圖形視窗 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
6.2 輸出媒體 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
6.3 圖形之全域參數 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
ii

目 錄
1
6.3.1 圖形內文 (Graphics Context) . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
6.3.2 圖形操作 (Manipulations) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
6.4 2D 繪圖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
6.4.1 基礎 2D 繪圖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
6.4.2 文字標示及圖形顯示 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
6.4.3 特殊 2D 繪圖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
6.4.4 特定幾何之繪圖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
6.4.4.1 多邊形繪圖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
6.4.4.2 曲線繪圖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
6.4.5 繪出字串 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
6.4.6 自動控制常用之繪圖指令 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
6.4.7 其他 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
6.5 3D 繪圖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
6.5.1 3D 繪圖一般指令 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
6.5.2 3D 繪圖特定指令 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
6.5.3 2D 及 3D 混合繪圖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
6.5.4 次視窗 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
6.5.5 繪圖範例集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
6.6 在 L
A
T
E
X文件中插入 Scilab 圖檔 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
6.6.1 由視窗到紙張 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
6.6.2 產生 Postscript 檔 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
6.6.3 L
A
T
E
X文章內加入 Postscript 圖檔 . . . . . . . . . . . . . . . . . . . . . . . . . 106
6.6.4 EPS 檔 (Encapsulated Postscript) . . . . . . . . . . . . . . . . . . . . . . . . . 108
7 以 C 或 Fortran 程式與 Scilab 溝通 109
7.1 使用動態聯結 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
7.1.1 動態聯結 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
7.1.2 呼叫動態連結之程式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
7.2 介面程式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
7.2.1 設計介面程式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
7.2.2 範例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
7.2.3 建立介面所需的函數 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
7.2.4 範例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
7.3 Intersci 工具 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
7.4 函數參數 (Argument functions) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
7.5 Matlab Mex 檔 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121

第一章
Scilab簡介
內 容
1.1 中文版前言 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Scilab 是什麼? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3 軟體架構 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.4 安裝及系統需求 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.5 文件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.中文版前言
本文以英文版 INTRODUCTION TO SCILAB 為本進行翻譯,但對原文章節順序略作調動。原文
所參考之 Scilab 為 2.x 之版本,而中文版翻譯時所對照之軟體版本為 3.1.1 版 (ADE 中文修正
版)。因此原文之範例皆在新版 Scilab 重測,並做必要之修改以適應新版軟體。
本文中文 L
A
T
E
X 原文隨附於 ADE Scilab 中文版 中之次目錄 doc\cintro 中,讀者系統中若
安裝 Omega–16 位元科學排版系統 可以自行修改排版。若想自行排版出 HTML 格式,請安裝
LaTeX2Html–LaTeX 轉 HTML 。
1.2.Scilab 是什麼?
Scilab 由法國國家資訊及自動化研究所 (INRIA) 主導開發,以原始碼形式自由散發。 Scilab 主要
應用於動態系統模擬、控制及訊號處理等工程問題中。
Scilab 由三部分組成編譯連結而成:解譯器 (interpreter), Scilab 巨集函數庫及 Fortran 與 C
程式庫。這些 Fortran 與 C 程式庫 (嚴格來講,並不屬於 Scilab,但被解譯器於內部呼叫) 個別
都是有趣的主題,大部分可從 Netlib 下載取得,少部分由 Scilab 修改以配合 Scilab 之解譯器效
能。
Scilab 解譯器語法上最主要的特性在能夠直接處理矩陣:矩陣資料的結合 (concatenation),
抽取 (extraction) 或轉置 (transpose) 以及加法及乘法運算都能直接操作。除了數值矩陣之外,
Scilab 也能處理更複雜的的資料結構。例如,控制工程上的轉換函數所需的分式矩陣或多項
式矩陣皆是。在 Scialb 中,用 list 或 typed list 資料結構能夠以符號的形式表達複雜的數學觀
念,例如 Scilab 中的轉換函數 (transfer functions),線性系統 (linear systems) 及圖論 (graphs) (參
考 Section 4.7) 等皆是。
2
剩余125页未读,继续阅读



安全验证
文档复制为VIP权益,开通VIP直接复制

评论3