[SciPy-User] Ax = b for symmetric positive definite matrix

Nils Wagner nwagner@iam.uni-stuttgart...
Wed Dec 8 10:53:38 CST 2010


On Wed, 08 Dec 2010 14:47:57 +0100
  Dag Sverre Seljebotn <dagss@student.matnat.uio.no> 
wrote:
> On 12/08/2010 02:38 PM, Mathieu Blondel wrote:
>> Hi everyone,
>>
>> I want to solve equations of the form Ax = b or Ax = B 
>>where A is a
>> dense symmetric positive definite matrix. I want to be 
>>able to support
>> potentially large A so I find it convenient to store A 
>>as a 1d-vector
>> containing the upper part of the matrix only. It's easy 
>>to convert
>> this 1d representation to a 2d-representation, and 
>>vice-versa.
>>
>> I believe functions like linalg.solve (when passed 
>>sym_pos=True) and
>> linalg.cholesky would benefit from accepting 1d-arrays 
>>of this kind.
>>
>> Is there a memory efficient way of solving my equations 
>>for a large A?
>>    
> 
> Perhaps not the answer you're looking for, but:
> 
> It is not supported in SciPy yet, but if you want to 
>play with calling 
> LAPACK directly, this is supported through 
>sppsv/dppsv/cppsv/zppsv. For 
> instance you could modify the scipy/linalg/*.pyf files 
>to include the 
> function, rebuild SciPy. Or, search for "tokyo cython 
>lapack" and play 
> with that.
> 
> http://www.netlib.org/lapack/double/dppsv.f
> 
> Dag Sverre 
> _______________________________________________
> SciPy-User mailing list
> SciPy-User@scipy.org
> http://mail.scipy.org/mailman/listinfo/scipy-user


I have filed a ticket 
http://projects.scipy.org/scipy/ticket/456 for that 
purpose.

Nils



More information about the SciPy-User mailing list