天天看點

matlab基礎知識(MATLAB圖像處理第一章)MATLAB概述與桌面操作查詢幫助指令MATLAB變量及表達式符号運算程式流程控制語句

MATLAB概述與桌面操作

本篇基于MATLAB圖像處理 劉成龍著 第一章

個人筆記總結

MATLAB系統結構

系統結構由開發環境、數學函數庫、語言、圖形處理系統和應用程式接口(API)五大部分組成。

MATLAB發展曆史

初始是Fortran語言編寫,後其核心采用C語言編寫。

指令行視窗

errorbar()函數表示已知資料的誤內插補點。

常用指令及功能

指令 功能
clc 擦去一頁指令行視窗,光标回到左上角
clear 從工作空間中清除所有變量
clf 清除圖行視窗内容
who 列出工作空間中的變量
whos 列出工作空間中的變量及資訊
delete 從磁盤中删除指定檔案
which 查找指定檔案的路徑
clear all 從工作空間中清楚所有變量和函數
help 查詢所列指令的幫助資訊
save name 儲存工作空間變量到檔案name.m
save name x y 儲存工作空間變量x y到檔案name.m
load name 加載name檔案中的所有變量到工作空間
load name x y 加載name檔案中的變量x y到工作空間
diary name1.m 儲存工作空間一段文本到name1.m
diary off 關閉日志功能
type name.m 在工作空間中檢視name.m檔案内容
what 列出目前目錄下的m檔案和mat檔案
Ctrl+p 調用上一行指令
Ctrl+n 調用下一行指令
ctrl+b 光标退後一格
ctrl+f 光标前進一格
ctrl+<-或者ctrl+r 光标右移一個單詞
ctrl±>或者ctrl+l 光标左移一個單詞
home或者ctrl+a 光标移到行首
end或者ctrl+e 光标移到行尾
esc或者ctrl+u 清除一行
del或者ctrl+d 清除光标後的字元
backspace或者ctrl+h 清除光标前的字元
ctrl+k 清除光标至行尾字
ctrl+c 中斷程式運作

M檔案編輯視窗

edit指令添加一個未命名的編輯頁面

ctrl+R添加注釋 ctrl+T删除注釋

ctrl+F查找字元串

ctrl+]增加縮進

ctrl+[減少縮進

ctrl+I智能縮進 smart indent

幫助系統視窗

help

圖形視窗

目前檔案夾視窗

查詢幫助指令

help指令

help 函數名

lookfor 關鍵字 部分查找

模糊尋找

指令行視窗輸出前幾個字母+tab

MATLAB變量及表達式

數值與變量

format 設定輸出格式

輸出格式

short, long , short e, long e, short g, long g, compact(壓縮格式),loose(自由格式), hex

特殊變量

ans 預設變量名

pi

realmin 最小的正實浮點數

realmax 最大的正實浮點數

bitmax 最大正整浮點數

inf 無窮大

eps浮點運算相對精度

nan 非數,即結果不能确定

表達式

矩陣A

矩陣A的轉置 A’ 直接轉置時,複數矩陣A的實部和虛部之間連接配接符号改變了。

複數矩陣A的共轭轉置 A.’

符号運算

建立符号變量

符号變量是不含變量的符号表達式。

sym指令建立符号變量

sym(‘常量’)

sym(常量,參數)

參數 d傳回最接近的十進制數值

​ f傳回該符号值最接近的浮點

​ r傳回該符号值最接近的有理數型

​ e傳回該符号之最接近的帶有機器浮點誤差的有理值

sym(‘變量’,參數)把變量定義為符号變量

參數 用來設定限定符号變量的數學特性。positive real unreal

​ MATLAB R2020a中,參數值應該是integer, rational, real, positive, clear中的一個。

sym(‘表達式’) 建立符号表達式

syms(‘arg1’,‘arg2’,…,參數)把字元變量定義為符号變量。建立多個符号變量。

A = sym(’[a,b; c,d]’) 建立符号矩陣

如果使用字元串建立,需要使用函數str2sym()。

數值與符号的轉換

Sym函數将數值結果轉換為符号表達式。

Sym(r,‘f’) 傳回符号浮點表達式

Sym(r,‘r’) 傳回符号有理數表達式

Sym(r,‘e’) 傳回符号有理數表達式,同時根據eps給出r的理論和實際計算差

Sym(r,‘d’) 傳回符号十進制小數。

數值矩陣轉換為符号矩陣

Sym(矩陣名):将數值矩陣轉換成符号矩陣。

符号替換

subs函數用于符号變量的替換,該指令适用單個符号矩陣,符号表達式,符号代數方程和微分方程中的變量替換。

subs(S, new)用新變量new替換S中的預設變量。

subs(S, new, old)用新變量new替換S中的指定變量old。如果新變量是符号變量,則必須将新變量以’new’的形式給出。

常用符号運算

diff函數

diff(f)表示對符号表達式f進行微分運算。

diff(f,a)表示f對指定變量a進行微分運算。

diff(f,a,n)表示f對預設變量或指定變量a的n階導數進行計算,n是正整數。

int函數

int(f)表示對符号變量f帶包的符号表達式,求f關于預設變量的不定積分。

int(f,v)表示計算f關于變量v的不定積分。

int(f,a,b)或int(f,v,a,b)表示計算f關于預設變量或指定變量v從a到b的定積分。

limit函數

limit(F,x,a)表示取符号F在x趨于a時的極限。

limit(F,a)表示自動搜尋F中的符号變量,求其趨近于a時F的極限。

limit(F)指定了a = 0為極限點。

limit(F,x,a,‘right’)或者limit(F,x,a,‘left’)規定了趨向a的方向,也即用于求左極限或者右極限。

dsolve函數

dsolve函數用于解符号微分方程或者普通微分方程。D表示微分。D2、D3、Dn表示相應的2、3、n階微分。不加聲明時預設符号變量為t。D2y表示d2y/dt2。

例如,y = dsolve(‘Dy = 1+y^2’,‘y(0)=1’);

solve函數

solve函數用于求解代數方程組。

solve(S1,S2)其中S1,S2是方程的符号表達式。

例如,syms x y alpha;

[x,y] = solve(x^2 * y^2, x-y/2-alpha);

關系運算和邏輯運算

~= 不等于

~非

程式流程控制語句

資料輸入與輸出

input函數用于輸入,disp函數用于輸出。

input(提示資訊,選項)

disp(輸出項)

順序結構

按照程式的實體位置順序執行。

判斷語句

if end

if 表達式
	執行程式塊
end

if 表達式、
	執行程式塊
else
	執行程式塊
end

if 表達式
	執行程式塊
elseif 表達式
	執行程式塊
elseif 表達式
	執行程式塊
else
	執行程式塊
end
           

分支語句

switch 分支語句
 	case 條件語句
 		執行程式塊
 	case {條件語句1,條件語句2,...}
 		執行程式塊
 	otherwise
 		執行程式塊
 end
           

for循環和while循環語句

for index = 初值:增量:終值
	語句組A
end

while 表達式
	執行程式塊
end
           

繼續閱讀