具體描述
編輯推薦
1.國內*部集閤兩大運算能力超強軟件的圖書。內容充分體現MATLAB強大的數值運算能力,尤其是矩陣數值運算能力,同時也體現Mathematica擅長的符號運算能力;
2.理工類專業的軟件工具書,或作為一年級非計算機專業研究生選修課教材,內容基礎,易入門。 內容簡介
本書詳細介紹瞭MATLAB及Mathematica軟件的應用,主要由兩部分內容構成。*一部分主要介紹MATLAB的基本語法規則,包含MATLAB的基礎知識;第二部分主要介紹MATLAB在各領域中的應用以及Mathematica的應用,包含二維圖形、三維圖形的繪製、係統仿真、GUI編程、MATLAB在數學中的應用、Mathematica及其應用等。 作者簡介
李根強,副教授,南開大學數學係計算數學專業畢業,現任湖南大學信息工程與通信學院教師,長期從事程序設計與數字計算的科研與教學工作,具有豐富的教學與實踐經驗, 編寫過多本計算機相關教材。 目錄
第1章 MATLAB概述 1
1.1 MATLAB簡介 1
1.1.1 MATLAB的簡單介紹 1
1.1.2 MATLAB的特點 1
1.1.3 MATLAB的優勢 2
1.1.4 MATLAB的常用工具箱 3
1.1.5 MATLAB的版本 4
1.2 MATLAB的用戶界麵 5
1.2.1 命令窗口 5
1.2.2 曆史命令窗口 8
1.2.3 當前目錄窗口 10
1.2.4 工作區窗口 12
1.3 幫助係統及其使用 15
1.3.1 純文本幫助 16
1.3.2 演示幫助 17
1.3.3 幫助導航 18
1.3.4 幫助文件索引 19
習題 20
第2章 MATLAB基礎 21
2.1 MATLAB的數據類型概述 21
2.1.1 數值型數據 22
2.1.2 字符型數據 25
2.2 MATLAB的常量及變量 25
2.2.1 常量 25
2.2.2 變量 27
2.3 標量與數組 28
2.3.1 標量 28
2.3.2 數組 28
2.4 運算符 29
2.4.1 算術運算符 29
2.4.2 關係運算符 30
2.4.3 邏輯運算符 31
2.4.4 運算符的優先級 31
2.5 命令、函數、錶達式和語句 32
2.5.1 命令 32
2.5.2 函數 32
2.5.3 錶達式 34
2.5.4 語句 34
習題 34
第3章 MATLAB程序設計 35
3.1 程序設計概述 35
3.1.1 命令窗口編寫程序 35
3.1.2 編輯窗口編寫程序 35
3.2 腳本文件 35
3.2.1 M文件的編輯 36
3.2.2 M腳本文件 37
3.3 函數文件 37
3.3.1 函數文件的命名規則 37
3.3.2 函數文件的定義及調用 37
3.4 變量的作用域 38
3.4.1 局部變量 39
3.4.2 全局變量 39
3.5 程序流程與結構 39
3.5.1 分支結構 39
3.5.2 循環結構 40
3.6 匿名函數、內聯函數及函數句柄 42
3.6.1 匿名函數 42
3.6.2 內聯函數 42
3.6.3 函數句柄 43
3.7 路徑設置 44
3.7.1 在命令窗口設置 44
3.7.2 在文件夾窗口設置 44
3.8 程序調試與優化 45
3.8.1 在Debug窗口調試程序 46
3.8.2 設置斷點 46
習題 46
第4章 嚮量與矩陣 48
4.1 嚮量和矩陣的創建 48
4.1.1 嚮量的創建(即一維數組的創建) 48
4.1.2 嚮量的訪問 49
4.1.3 矩陣的創建(即二維數組的創建) 49
4.1.4 矩陣的訪問 51
4.2 嚮量和矩陣的基本操作 52
4.2.1 算術運算 52
4.2.2 關係運算 54
4.2.3 邏輯運算 54
4.3 基本函數運算 55
4.3.1 標量級的基本函數 55
4.3.2 嚮量級的函數 56
4.3.3 矩陣函數 57
4.4 嚮量的特殊運算 59
4.4.1 嚮量的點積和叉積 59
4.4.2 多項式及其函數 60
4.5 矩陣的特殊運算 62
4.5.1 矩陣的三角分解 62
4.5.2 齊次綫性方程組的求解 65
4.5.3 非齊次綫性方程組的求解 66
4.5.4 方陣的特徵值和特徵嚮量 67
習題 68
第5章 MATLAB符號計算 70
5.1 符號錶達式的建立 70
5.1.1 創建符號常量 70
5.1.2 創建符號變量和錶達式 71
5.1.3 符號矩陣 72
5.2 符號錶達式的代數運算 73
5.2.1 符號運算符和函數運算 73
5.2.2 符號數值任意精度控製和運算 75
5.2.3 符號對象與數值對象的轉換 76
5.3 符號錶達式的操作和轉換 77
5.3.1 符號錶達式中自由變量的確定 77
5.3.2 符號錶達式的化簡 78
5.3.3 符號錶達式的轉換 80
5.4 符號極限、微積分和級數求和 81
5.4.1 符號極限 81
5.4.2 符號微分 83
5.4.3 符號積分 84
5.4.4 符號級數 85
5.5 符號方程的求解 87
5.5.1 代數方程及方程組 87
5.5.2 符號常微分方程 88
習題 89
第6章 圖形與圖像處理 90
6.1 二維圖形 90
6.1.1 plot繪圖 90
6.1.2 plot繪圖舉例 90
6.2 極坐標和復平麵坐標繪圖 94
6.2.1 極坐標圖 94
6.2.2 復平麵坐標圖 95
6.3 三維圖形 97
6.3.1 三維麯綫圖 97
6.3.2 三維麯麵圖 97
6.4 網格圖與等高綫 98
6.4.1 網格圖 98
6.4.2 等高綫 99
6.5 統計圖形 100
6.5.1 條形圖 100
6.5.2 直方圖 101
6.5.3 餅形圖 102
6.6 子圖和其他繪圖函數 102
6.6.1 子圖函數subplot() 102
6.6.2 其他繪圖函數 104
6.7 隱函數繪圖 107
6.7.1 一元隱函數繪圖 107
6.7.2 二元隱函數繪圖 107
6.8 基本圖像處理 108
6.8.1 圖像基礎 108
6.8.2 圖像的讀和寫 109
6.8.3 圖像的顯示 109
習題 110
第7章 Simulink仿真 113
7.1 Simulink簡介 113
7.1.1 Simulink概述 113
7.1.2 Simulink的特點 113
7.2 Simulink的常用模塊 114
7.2.1 進入Simulink工作環境的方法 114
7.2.2 Simulink的模塊庫 115
7.3 Simulink建模 119
7.3.1 新建模型窗口 119
7.3.2 建立新的模型 122
7.4 Simulink仿真示例 126
7.4.1 仿真配置 126
7.4.2 仿真結果 128
7.5 案例分析 128
7.5.1 連續係統 128
7.5.2 離散係統 131
習題 135
第8章 GUI編程 137
8.1 GUI基礎 137
8.1.1 GUI介紹 137
8.1.2 創建GUI 137
8.1.3 迴調函數 143
8.2 GUI控件 143
8.2.1 GUI控件類型 143
8.2.2 創建GUI控件 144
8.3 GUI菜單和工具欄 146
8.3.1 GUI菜單 146
8.3.2 GUI工具欄 148
8.4 對話框 148
8.4.1 對話框創建函數 148
8.4.2 對話框建立方法 149
習題 151
第9章 MATLAB在數學中的
應用 152
9.1 多項式與插值 152
9.1.1 插值問題與插值多項式 152
9.1.2 Lagrange插值 152
9.1.3 Newton插值 155
9.2 數值積分與數值微分 157
9.2.1 數值積分 157
9.2.2 數值微分 160
9.3 非綫性方程的求根 160
9.3.1 概述 160
9.3.2 簡單迭代法 162
9.3.3 Newton法 164
9.4 綫性方程組的求解 165
9.4.1 解綫性方程組的直接法 165
9.4.2 解綫性方程組的迭代法 171
9.5 常微分方程的數值解 175
習題 178
第10章 Mathematica基礎及其
應用 181
10.1 Mathematica基礎 181
10.1.1 Mathematica介紹 181
10.1.2 Mathematica的使用和操作 181
10.1.3 Mathematica的輸入 183
10.2 數值計算 183
10.2.1 算術運算 183
10.2.2 函數運算 184
10.3 常量、變量和錶達式 185
10.3.1 使用前麵的結果 185
10.3.2 常量和變量 185
10.3.3 對象與對象列錶 185
10.3.4 錶達式 186
10.3.5 符號運算 186
10.4 符號數學 187
10.4.1 函數極限 187
10.4.2 微分 187
10.4.3 積分 187
10.4.4 求和與求積 188
10.4.5 解方程 188
10.5 函數作圖 188
10.5.1 基本繪圖方法 188
10.5.2 三維麯麵繪圖 189
10.5.3 等高綫和密度綫 189
習題 191
參考文獻 192 前言/序言
《 MATLAB及Mathematica軟件應用 》是一本旨在幫助讀者掌握這兩款強大的科學計算與符號計算軟件的實用指南。本書涵蓋瞭 MATLAB 和 Mathematica 的核心功能,從基礎語法到高級應用,力求讓讀者能夠獨立解決工程、科學研究及數據分析中的復雜問題。 第一部分:MATLAB 基礎與核心應用 MATLAB 是一個強大的數值計算軟件,在工程、科學和數據科學領域有著廣泛的應用。本書的 MATLAB 部分將從最基礎的知識入手,循序漸進地引導讀者熟悉其操作環境與核心功能。 第一章:MATLAB 環境入門 軟件安裝與許可: 詳細介紹 MATLAB 的安裝步驟,包括不同操作係統的安裝指南,以及常見的許可類型和激活方法。 工作空間與命令窗口: 講解 MATLAB 的集成開發環境(IDE),包括命令窗口、編輯器、工作區、當前文件夾等核心窗口的功能及其交互方式。 變量與基本數據類型: 介紹 MATLAB 中的變量命名規則、作用域,以及數值型(雙精度、單精度、整型)、邏輯型、字符型等基本數據類型的存儲與操作。 運算符與錶達式: 涵蓋算術運算符、關係運算符、邏輯運算符、賦值運算符等,並講解如何構建復雜的數學錶達式。 初識 M 文件: 介紹 M 文件的概念,如何創建、編輯和運行 M 文件,為後續的編程奠定基礎。 圖形界麵(GUI)基礎: 簡要介紹 MATLAB 的圖形用戶界麵(GUI)開發工具,為有相關需求的用戶提供一個初步的瞭解。 第二章:MATLAB 數值計算與矩陣運算 矩陣的創建與操作: 深入講解 MATLAB 中矩陣的各種創建方式(如直接輸入、冒號運算符、函數創建),以及矩陣元素的訪問、修改、轉置、求逆等基本操作。 嚮量與多維數組: 擴展矩陣概念至嚮量和多維數組,介紹其創建、索引和常用函數。 矩陣運算: 詳細闡述矩陣的加減乘除、點乘、矩陣除法(左除、右除)以及內置的矩陣函數(如 `eye`, `zeros`, `ones`, `rand`, `diag`, `trace`, `det`, `inv`, `rank` 等)。 數值求解: 介紹 MATLAB 如何進行數值積分、數值微分、方程組求解(綫性方程組和非綫性方程組)、多項式運算(根、插值、擬閤)等。 優化工具箱: 簡要介紹 MATLAB 優化工具箱,包括無約束優化、約束優化、綫性規劃等問題的求解方法。 第三章:MATLAB 流程控製與程序設計 條件語句: 講解 `if-else-end`, `switch-case-end` 等條件判斷語句,以及如何根據不同條件執行不同的代碼塊。 循環語句: 詳細介紹 `for` 循環、`while` 循環,以及如何使用 `break` 和 `continue` 控製循環的執行。 函數設計與調用: 講解如何編寫自己的函數(包括局部函數和匿名函數),理解函數參數的傳遞方式,以及函數的嵌套調用。 腳本與函數文件的區彆: 闡明腳本文件和函數文件的本質區彆,以及在實際應用中的選擇。 錯誤處理: 介紹 MATLAB 的錯誤處理機製,如 `try-catch` 語句,以及如何捕獲和處理運行時錯誤。 第四章:MATLAB 數據可視化與圖形繪製 基本二維圖形: 講解 `plot` 函數繪製綫圖,以及 `scatter`, `bar`, `hist`, `pie` 等繪製散點圖、柱狀圖、直方圖、餅圖。 圖形定製: 介紹如何添加標題、坐標軸標簽、圖例,設置坐標軸範圍、刻度,修改綫條顔色、樣式、標記等。 多子圖繪製: 使用 `subplot` 函數在同一圖形窗口中繪製多個子圖。 三維圖形: 講解 `plot3` 繪製三維麯綫,`surf`, `mesh` 繪製三維麯麵圖。 高級圖形: 介紹 `contour`, `imagesc` 等等製圖函數。 圖形導齣: 講解如何將繪製的圖形導齣為常見的圖像文件格式(如 PNG, JPEG, EPS, PDF)。 第五章:MATLAB 數據處理與信號分析 數據導入與導齣: 介紹如何從各種文件格式(如 .txt, .csv, .xlsx, .mat)導入數據,以及如何將 MATLAB 中的數據導齣到文件。 數據預處理: 講解數據清洗(缺失值處理、異常值檢測與處理)、數據變換(歸一化、標準化)、數據平滑等技術。 統計分析: 介紹 MATLAB 中的基本統計函數,如均值、方差、標準差、相關係數、協方差、描述性統計量等。 信號處理基礎: 介紹信號的錶示(時域、頻域),采樣定理,以及傅裏葉變換(FFT)及其在信號分析中的應用。 濾波器設計與應用: 介紹數字濾波器的概念,以及 MATLAB 中提供的低通、高通、帶通、帶阻濾波器的設計與實現。 頻譜分析: 介紹功率譜密度(PSD)等概念,以及如何使用 MATLAB 進行頻譜分析。 第六章:MATLAB 常用工具箱簡介 Simulink: 概述 Simulink 的圖形化建模環境,及其在動態係統仿真中的應用。 圖像處理工具箱: 介紹圖像的讀取、顯示、增強、濾波、分割、形態學處理等基本功能。 統計與機器學習工具箱: 簡介統計建模、分類、迴歸、聚類等常用的機器學習算法實現。 控製係統工具箱: 介紹傳遞函數、狀態空間模型、根軌跡、伯德圖、Nyquist圖等在控製係統設計與分析中的應用。 其他常用工具箱: 簡要列舉並介紹其他在特定領域(如金融、生物信息學、通信)具有重要作用的工具箱。 第二部分:Mathematica 符號計算與應用 Mathematica 以其強大的符號計算能力而著稱,是進行數學推導、理論研究、公式推導與求解的理想工具。本書的 Mathematica 部分將深入探討其符號計算的精髓。 第七章:Mathematica 環境與基本語法 軟件安裝與界麵介紹: 講解 Mathematica 的安裝流程,以及其 Notebook(筆記本)的交互式界麵,包括輸入、輸齣、單元格結構等。 錶達式與求值: 介紹 Mathematica 中錶達式的錶示方式,以及使用 `=` 和 `:=` 進行賦值的區彆。 內置函數與符號: 講解 Mathematica 中海量內置函數的使用方法,以及其獨特的符號命名規則(首字母大寫)。 模式匹配與規則: 介紹 Mathematica 的核心概念——模式匹配,以及如何使用規則(Rule,`->` 和 `->>`)對錶達式進行變換。 包(Package)與導入導齣: 介紹 Mathematica 的包管理機製,以及如何導入和導齣其他文件格式。 第八章:Mathematica 符號計算核心 代數運算: 講解符號代數運算,包括多項式展開、因式分解、化簡、求解代數方程(綫性、非綫性)、解方程組。 微積分: 介紹符號積分(不定積分、定積分)、符號微分(偏導數、高階導數)、極限計算。 級數與求和: 講解符號級數展開(泰勒級數、洛朗級數)、求和計算。 綫性代數: 介紹符號矩陣的創建、運算,包括矩陣求逆、行列式、特徵值、特徵嚮量。 微分方程: 講解如何使用 Mathematica 求解常微分方程(ODE)和偏微分方程(PDE),包括解析解和數值解。 第九章:Mathematica 程序設計與函數式編程 列錶(List)操作: 詳細講解 Mathematica 中列錶的創建、索引、遍曆、映射、過濾等操作,及其在數據處理中的重要性。 函數定義與匿名函數: 介紹如何定義具有參數的函數,以及匿名函數(lambda 函數)的使用。 迭代與遞歸: 講解 `Table`, `Map`, `Apply`, `Nest` 等函數在迭代與遞歸計算中的應用。 控製結構: 介紹 `If`, `Which`, `Do`, `While`, `For` 等控製流程語句。 模式與規則的進階應用: 深入講解模式匹配在函數定義、錶達式重寫、算法實現中的強大威力。 編譯與性能優化: 介紹 `Compile` 函數,以及如何提高 Mathematica 代碼的執行效率。 第十章:Mathematica 數據可視化與交互式應用 靜態圖形繪製: 講解 `Plot` 繪製函數圖形,`ListPlot` 繪製數據點圖,`ParametricPlot` 繪製參數麯綫,`Plot3D` 繪製三維麯麵等。 圖形選項與定製: 介紹如何設置圖形的標題、標簽、圖例,調整顔色、樣式、刻度,以及創建復閤圖形。 動態圖形與交互式組件: 演示如何使用 `Manipulate` 創建交互式可視化,用戶可以通過滑塊、按鈕等控件實時改變圖形參數。 數據導入與處理: 介紹 Mathematica 如何讀取各種數據格式,並利用其強大的符號與數值計算能力進行數據分析。 圖論可視化: 介紹 `Graph` 對象的創建與可視化。 第十一章:Mathematica 特色功能與高級應用 數學建模: 演示如何使用 Mathematica 進行數學建模,包括物理模型的構建、公式推導與求解。 科學文獻支持: 介紹 Mathematica 在公式排版、論文撰寫中的優勢,包括對 LaTeX 的支持。 與其他軟件的互操作性: 簡要介紹 Mathematica 與外部程序(如 C++, Python)的接口,以及與其他計算軟件的集成。 Wolfram|Alpha 集成: 介紹 Mathematica 與 Wolfram|Alpha 知識庫的結閤,如何直接調用海量知識進行計算與查詢。 案例分析: 通過具體的科學研究或工程問題,展示 Mathematica 在解決實際問題中的應用。 第三部分:MATLAB 與 Mathematica 的綜閤比較與實踐 第十二章:MATLAB 與 Mathematica 的核心差異與優勢比較 數值計算 vs. 符號計算: 深入分析兩款軟件在設計理念、核心優勢上的根本區彆。 應用場景分析: 探討在哪些工程、科學問題中,MATLAB 更具優勢,而在哪些領域,Mathematica 更為適宜。 編程範式: 對比兩款軟件的編程風格、語法特點和效率。 學習麯綫與社區支持: 分析兩款軟件的學習難度,以及其社區資源和文獻支持情況。 第十三章:跨平颱應用與協同工作 數據交互: 講解如何有效地在 MATLAB 和 Mathematica 之間進行數據交換。 混閤編程策略: 探討在實際項目中,如何結閤兩款軟件的優勢,構建更強大的解決方案。 最佳實踐與技巧: 分享使用這兩款軟件進行項目開發的實用建議與技巧。 本書旨在成為讀者學習和應用 MATLAB 及 Mathematica 的得力助手,通過理論講解與實例演示相結閤的方式,幫助讀者構建紮實的軟件應用基礎,並能將其高效地應用於解決實際問題。