1樓:劉賀
將3個2維矩陣串成一個三維矩陣,cat(3,a,b,c)裡面的3就是指沿著第3維方向連線
你就把3維矩陣想象成串在一根棍子上的3個“片”就行了,每一片分別是a、b、c3個
二維矩陣。
clear all;clc;
a=ones(3,3);
b=magic(3);
c=zeros(3,3);
d=cat(3,a,b,c)
d(:,:,1) =
1 1 1
1 1 1
1 1 1
d(:,:,2) =
8 1 6
3 5 7
4 9 2
d(:,:,3) =
0 0 0
0 0 0
0 0 0
2樓:匿名使用者
cat(3,a,b,c)就是建立一個三維矩陣,讓a做新矩陣的第一頁,b做第二頁,c做第三頁
三維矩陣分別是行,列,頁。這個要明白!
請求matlab大神編輯程式! 編寫一個函式,得到兩個矩陣a和b的相乘的結果,函式的形式必須是
3樓:匿名使用者
函式檔案matmult_20150101.mfunction matrixproduct = matmult_20150101(a, b)
[m,n] = size(a);
[x,y] = size(b);
if(n~=x)
disp(['矩陣維度不匹配'])
return
endmatrixproduct = zeros(m,y);
for i=1:m
for j=1:y
for k=1:n
matrixproduct(i,j) = matrixproduct(i,j) + a(i,k)*b(k,j);
endend
end呼叫示例
>> a=[1 2 3;4 5 6];
>> b = [1 1 1 1;2 3 4 5];
>> c = [1 1 1 1;2 3 4 5;3 4 5 6];
>> matmult_20150101(a, b)矩陣維度不匹配
>> matmult_20150101(a, c)ans =
14 19 24 29
32 43 54 65
>> a*c % 直接計算
ans =
14 19 24 29
32 43 54 65
matlab中的cat(n,a,b)中的n維數是什麼意思
4樓:o什麼名字
要是ab橫著排,維數為1,否則,為2.
5樓:匿名使用者
起來2 分鐘前 提問者:知道手機網友 |
matlab解三元一次方程組問題,求大神幫忙。
6樓:匿名使用者
給出的三元一次方程組,應該用fsolve()函式來求解。實現**如下:
x0=[-0.75127 -0.2551 -0.50596];
[x,fval] = fsolve(@exfun,x0)
exfun——自定義三元一次方程組函式
function y=exfun(x)
u=x(1);v=x(2);a=x(3);
la=1.203;
lb=0.6054;
lc=1.203;
s1 = (u^2+v^2*cos(a))/(u^2+v^2);
s2 = (u*v*(1-cos(a)))/(u^2+v^2);
s3 = (v^2+u^2*cos(a))/(u^2+v^2);
s4 = (v*sin(a))/((u^2+v^2)^0.5);
s5 = (u*sin(a))/((u^2+v^2)^0.5);
y(1)=((-1)*1.65*s1+(-1)*0.6*s2-(-1)*1.
65)^2+((-1)*1.65*s2+(-1)*0.6*s3-(-1)*0.
6)^2+((-1)*1.65*s4+(-1)*0.6*s5+0.
9)^2-(la)^2;
y(2)=((-1)*1.65*s1+0.6*s2-(-1)*1.
65)^2+((-1)*1.65*s2+0.6*s3-0.
6)^2+((-1)*1.65*s4+0.6*s5+0.
9)^2-(lb)^2;
y(3)=(1.65*s1+(-1)*0.6*s2-1.
65)^2+(1.65*s2+(-1)*0.6*s3-(-1)*0.
6)^2+(1.65*s4+(-1)*0.6*s5+0.
9)^2-(lc)^2;
end執行結果
x = -0.4103 -1.7029e-05 0.52412
fval = 1.2744e-05 -0.00030638 -0.00014883
即u=-0.4103; v=-1.7029e-05; a=0.52412
matlab中的 ndims(a)、length(a)、size(a) 分別是什麼意思?
7樓:匿名使用者
size(a)表示矩陣每個維度的長度
比如size([1 2 3;4 5 6])等於[2 3]
表示他有2行3列
size([1 2 3])
等於[1 3]
表示他有1行3列
另外size(a,n)表示矩陣a在第n個維度下的長度。
比如size([1 2 3;4 5 6],1)等於2,表示有2行
size([1 2 3;4 5 6],2)等於3,表示有3列
length(a)表示矩陣a的最大的長度,即max(size(a))比如length([1 2 3;4 5 6])等於3,因為2和3中最大是3
當a是向量時,即表示向量的元素個數,因為向量總是1×n或n×1的,而n一定大於或等於1.所以得到的結果一定是n
ndims(a)表示矩陣a的維數,即length(size(a))比如ndims([1 2 3;4 5 6])等於2,因為他是二維矩陣
matlab認為向量也是二維矩陣,只不過其中一個維度的長為1.
因此ndims([1 2 3])也等於2
我們可以構造一個三維甚至更高維度的矩陣,
比如a=cat(3,[1 2 3 4;5 6 7 8],[9 8 7 6;5 4 3 2])
他除了行和列以外還有一個維度,我們暫且把它叫做高度。
也就是說a有兩層,第一層是[1 2 3 4;5 6 7 8],第二層是[9 8 7 6;5 4 3 2]
此時有size(a)=[2 4 2]
即2行4列2層
length(a)=4
([2 4 2]中最大為4)
ndims(a)=3
(因為他有3個維度)
求助matlab大神,如何檢驗一個向量中每個元素都相等? 比如[3,3,3,3]符合要求,[3,3,4,3]則不符合要求
8樓:匿名使用者
用減法吧,相等的後一個減前一個為0
不等的兩相鄰元素相減不為0,就返回。
程式懶得寫了,sorry哈!
9樓:匿名使用者
把陣列每個元素轉換為字元,用字元去比較
10樓:匿名使用者
isequal(x,ones(size(x))*x(1))
matlab a=ones(2); b=diag([3,4]); cat(3,a,b)執行結果
11樓:匿名使用者
ans(:,:,1) = 1 11 1
ans(:,:,2) = 3 00 4
12樓:匿名使用者
ans(:,:,1)=
1 1
1 1
ans(:,:,2)=
3 0
0 4
ans代表結果,是answer的縮寫。結算結果沒有賦給變數時,預設在結果前顯示“ans =”。
matlab怎樣求矩陣每一行的平方和?
13樓:藤閣美人
1、開啟matlab,在命令bai
行視窗中du輸入 a=[1 2 3;2 3 4;4 5 6],創zhi建3行3列矩陣
2、輸入 sum(a.*a,2),進行dao求a矩陣每一行的平方回和,答其中.*是點乘,2是代表求矩陣的行之和,每列相加
3、按回車鍵之後,可以看到求出了矩陣每一行的平方和4、如果我們想求每一列的平方和,可以輸入sum(a.*a,1)5、按回車鍵之後,可以看到得到了矩陣每一列的平方和
14樓:匿名使用者
有矩陣a
則你所要求的矩陣b=sum(a.*a,2)附:::
.*這是點乘,就是矩陣每個對應位置的元素相乘sum(a,2)是按行相加,得出的為列向量若sum(a)是按列相加,得出的為行向量
哪位大神解釋一下,哪位大神解釋一下這個是什麼意思
你發的這張 是懷孕的表意意思,我不知道是不是那是兩道槓就是懷孕了,如果一道槓就沒有懷孕,你是不是問這個呀?懷孕的結果,不知道你是不是問的這方面的,如果是,那就是懷孕了。哪位大神解釋一下這個是什麼意思 20 按通常簡寫規則,意思是 實時時鐘初始化正常 的意思。誰能解釋一下這是什麼?看起來似曾相識 一尊...
有大神解釋一下嗎,有米有大神解釋一下這是什麼意思?
一個士兵的妻子去軍營看望老公,正好遇上士兵練槍,只聽槍聲轟鳴,把妻子嚇的趕忙躲進老公的懷裡,於是老公說 看,這是手槍的威力,回家讓你嚐嚐大炮的威力 有米有大神解釋一下這是什麼意思?病人會遇到 醫生會 女病人 電工快遞是居家女人的致命 這麼說能懂麼 你不自己都已經把答案寫出來了嗎,物理原理啊 dnux...
籤文幫忙解釋一下吧,籤文幫忙解釋一下吧
看上去像是問財運的復 意思是 富貴制由天,命中註定 期望不bai能過高,不是 du你的錢,zhi不入你的袋。求 財,急不dao得 不如干回老本行,耐心等待 待到財來日,自然擋不住 概括起來就是 求財不能急,冥冥中自有註定,只能耐心等待,不能人為地改變 富貴由命天注來定,自 心高必然誤君期。不然自回依...