[SciPy-user] Solve for symmetric matrix?

Anand Patil anand at soe.ucsc.edu
Thu Apr 26 11:11:11 EDT 2007


If the matrix has a zero eigenvalue, it has a nullspace so it's singular so you can't really invert it. However, if you know in advance that the RHS vector is orthogonal to the nullspace you can solve for the remaining components using a low-rank submatrix.

Fred, if this is a kriging problem I've dealt with it in a Gaussian process module I'm writing. It's not even close to stable yet, but get it from code.google.com/p/gaussian-process. Please email me if you've got any questions, comments or especially interest in helping out. :)

For purposes of the ticket, there's a Linpack routine called DCHDC that can compute a Cholesky decomposition even if some eigenvalues are zero. It's kind of hard to work with because of some funky pivoting, but it could probably be wrapped nicely for scipy. I'm using a hacked version of Lapack's DPOTF2 that's too dangerous for general usage.

Anand


Message: 10
Date: Thu, 26 Apr 2007 13:41:36 +0200
From: Nils Wagner <nwagner at iam.uni-stuttgart.de>
Subject: Re: [SciPy-user] solve for symetric matrix ?
To: SciPy Users List <scipy-user at scipy.org>
Message-ID: <46308FF0.8090907 at iam.uni-stuttgart.de>
Content-Type: text/plain; charset=ISO-8859-15

fred wrote:

>> Joachim Dahl a ?crit :
>>   
>  
>
>>>> If the diagonal is 0, then the matrix is not definite (so, neither is 
>>>> -A)...
>>>>     
>>    
>>
>> Uh...., so... is there any peculiar method to solve symetric matrices 
>> with 0 on the diagonal ?
>>
>> Cheers,
>>
>>   
>  
>
Fred,

See my previous mail. You are looking for a solver for symmetric
indefinite systems.
Should I file a ticket (task/enhancement) for a symmetric indefinite
solver ?

Nils




More information about the SciPy-User mailing list