[Scipy-tickets] [SciPy] #1732: solve_discrete_are in scipy.linalg does (sometimes) not solve correctly

SciPy Trac scipy-tickets@scipy....
Sat Sep 22 11:11:08 CDT 2012

#1732: solve_discrete_are in scipy.linalg does (sometimes) not solve correctly
 Reporter:  inde                         |       Owner:  somebody   
     Type:  defect                       |      Status:  new        
 Priority:  normal                       |   Milestone:  Unscheduled
Component:  scipy.linalg                 |     Version:  devel      
 Keywords:  riccati, solve_discrete_are  |  

Comment(by ArmstrongJ):

 I'll look into the particular solution, but the technique used to arrive
 at the solution, Laub's Schur method, does not guarantee a valid solution
 in all cases.  Laub's technique is a simple, straightforward solution to
 the DARE.  However, a significant number of cases fail using the direct
 solver.  I talk a bit about it in my PyCon talk in 2011.  Alternate
 solvers, such as an iterative technique or SLICOT's implementation, might
 be better in some cases.

 MATLAB uses SLICOT to solve the algebraic Riccati equations, which is more
 robust.  However, SLICOT is GPL, so here we are.

 Again, I'll have a look at the problematic case, but there is no guarantee
 of a solution using the technique included in SciPy.

Ticket URL: <http://projects.scipy.org/scipy/ticket/1732#comment:4>
SciPy <http://www.scipy.org>
SciPy is open-source software for mathematics, science, and engineering.

More information about the Scipy-tickets mailing list