matlab入門:matlab的基礎(chǔ)知識學(xué)習(xí)
全世界數(shù)以百萬計的工程師和科學(xué)家都在使用 MATLAB® 分析和設(shè)計改變著我們的世界的系統(tǒng)和產(chǎn)品?;诰仃嚨?MATLAB 語言是世界上表示計算數(shù)學(xué)最自然的方式??梢允褂脙?nèi)置圖形輕松可視化數(shù)據(jù)和深入了解數(shù)據(jù)。歡迎您使用桌面環(huán)境進(jìn)行試驗、探索和發(fā)現(xiàn)。這些 MATLAB 工具和功能全部進(jìn)行了嚴(yán)格測試,可彼此配合工作。
MATLAB 可幫助您不僅僅將自己的創(chuàng)意停留在桌面。您可以對大型數(shù)據(jù)集運行分析,并擴(kuò)展到集群和云。MATLAB 代碼可以與其他語言集成,使您能夠在 Web、企業(yè)和生產(chǎn)系統(tǒng)中部署算法和應(yīng)用程序。
適合具有高數(shù)基礎(chǔ)的科研小白。
作為一個工科生,軟件的使用是非常重要且必不可少的。如果你的計算機基礎(chǔ)非常扎實,已經(jīng)熟練掌握Python,R等語言了,想必你已經(jīng)會自行編寫代碼了,那么請右上方X劃走。
本文主要針對即將開始科研學(xué)習(xí),但還沒有編程基礎(chǔ)的同學(xué)們閱讀了解。MATLAB作為一個在學(xué)術(shù)界橫行多年的老將,仍舊有其不可替代的優(yōu)勢。
1 思維概念
計算機編程的基礎(chǔ)是數(shù)學(xué)。我們要樹立一個基本的認(rèn)識,那就是計算機編程只是一種語言,一種把數(shù)學(xué)題變?yōu)橛嬎銠C可以識別的語句執(zhí)行的語言。進(jìn)一步延展概念,數(shù)學(xué)其實也是一種語言,數(shù)學(xué)是一種把世界萬事萬物和現(xiàn)實問題都用字符表示的表達(dá)方式。那么數(shù)學(xué)和計算機科學(xué)都只是我們思維方式的體現(xiàn)形式,所以,當(dāng)我們遇到一個問題后,第一步是你要思考究竟采用什么解決辦法;第二步是思考這種解決方法用數(shù)學(xué)語句如何表述;第三步是這種解決辦法用計算機如何正確表達(dá)。
2 數(shù)學(xué)基礎(chǔ)
在學(xué)習(xí)Matlab前,首先要具備基礎(chǔ)的高數(shù)知識,最最基礎(chǔ)的是一定要了解矩陣的概念、矩陣的運算規(guī)則、積分、微分、多元回歸等。后期如果需要深入開展科學(xué)研究,可以進(jìn)一步了解相關(guān)數(shù)學(xué)內(nèi)容 ,比如傅里葉變換、相關(guān)分析、參數(shù)優(yōu)化等內(nèi)容。
2、每一個腳本(也就是代碼頁,也就是.m文件)第一行都應(yīng)該先寫下第一行----clear all ;close all;意思是清除和關(guān)閉之前運行的程序或存儲內(nèi)容
3、每一句表達(dá)的語句最后用分號做結(jié)尾
4、變量是指有名稱但里面的內(nèi)容可變的東西??梢詫⑺鼈兛粗鎯臻g,甚至假想為一大堆用來存儲的箱子。
5、%放在語句后,意思是后面的內(nèi)容是注釋,換行就不算注釋了。
作為一個功能強大的計算軟件,輸入數(shù)據(jù)是非常重要的,首先就要根據(jù)你的數(shù)據(jù)存儲形式選擇合適的輸入函數(shù)了。
【埋頭苦干法】最笨的辦法,就是自己定義,你想讓變量是幾,你就自己寫。
例如:a=1;定義變量a的值為1;
a=[1,2,3;4,5,6];定義變量是一個2行3列的矩陣;
a=[];定義變量a,但是數(shù)值不定,一般默認(rèn)為浮點型變量。
【借助工具法】
聰明人選擇根據(jù)數(shù)據(jù)存儲類型直接導(dǎo)入,一次計算可以采用頁面上的快捷鍵工具。如下圖所示。如果需要保存文件且不丟失,建議在命令行中寫下代碼。MATLAB系統(tǒng)環(huán)境
...為續(xù)行符,將下一行視為一行
先創(chuàng)立當(dāng)前文件夾再 cd
MATLAB搜索順序為 變量>內(nèi)部函數(shù)>程序文件 這意味著,同名的變量相對于內(nèi)部函數(shù)會優(yōu)先,所以盡量不要同名
先當(dāng)前文件再搜搜索路徑設(shè)置的文件
MATLAB數(shù)值數(shù)據(jù)
整型
uint8函數(shù)將數(shù)值數(shù)據(jù)轉(zhuǎn)換為無符號8位整數(shù) 0~255
int8函數(shù)將數(shù)值數(shù)據(jù)轉(zhuǎn)換為帶符號8位整數(shù) -128~127 超過127則為127
浮點型
浮點型數(shù)據(jù)分為單精度型和雙精度類型,單精度型實數(shù)在內(nèi)存中占用4個字節(jié),而雙精度型實數(shù)在內(nèi)存中占用8個字節(jié),所以雙精度型的數(shù)據(jù)精度更高。MATLAB數(shù)值數(shù)據(jù)默認(rèn)雙精度型
single函數(shù):將其他類型的數(shù)據(jù)轉(zhuǎn)換為單精度型
double函數(shù):將其他類型的數(shù)據(jù)轉(zhuǎn)換為雙精度型
復(fù)型
復(fù)型數(shù)據(jù)包括實部和虛部兩個部分,實部和虛部默認(rèn)為雙精度型,虛數(shù)單位用i或j來表示。
real函數(shù):求復(fù)數(shù)的實部
imag函數(shù):求復(fù)數(shù)的虛部
format
命令只影響數(shù)據(jù)輸出格式,而不影響數(shù)據(jù)的計算和存儲。
函數(shù)的調(diào)用格式為:
函數(shù)名(函數(shù)自變量的值)
函數(shù)的自變量規(guī)定為矩陣變量,也可以是標(biāo)量。
函數(shù)在運算時是將函數(shù)逐項作用于矩陣的每個元素上,所以最后運算的結(jié)果就是一個與自變量同
型的矩陣。
三角函數(shù)有以弧度為單位的函數(shù)和以角度為單位的函數(shù),
如果是以角度為單位的函數(shù)就在函數(shù)名后面加“d”,以示區(qū)別。sin sind
abs函數(shù)可以求實數(shù)的絕對值、復(fù)數(shù)的模、字符串的ASCII碼值。
round函數(shù)按照四舍五入的規(guī)則取整。 round(4.7) 5
ceil函數(shù)是向上取整,取大于等于這個數(shù)的第一個整數(shù)。 ceil(-3.8) -3
floor函數(shù)是向下取整,取小于等于這個數(shù)的第一個整數(shù)。floor(3.6) 3
fix函數(shù)是固定取靠近0的那個整數(shù),即舍去小數(shù)取整。fix(-3.2) -3
MATLAB提供了一個判斷n是否素數(shù)的函數(shù)
isprime(n) ,當(dāng)n是素數(shù)時返回1,否則返回0。
k=find(X)返回數(shù)組X中非零元素的位置
MATLAB 是“matrix laboratory”的縮寫形式。MATLAB® 主要用于處理整個的矩陣和數(shù)組,而其他編程語言大多逐個處理數(shù)值。矩陣是指通常用來進(jìn)行線性代數(shù)運算的二維數(shù)組。
MATLAB 是美國MathWorks公司出品的商業(yè)數(shù)學(xué)軟件,用于算法開發(fā)、數(shù)據(jù)可視化、數(shù)據(jù)分析以及數(shù)值計算的高級技術(shù)計算語言和交互式環(huán)境,主要包括MATLAB和Simulink兩大部分。MATLAB擁有豐富的算法工具箱,因此在工程計算、控制設(shè)計、信號處理與通訊、圖像處理、信號檢測、金融建模設(shè)計與分析等領(lǐng)域都能看到它的身影,可謂是無處不在。功能強大,MATLAB 安裝包比較大,R2018b版12G。
matlab安裝包體積巨大,下載安裝都是比較耗時的,正版軟件太貴。你可以使用云超級應(yīng)用,簡單的來說就是軟件搭載服務(wù)器上,你不用安裝到本地電腦,只要有網(wǎng)絡(luò)即可進(jìn)行學(xué)習(xí)實驗。可以用此了解學(xué)習(xí)。
在線版matlab(網(wǎng)頁版,web版),不用安裝了,可以用此了解學(xué)習(xí).
沒有注冊賬號,先注冊,注冊時需要使用手機接收驗證消息。
在命令行上輸入語句并查看結(jié)果。
矩陣和數(shù)組
MATLAB 主要處理數(shù)組和矩陣,既可以整個處理,也可以部分處理。矩陣是指通常用來進(jìn)行線性代數(shù)運算的二維數(shù)組。
數(shù)組索引
MATLAB 中的變量通常是可包含很多數(shù)字的數(shù)組。如果要訪問數(shù)組的選定元素,請使用索引。
工作區(qū)變量
工作區(qū)包含在 MATLAB 中創(chuàng)建或從數(shù)據(jù)文件或其他程序?qū)肫渲械淖兞俊?
文本和字符
為文本創(chuàng)建字符串?dāng)?shù)組,或為數(shù)據(jù)創(chuàng)建字符數(shù)組。
調(diào)用函數(shù)
MATLAB 提供了大量執(zhí)行計算任務(wù)的函數(shù)。要調(diào)用函數(shù),請將其輸入?yún)?shù)括在圓括號中。
二維圖和三維圖
圖形函數(shù)包括二維和三維繪圖函數(shù),用于以可視化形式呈現(xiàn)數(shù)據(jù)和通信的結(jié)果。
編程和腳本
最簡單的一種 MATLAB 程序稱為腳本。腳本包含一系列命令和函數(shù)調(diào)用。
幫助和文檔
所有函數(shù)都有輔助文檔,這些文檔包含一些示例,并介紹函數(shù)輸入、輸出和調(diào)用語法。
矩陣和幻方矩陣
輸入矩陣,執(zhí)行矩陣運算并訪問矩陣元素。
表達(dá)式
使用變量、數(shù)字、運算符、函數(shù)和表達(dá)式。
輸入命令
更改輸出格式,隱藏輸出,輸入長行,以及在命令行中進(jìn)行編輯。
索引
訪問矩陣元素,通過串聯(lián)創(chuàng)建矩陣,以及刪除矩陣行和列。
數(shù)組類型
使用多維數(shù)組,元胞數(shù)組,字符與文本數(shù)據(jù)以及結(jié)構(gòu)體。
線性代數(shù)
本主題介紹如何在 MATLAB 中創(chuàng)建矩陣和執(zhí)行基本矩陣計算。
非線性函數(shù)的運算
可以創(chuàng)建任何 MATLAB 函數(shù)的句柄,并將該句柄用作引用該函數(shù)的一種方式。函數(shù)句柄通常在參數(shù)列表中傳遞給其他函數(shù),然后,其他函數(shù)可以使用該句柄執(zhí)行或計算相應(yīng)函數(shù)。
多變量數(shù)據(jù)
MATLAB 對多變量統(tǒng)計數(shù)據(jù)使用列向分析。數(shù)據(jù)集中的每一列都代表一個變量,每一行都代表一個觀測值。第 (i,j) 個元素是第 j 個變量的第 i 個觀測值。
基本繪圖函數(shù)
使用繪圖函數(shù)創(chuàng)建和修改繪圖。
創(chuàng)建網(wǎng)格圖和曲面圖
可視化包含兩個變量的函數(shù)。
顯示圖像
使用圖像。
打印圖形
打印和導(dǎo)出圖窗。
處理圖形對象
可視化包含兩個變量的函數(shù)。
控制流
使用流控制結(jié)構(gòu),包括 if、switch 和 case、for、while、continue 和 break。
腳本和函數(shù)
編寫腳本和函數(shù),使用全局變量,向函數(shù)傳遞字符參數(shù),使用 eval 計算文本表達(dá)式,向量化代碼,預(yù)分配數(shù)組,使用句柄引用函數(shù),以及使用處理函數(shù)的函數(shù)。