求matlab裡求內積的函式,求一個matlab裡求內積的函式

時間 2021-08-11 17:47:17

1樓:娛樂小八卦啊

內積的命令是dot,例子如下:

x=[1 1 1 1 1 1];

y=[2 2 2 2 2 2];

dot(x,y)

在數學中,「內積」 符號表示為( )或(),但為了避免將「內積」符號( )和圓括號()搞混,本文采用( )來表示「內積」,陣列的「內積」可表示為舉例如下:

(a,b) = <[a1, a2,... an], [.,.....n〉= a1b1 + a2b2 +.. + anbn

即:對應的元素先「乘」後「加」。matlab程式舉例:

>> a=[1 2 3]; %假設一個「陣列a」

>> b=[45 6]; %假設一個「陣列b」

>> dot(a,b) %將「陣列a」和「陣列b」取「內積」。

擴充套件資料

將兩個矩陣的「列向量」取「內積」後形成的矩陣(由於「列向量」可看作一維陣列,即轉化為:先求「陣列的內積」,然後構成矩陣即可),matlab程式 舉例:

>> a=[1 2;34]; %矩陣a

>> b= [56; 7 8]; %矩陣b

>> dot(a,b) %將矩陣a和b取內積,設t表示矩陣的轉置,即是將「行列整體互換」,那麼取內積的過程分析: (]t,這個過程分析總體不是matlab**, 但這其中寫的「;」 是用matlab**表示的,表示「矩陣中一行結束了。

要換行了」.如果要將其過程寫成matlab**,那就是這樣三種方式(這三種方式通過實際執行都是正確的,實現同一功能)[ dot([1,3]',[5,7]'); dot([2,4]',[6,8]') ]』%有換行號「;」和轉置號「,」。

2樓:匿名使用者

內積的命令是dot

例子:x=[1 1 1 1 1 1];

y=[2 2 2 2 2 2];

dot(x,y)

matlab中有沒有自帶的求向量內積函式?

3樓:匿名使用者

有,dot(x,y), x,y 為兩個具有相同分量的向量

4樓:匿名使用者

用表示式就可以了,不用函式

matlab求解此向量內積

5樓:匿名使用者

將a向量乘以b向量的轉置即可

即為a*b'

對於複數,』為共軛轉置,可使用conj(b')

matlab迴圈語句求內積,外積

6樓:匿名使用者

以下來是迴圈語句,可自以適用於n維向量bai的內積,你可以自己du去做成一個zhifunction的m檔案直接呼叫的。dao程式如下:

% 最終內積由z給出,在螢幕上顯示。

x=[1,2,3];

y=[4,5,6];

z=0;

n=length(x);

for k=1:1:n;

z=z+x(k)*y(k);

endz

一個迴圈,很簡單的。

對於外積,三階外積又不用大量求和(如果你不是想求n階張量積的話)我還真看不出怎麼用迴圈。。。(除了閒的無聊確實可以加一個無聊的迴圈外衣,例如for k=[1 2 3]; if k=1....elseif k=2.....

else......end..end..

end...)

對外積就老老實實簡單的將結果的三個分量一個一個算出來吧,直接輸公式,簡單到連det都不用要(因為兩階行列式太簡單了)。

7樓:匿名使用者

x=[1,2,3];

y=[4,5,6];

p=dot(x,y);%內積

q=cross(x,y);%外積

用迴圈!!!

你要想做成迴圈那就看help裡的dot和cross吧。

matlab中,乘積、點積、叉積有何區別?如何應用?

8樓:風吹的小羊

形成實bai係數多項式,則根向兩du種的複數根必須共zhi軛成對;dao含複數的內根向量所生成的多容項式係數向量(如p)的係數有可能帶在截斷誤差數量級的虛部,此時可以採用取實部的函式real來將此虛部濾掉。操作如下:

1、用matlab求矩陣的秩。命令:rank(a),a代表所求的矩陣。英語單詞rank表示秩。運算結果中的ans是answer(結果、答案)的縮寫。

2、用matlab求矩陣的乘積,一般乘法:a*b,a、b代表兩個矩陣。

3、矩陣點乘:a.*b,即兩矩陣的對應項相乘。

4、三、用matlab求矩陣的逆矩陣,命令:inv(a)或a^-1,inv是英語單詞inverse(逆向)的縮寫。

5、用matlab求行列式的值,命令:det(a),det是英文單詞determinant(行列式)的縮寫。

9樓:anyway中國

1、乘積

用於矩陣相乘

,表示為c=a*b,a的列數與b的行數必須相同,c也是矩陣,c的行數等於a的行數,專c的列數等於b的列數。cij為a的第i行與b的第j列的點積。

2、點積

用於向量相乘,表示為c=a.*b,a與b均為向量,c為標量,也屬稱標量積、內積、數量積等

3、叉積

用於向量相乘,表示為c=a×b,a與b均為向量,c與a、b均正交,c也為向量,也稱向量積。

10樓:匿名使用者

更正一下最bai佳答案的點du

積:dot   點積zhi

語法c = dot(a,b)

c = dot(a,b,dim)

說明c = dot(a,b) 返回dao a 和 b 的標量點積。

如果 a 和 b 是向量,內

則它們的長度必須相同。

容如果 a 和 b 為矩陣或多維陣列,則它們必須具有相同大小。在本例中,dot 函式將 a 和 b 視為向量集合。該函式計算對應向量沿大小不等於 1 的第一個陣列維度的叉積。

c = dot(a,b,dim) 計算 a 和 b 沿維度 dim 的點積。dim 輸入是一個正整數標量。

11樓:流星日食

matlab中乘法包括點乘bai和叉乘。

數與矩陣

du的乘

法:(m等價zhi於m.)dao

m×a : m與a中各元素相乘

矩陣專與屬矩陣的乘法:

a×b: a、b矩陣按線性代數中矩陣乘法運算進行相乘(注意維數匹配)

a.*b: a、b對應元素相乘(注意維數相同)

12樓:卻亮門鸞

更正一下最佳答bai案的點積:

dot點積du

語法zhic=

dot(a,b)c=

dot(a,b,dim)

說明daoc=

dot(a,b) 返回 a 和 b 的標量點積。

如果 a 和 b 是向量,則它們版的長度必須相同權。

如果 a 和 b 為矩陣或多維陣列,則它們必須具有相同大小。在本例中,dot 函式將 a 和 b 視為向量集合

matlab計算向量內積,無法得到方程的結果,求助

13樓:我行我素

我改下有結果:

xt=0;yt=0;zt=30;xr=12.8;yr=9.6;zr=5;

x1=10;y1=0;z1=5;x2=10;y2=0;z2=30;

syms a1 a2 b1 b2 x0 y0 z0 t real

x0=x2+t*(x1-x2); y0=y2+t*(y1-y2);z0=z2+t*(z1-z2);

a1=dot([xt-x0,yt-y0,zt-z0],[x2-x0,y2-y0,z2-z0]);

a2=dot([xr-x0,yr-y0,zr-z0],[x1-x0,y1-y0,z1-z0]);

b1=sqrt((xt-x0)^2+(yt-y0)^2+(zt-z0)^2)*sqrt((x2-x0)^2+(y2-y0)^2+(z2-z0)^2);

b2=sqrt((xr-x0)^2+(yr-y0)^2+(zr-z0)^2)*sqrt((x1-x0)^2+(y1-y0)^2+(z1-z0)^2);

t=solve(abs(a1/b1)-a2/b2,t)

結果:t=1/2

matlab求函式極值,matlab求函式的極值

你要求數值解還是解析解?就乍一看,後面那個積分存不存在還難說呢。matlab求函式的極值 x 10 y zeros numel x 1 for i 1 numel x y i sin i 2 cos i 2 endy min min y y max max y x min x find y y mi...

matlab裡,有沒有函式直接求向量的模

晚夏落飛霜 在matlab中,norm 函式可以直接求一個向量的模。matlab函式norm有兩種形式 1 n norm x 2 n norm x,p p 範數 其中,n norm x 與 n norm x,2 相同。a 1 1.2 2 3 n1 norm a n2 norm a,2 n1 3.63...

用matlab求反函式,用matlab求一個反函式

z就相當於你原來函式裡面的x,而x相當於你原來函式的y。求y x x 2 18 6 x x 2 x 3 的反函式,相當於把上述方程中y當成已知量來求x,那麼把方程,得到分子是一個關於x的4次多項式 syms x y collect numden y x x 2 18 6 x x 2 x 3 x an...