matlab常用函式集錦

2021-09-06 20:19:49 字數 2268 閱讀 3443

1、判定語句:

(1)iscell   % 判斷給定陣列是否是cell array

(2)nargin  % 判斷輸入變數個數的函式

(3)nargout   % 判斷輸出變數個數的函式

(11)varargin   %提供了一種函式可變引數列表機制,允許呼叫者呼叫該函式時根據需要來改變輸入引數的個數。

(4)resid  % 求模型殘差函式

(5)assert  % 斷言函式

(6)isstruct  % 判斷輸入是否是結構陣列

(7)isnumeric %  判斷輸入引數是否是數字型別(包括浮點型和整型)

(8)isscalar  % 判斷a是否是標量,即一行一列的矩陣;

(9)isnan  % 判斷陣列中的元素是否為無窮大

(10)iscell  % 判斷給定陣列是否是元胞陣列

2、cat:用來聯結陣列

用法:c = cat(dim, a, b)       按dim來聯結a和b兩個陣列。

c = cat(dim, a1, a2, a3, ...)    按dim聯結所有輸入的陣列。

eg:>> cat(1, a, b) %按列連線(列數相同)

ans =

1     2

3     4

5     6

7     8

>> cat(2, a, b) %按行連線(行數相同)

ans =

1     2     5     6

3     4     7     8

>> cat(3, a, b) %合成效果如下圖,連成為3維

ans(:,:,1) =   %第一層

1     2

3     4

ans(:,:,2) =  %第二層

5     6

7     8

4. 求導和求偏導函式

5、函式

(1)匿名函式

fxy = @(x,y)x.^y+3*x*y;

fxy(2,5);

fxy(1,3);

(2)內聯函式

1)內聯函式屬性指令集

class(inline_fun)——提供內聯函式的型別

char(inline_fun)——提供內聯函式的計算公式

argnames(inline_fun)——提供內聯函式的輸入變數

vectorize(inline_fun)——提供內聯函式適用於陣列運算的規則

2)內聯函式的簡單運用例項

a)使內聯函式適用於「陣列運算」

fun1 = inline('mod(12,5)')

fun2 = vectorize(fun1)

fun3 = char(fun2)

b)多標量構成的向量進行賦值

fun5 = inline('m*exp(n(1)*cos(n(2))','m','n'),fun5(1,[-1,pi/2])

c)產生向量輸入、向量輸出的內聯函式

y = inline('[3*x(1)*x(2)^3;sin(x(2))]')

x = [10,pi*5/6];

y = y(x)

d)最簡練的格式建立內聯函式;

z = inline('floor(x)*exp(p1)*exp(p2^2)',2)

z = z(2.3,pi/8,1.2),fz = feval(z,2.3,pi/8,1.2)

6、全域性變數:用global表示,該變數能夠分開在私有函式、子函式、主函式中使用,全域性變數在整個程式設計階段基本保持一致。

全域性變數使用方法:在主函式中宣告,然後使用global在主函式和子函式中分別定義即可,最後呼叫對應的函式,即可完成函式的計算求解。舉例說明:

clear all;clear close;clc

global a

a = 2;

x = 3;

y = ysw(x)

function y = ysw(x)

global a

y = a*(x^2);

end

7、matlab中使用(for、while)迴圈時需要注意以下幾點:

(1)為了提高執行速度和程式設計計算處理效率,一般應該盡量避免使用迴圈求解的方式,可採用矩陣得直接求解計算。

(2)為了節約處理**行數,達到大資料處理的目的,合理地選用迴圈語句對該資料進行處理。

(3)盡量使用matlab內建函式,達到求解地目的,以提高求解精度和速度。for和while迴圈每執行一次指令將降低系統執行效率。

Matlab中常用的運算集錦

1 矩陣相關 我們假設輸入的矩陣是 a 1 34 16 7 a left begin 1 3 4 1 6 7 end right a 11 36 4 7 sum函式在預設情況下是計算矩陣每一列元素之和 當sum函式的第二個引數設定為2,即sum a,2 時,則計算的是矩陣每一行元素之和。sum a ...

Matlab問題集錦

茲將以後遇到的與matlab相關的小問題,集中到此博文中。1 在malab中如何顯示特殊字元?試想,如果你想將pi的希臘字母,該怎麼辦呢?如果想要輸入上下標或希臘字母,又該怎麼辦呢?輸下標 輸上標 輸latex公式 text interpreter latex string int 0 x int ...

matlab知識集錦

灰度影象擊中與擊不中運算 影象灰度拉伸的作用 灰度拉伸又叫對比度拉伸,它是最基本的一種灰度變換,使用的是最簡單的分段線性變換函式,它的主要思想是提高影象處理時灰度級的動態範圍。它可以有選擇的拉伸某段灰度區間以改善輸出影象。如圖,所示的變換函式的運算結果是將原圖在a到b之間的灰度拉伸到c到d之間。如果...