MATRIX COFACTOR
显示 更早的评论
I need to know a function to calculate the cofactor of a matrix, thank a lot!
7 个评论
Quilee Simeon
2018-8-21
cofactor matrix for a matrix A is just det(A)*inv(A)
Zoe Herrick
2018-9-14
编辑:Walter Roberson
2018-9-15
det(A)*inv(A) gives the adjugate or classical adjoint of matrix A which is the Transpose of the cofactor matrix.
This wiki article gives a brief layout of this:
Franco Salcedo Lópezz
2019-11-14
Here I leave this code, I hope it helps. Regards..
function v = adj(M,i,j)
t=length(M);
v=zeros(t-1,t-1);
ii=1;
ban=0;
for k=1:t
jj=1;
for m=1:t
if ( (i~=k)&&(j~=m) )
v(ii,jj)=M(k,m);
jj++;
ban=1;
endif
endfor
if(ban==1)ii++;ban=0;endif
endfor
Walter Roberson
2020-2-6
ii++ is not valid MATLAB though. And endif and endfor are not MATLAB either.
Fernando Salinas
2020-11-10
I wrote this in GNU/Octave but I guess it should work on MATLAB
function cofactor = matrizCofactores(A)
[rows, cols] = size(A);
if rows == cols
for i = 1 : rows,
for j = 1 : cols,
Menor = A;
Menor(i,:) = [];
Menor(:,j) = [];
if mod((i+j),2) == 0
cofactor(i,j) = det(Menor);
else
cofactor(i,j) = -det(Menor);
endif
endfor
endfor
endif
endfunction
Natasha St Hilaire
2021-10-7
What is "menor" short for?
Walter Roberson
2021-10-8
I suspect that the English word would be "minor". The Spanish word "menor" can be translated as English "minor" in some situations.
采纳的回答
更多回答(2 个)
Dr. Murtaza Ali Khan
2019-9-28
A = [
2 4 1
4 3 7
2 1 3
]
detA = det(A)
invA = inv(A)
cofactorA = transpose(detA*invA)
2 个评论
Franco Salcedo Lópezz
2019-11-14
编辑:Franco Salcedo Lópezz
2019-11-14
Here I leave this code, I hope it helps. Regards
function v = adj(M,i,j)
t=length(M);
v=zeros(t-1,t-1);
ii=1;
ban=0;
for k=1:t
jj=1;
for m=1:t
if ( (i~=k)&&(j~=m) )
v(ii,jj)=M(k,m);
jj++;
ban=1;
endif
endfor
if(ban==1)ii++;ban=0;endif
endfor
Walter Roberson
2021-10-11
This is not MATLAB code. It might be Octave.
Francisco Trigo
2020-2-6
0 个投票
The matrix confactor of a given matrix A can be calculated as det(A)*inv(A), but also as the adjoint(A). And this strange, because in most texts the adjoint of a matrix and the cofactor of that matrix are tranposed to each other. But in MATLAB are equal. I found a bit strange the MATLAB definition of the adjoint of a matrix.
1 个评论
Zuhri Zuhri
2021-9-28
adjoint matrix is the transpose of the cofactor matrix so the above result is correct
类别
在 帮助中心 和 File Exchange 中查找有关 Performance and Memory 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!