[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: minors and cofactors
From: |
Dirk Laurie |
Subject: |
Re: minors and cofactors |
Date: |
Fri, 18 Sep 1998 17:36:51 +0200 (SAT) |
Dirk Laurie wrote:
>
> David D. Clark wrote:
> >
> > Are there octave commands for determining minors and cofactors without
> > using the :
> >
> > i.e. is there a command like minor(i,j) will find the minor associated
> > with the ith row and jth column. The cofactor is not as big an issue.
> >
...
>
> If you need cofactors of a singular or non-square matrix, the problem
> is a good deal harder. In fact, I can't offhand think of a fast way
> of doing it.
>
Before anyone else jumps in to tell me what an idiot I am: cofactors
of a non-square matrix are of course meaningless. Cofactors of a matrix
of rank n-2 or less are all zero (no matter which row and column you
delete, the remaining matrix is still singular) so the interesting
problem arises in the case rank n-1. In view of the equation
A.'*cofA = det(A)*I = cofA*A.'
on which the full-rank solution is based, it follows in the rank n-1
case that cof(A) must be of the form c*null(A.')*null(A).'. So let the
SVD of A be
[U,S,V]=svd(A);
In the rank n-1 case we have
x=U(:,n); y=V(:,n);
cofA = ( det(U)*det(V')* prod(s(1:n-1)) )*conj(x)*y.'
"The proof is left as an exercise to the reader."
Dirk