1. matlab中怎樣創建一個對角矩陣
材料/工具:電腦、matlab軟體
1、首先打開電腦上的「matlab」軟體,在命令行窗口輸入一個向量n,向量n有4個元素。接著使用diag函數生成對角矩陣。
2. 關於matlab 建立函數M文件 實現兩個矩陣相乘。
你的意思是自己編寫矩陣乘法吧,否則直接調用matlab得 * 函數就得了
驗證成功,可以運行
x=rand(3,4);
y=rand(4,5);
[row1, col1] = size(x);
[row2, col2] = size(y);
if col1 ~= row2
disp('input is error');
else
result = zeros(row1, col2);
for ii=1:row1
for jj=1:col2
result(ii,jj) = sum(sum(x(ii,:) .* (y(:, jj))' ));
end
end
end
3. MATLAB 中用方程創建矩陣 matrix(m,n,f)
>> m = 9;
n = 9;
R = repmat([1:m]',1,n)';
R = reshape(cell2mat(arrayfun(@(x) R(x,:)+3*x,1:m,'un',false)),m,n)'
R =
4 5 6 7 8 9 10 11 12
7 8 9 10 11 12 13 14 15
10 11 12 13 14 15 16 17 18
13 14 15 16 17 18 19 20 21
16 17 18 19 20 21 22 23 24
19 20 21 22 23 24 25 26 27
22 23 24 25 26 27 28 29 30
25 26 27 28 29 30 31 32 33
28 29 30 31 32 33 34 35 36
4. matlab 生成一個關於函數的矩陣
你這個問題應這樣來解決,即計算Z時應使用點運算符。
>>X=0:0.1:10;Y=0:0.1:10;
>>[X,Y]=meshgrid(X,Y);
>>Z=(X+1).*(1-Y)./(2*X);
>>mesh(X,Y,Z)
>> xlabel('X'),ylabel('Y'),zlabel('Z');
5. 如何使用matlab創建一個全都是一的矩陣
可這樣:a=ones(3,4)
就得到一個3*4全1的矩陣。
6. matlab 怎麼創建這種矩陣
H= ones(10,1)*[1:10]
h=H『
7. MATLAB創建矩陣
1、顯示字元串形式clc; clear all;
A = 1 : 9;
A = reshape(A, 3, 3)';
B = [];
for i = 1 : size(A, 1)
Bt = [];
for j = 1 : size(A, 2)
Bt = [Bt strcat(' sin', num2str(A(i, j)))];
end
B = [B; Bt];
end
B 2、可顯示字元串數值形式
8. 如何在matlab中建立含有矩陣的M文件
首先單擊「New M-File」
然後寫你的函數
例如 function y=f(x) f為函數名,x是輸入參數,y是輸出結果
下面寫運算式 如y=2*x;
單擊「Save」
默認會以函數名保存 上例保存為m.file
然後可以直接調用 如調用y=f(2)
結果為4
9. 怎麼創建大矩陣matlab
1、向量的創建
1)直接輸入:
行向量:a=[1,2,3,4,5]
列向量:a=[1;2;3;4;5]
2)用「:」生成向量
a=J:K 生成的行向量是a=[J,J+1,…,K]
a=J:D:K 生成行向量a=[J,J+D,…,J+m*D],m=fix((K-J)/D)
3)函數linspace 用來生成數據按等差形式排列的行向量
x=linspace(X1,X2):在X1和X2間生成100個線性分布的數據,相鄰的兩個數據的差保持不變。構成等差數列。
x=linspace(X1,X2,n): 在X1和X2間生成n個線性分布的數據,相鄰的兩個數據的差保持不變。構成等差數列。
4)函數logspace用來生成等比形式排列的行向量
X=logspace(x1,x2) 在x1和x2之間生成50個對數等分數據的行向量。構成等比數列,數列的第一項x(1)=10x1,x(50)=10x2
X=logspace(x1,x2,n) 在x1和x2之間生成n個對數等分數據的行向量。構成等比數列,數列的第一項x(1)=10x1,x(n)=10x2
註:向量的的轉置:x=(0,5)』
2、矩陣的創建
1)直接輸入:
將數據括在[]中,同一行的元素用空格或逗號隔開,每一行可以用回車或是分號結束。
如:a=[1,2,3;3,4,5],運行後:
a =
1 2 3
3 4 5
2)函數eye,生成單位矩陣
eye(n) :生成n*n階單位E
eye(m,n):生成m*n的矩陣E,對角線元素為1,其他為0
eye(size(A)):生成一個矩陣A大小相同的單位矩陣
eye(m,n,classname):對角線上生成的元素是1,數據類型用classname指定。其數據類型可以是:oble、single、int8、uint8、int16、uint16、int32、uint32 。
3)函數ones 用ones生成全1的矩陣
ones(n) : 生成n*n的全1矩陣
ones(m,n) : 生成m*n的全1矩陣
ones(size(A)) : 生成與矩陣A大小相同的全1矩陣
ones(m,n,p,…)生成m*n*p*….的全1的多維矩陣
ones(m,n,…,classname)制定數據類型為classname
4)函數zeros 函數zeros生成全0矩陣
zeros(n):生成n*n的全0矩陣
zeros(m,n:)生成m*n的全0矩陣
zeros(size(A)): 生成與矩陣A大小相同的全0矩陣
zeros (m,n,p,…)生成m*n*p*….的全0的多維矩陣
zeros (m,n,…,classname)指定數據類型為classname
5)函數rand 函數rand用來生成[0,1]之間均勻分布的隨機函數,其調用格式是:
Y=rand:生成一個隨機數
Y=rand(n):生成n*n的隨機矩陣
Y=rand(m,n):生成m*n的隨機矩陣
Y=rand(size(A)):生成與矩陣A大小相同的隨機矩陣
Y=rand(m,n,p,…):生成m*n*p*…的隨機數多維數組
6)函數randn 函數rand用來生成服從正態分布的隨機函數,其調用格式是:
Y=randn:生成一個服從標准正態分布的隨機數
Y=randn(n):生成n*n的服從標准正態分布的隨機矩陣
Y=randn(m,n):生成m*n的服從標准正態分布的隨機矩陣
Y=randn(size(A)):生成與矩陣A大小相同的服從標准正態分布的隨機矩陣
Y=randn(m,n,p,…):生成m*n*p*…的服從標准正態分布的隨機數多維數組
10. 用matlab表示矩陣怎樣實現
一、矩陣的表示
在MATLAB中創建矩陣有以下規則:
a、矩陣元素必須在」[ ]」內;
b、矩陣的同行元素之間用空格(或」,」)隔開;
c、矩陣的行與行之間用」;」(或回車符)隔開;
d、矩陣的元素可以是數值、變數、表達式或函數;
e、矩陣的尺寸不必預先定義。
二,矩陣的創建:
1、直接輸入法
最簡單的建立矩陣的方法是從鍵盤直接輸入矩陣的元素,輸入的方法按照上面的規則。建立向量的時候可以利用冒號表達式,冒號表達式可以產生一個行向量,一般格式是: e1:e2:e3,其中e1為初始值,e2為步長,e3為終止值。還可以用linspace函數產生行向量,其調用格式為:linspace(a,b,n) ,其中a和b是生成向量的第一個和最後一個元素,n是元素總數。
2、利用MATLAB函數創建矩陣
基本矩陣函數如下:
(1) ones()函數:產生全為1的矩陣,ones(n):產生n*n維的全1矩陣,ones(m,n):產生m*n維的全1矩陣;
(2) zeros()函數:產生全為0的矩陣;
(3) rand()函數:產生在(0,1)區間均勻分布的隨機陣;
(4) eye()函數:產生單位陣;
(5) randn()函數:產生均值為0,方差為1的標准正態分布隨機矩陣。
3、利用文件建立矩陣
當矩陣尺寸較大或為經常使用的數據矩陣,則可以將此矩陣保存為文件,在需要時直接將文件利用load命令調入工作環境中使用即可。同時可以利用命令reshape對調入的矩陣進行重排。reshape(A,m,n),它在矩陣總元素保持不變的前提下,將矩陣A重新排成m*n的二維矩陣。