Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"

Inversion on a non square matrix using PDL (or similar?)

by Angharad (Pilgrim)
on Jul 28, 2005 at 16:34 UTC ( #479031=perlquestion: print w/replies, xml ) Need Help??

Angharad has asked for the wisdom of the Perl Monks concerning the following question:

I'm having a little play with PDL at the moment. Neat but I was wondering if anyone knew of a way in which you can invert a matrix that isnt square.
There is a function in MatLab called pinv which will invert a rectangular matrix. Perhaps there is something similar offered in PDL?
Or, if not, does anyone know of another way to implement this using Perl?
  • Comment on Inversion on a non square matrix using PDL (or similar?)

Replies are listed 'Best First'.
Re: Inversion on a non square matrix using PDL (or similar?)
by gjb (Vicar) on Jul 28, 2005 at 16:56 UTC

    You're looking for the Moore-Penrose pseudoinverse. It is defined on MathWorld and is easy to implement for a matrix A as (A^t A)^{-1} A^t where A^t is A transposed, A^t A is a square matrix, (A^t A)^{-1} being its inverse (if it exists).

    Hope this helps, -gjb-

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://479031]
Approved by gjb
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others surveying the Monastery: (2)
As of 2022-10-07 00:32 GMT
Find Nodes?
    Voting Booth?
    My preferred way to holiday/vacation is:

    Results (29 votes). Check out past polls.