用MATLAB求代數餘子式

2021-08-14 14:05:38 字數 1764 閱讀 1894

1樓:yesyes科

1、首先開啟代表電腦上的「matlab」,軟體主介面如下圖所示,在箭頭處命令列視窗輸入命令即可執行。

2、求餘運算主要使用rem函式和mod函式,具體的呼叫格式為rem(x,y)和mod(x,y)。

3、下面把rem函式中的x換為負數,rem(-3,4)中使用fix函式求得結果為0,輸出為-3。

4、mod(x,y)=x-y.*floor(x./y),floor函式為向左取整。mod(3,4)中使用floor函式求得結果為0,輸出為3。

5、下面把mod函式中的x換為負數。mod(-3,4)中使用floor函式求得結果為-1,輸出為1。然後執行就完成了。

2樓:匿名使用者

用matlab求代數餘子式有定義求和根據矩陣的逆求兩種方法例如第一種:根據定義求

h=[1,2,3;1,4,9;1,8,27];

[n,m]=size(h);

for i=1:n

ni=1:n;

ni(i)=;

for j=1:m

mj=1:m;

mj(j)=;

a(i,j)=(-1)^(i+j)*det(h(ni,mj))endend

a=a'

b在這裡是矩陣h的伴隨矩陣

第二種:根據矩陣的逆來求

a=det(h)*inv(h)

即可得:h(i,j)對應的代數餘子式為a(j,i)

3樓:匿名使用者

我不知道有沒有現成的函式.

clear

h=[1,2,3;1,4,9;1,8,27];

[n,m]=size(h);

for i=1:n

ni=1:n;

ni(i)=;

for j=1:m

mj=1:m;

mj(j)=;

a(i,j)=(-1)^(i+j)*det(h(ni,mj))endend

%檢驗:

a'./det(h)*h%應當為單位陣

4樓:華工大學生

我剛查了書,對代數餘子式和餘子式的定義看了一下.代數餘子式為餘子式乘上一個與下標有關的-1次方.代數餘子式不是固定的,它與取的a(i,j)有關,就是說:

mij為a(i,j)的代數餘子式,而餘子式就是把i行和j列去掉留下的n-1階方陣.我編寫了如下程式.如果定義不一樣,則另當別論了.

求a(1,1)代數餘子式:

>> h=[1,2,3;1,4,9;1,8,27]

h =1 2 3

1 4 9

1 8 27

>> h(:,1)=;h(1,:)=;r=det(h)*(-1)^(1+1)%當不是a(1,1)時,把那裡的1換成i,j.

r =36

a=h(i,:) %你這樣引用是不對的,矩陣用,不用{},只有類才用{}.

如何用用matlab求一個n階矩陣a的伴隨矩陣呢?

5樓:匿名使用者

f為a的伴隨矩陣

a=magic(3);

f=inv(a)*det(a)

f =-53.0000 52.0000 -23.

000022.0000 -8.0000 -38.

00007.0000 -68.0000 37.

0000

6樓:匿名使用者

a的伴隨矩陣=det(a)*inv(a);

跪求解釋 線性代數中餘子式與代數餘子式之間的關係是怎麼來的

因為要把行列式化成左上方是 a,右下方是b,其餘元素是0 這種型。這種型我們已經證專 明瞭,它等於行列式屬a乘以行列式b。當行列式中除 i,j 元素以外其餘元素全為零時,可以把這個元素移到第一元素的位置,也就是左上方。那麼要移動多少步呢?首先把它移到第一行需 i 1 步,再把它移到第一列需 j 1 ...

關於副對角線行列式的代數餘子式證明問題

樓上說的對,我這裡看到另一種方法,希望對你有所幫助,課本上的答案是將副對角行列式化為主對角行列式的 就像這樣 呵呵,我算的結果是 1 n n 3 2 但是這三個答案都沒錯。1 n 4 n 1 2 你的答案 1 n 3n 4 2 1 n 3n 4 2 2 原理 1 2 1 1 n 3n 4 2 4 2...

三階行列式存在負號,行列式代數餘子式反而無負號

正負號與元素aij所在的行列有關,就是 1 i j 當 i j 偶數時為正,奇數時為負 三階行列式各元素代數餘子式的正負情況 以第一行第一列元素 a11 為正開始,順次正負相間的判斷 a11正,a12負,a13正,a23負,a22正,a21負,a31正,a32負,a33正。其實,所有行列式的所有元素...