1樓:匿名使用者
第一個問題:
假設:a = [1 2 3];
b = [4 5 6];
則你**中的ab=[a;b];就得到
ab =
1 2 3
4 5 6
你**中的最後一行dd就是a,b的cross,即:
cross(a,b) =
-3 6 -3
中間三行**
dd(1)=det(ab(:,[2,3]));
dd(2)=-det(ab(:,[1,3]));
dd(3)=det(ab(:,[1,2]));
實際上就是求這個cross的過程,解釋如下:
dd的第一個元素,是求ab中的第二列和第三列的行列式(det就是求行列式的意思,ab(:,[2,3])中“:”表示取所有行,[2,3]表示取第2和第3列),即2*6-5*3,結果是-3;
dd的第二個元素,是求ab中的第一列和第三列的行列式後再取負值,即-(1*6-4*3),結果是6;
dd的第三個元素,是求ab中的第一列和第二列的行列式,即1*5-2*4,結果是-3。
第二個問題:
在matlab中,符號“*”和符號“.*”是兩種不同的乘法。
1、c = a*b,c中的第一個元素c11是a的第一行與b的第一列對應相乘,並累加,這種乘法要求a的列數與b的行數相同;
c = a.*b,c中的第一個元素c11是a的第一個元素a11去乘以b的第一個元素b11,c12=a12*b12.......c21=a21*b21........
2、點積是求兩個向量對應元素相乘後的累加和,要求兩個向量長度一致,matlab中對應的函式是dot(a,b)。
你的問題:
a,b是兩個行向量(即1*3的,一行三列),b'就把b變成了一個3*1的列向量。
a*b':即1*3的行向量去乘以3*1的列向量,正好是3對元素對應相乘,然後累加;
如果你變成了a.*b':依據上面說點乘含義,matlab會去做a11*b11, a12*b12, a13*b13,但由於b'是一個列向量,b12和b13是不存在的,所以報錯告訴你維度不對。
2樓:楊柳風
c = cross(a,b)返回向量叉積a和b,即,c = a x b,a和b必須是3元向量。c = crossa,b), 返回的叉積a和b沿長度為3的第一個方面。
c = cross(a,b,dim),,其中a和b是n-d 陣列,返回向量叉積維a和b a和b尺寸必須有相同的大小,兩者size(a,dim)和size(b,dim)必須為3
matlab裡面的ones是什麼意思?
matlab中[a,b]=cross(c,d)是什麼意思
3樓:我行我素
在命令窗中用help cross,會發現:cross是矩陣叉乘,形如:c=cross(a,b)
只能得到一個矩陣c,不會有第二個輸出引數。但題中[a,b]=cross(c,d)有第二個引數,顯然,cross不是指matlab中的這個命令,題中的cross可能是自寫的函式,而自寫函式會因程式不同而有不同的意思。
古希臘裡面的泰坦指什么,古希臘裡面的泰坦指什麼
是希臘神話中曾統治世界的古老的神族,這個家族是天穹之神烏拉諾斯和大地女神蓋亞 蓋婭 的子女,他們曾統治世界,但被宙斯家族推翻並取代 簡而言之,就是第一代神靈啦,都是蓋亞之子來著,詳細情形百科一下唄 希臘神話中的泰坦和神是什麼關係 泰坦巨神主要是指地神該亞和天神烏拉諾斯所生的六男六女,共十二個巨神。這...
Chandelier mv裡面的小女孩叫什麼
美國11歲女演員 maddie ziegler請採納 chandelier mv裡面那個女孩是誰?麥蒂 齊格勒 maddie ziegler 本名麥蒂遜 妮可 齊格勒 madison nicole ziegler 2002年9月30日出生於美國賓夕法尼亞州匹茲堡,美國演員 舞者。2010年,參加電視...
IE裡面的cookies 建議不要刪除是什麼意思?
什麼是cookies?cookies是資料報,可以讓網頁具有記憶功能,在某台電腦上記憶一定的資訊。cookies的工作原理是,第一次由伺服器端寫入到客戶端的系統中。以後每次訪問這個網頁,都是先由客戶端將cookies傳送到伺服器端,再由伺服器端進行判斷,然後再產生html 返回給客戶端,這是乙個很重...