help-octave
[Top][All Lists]

## 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

```