#### Previous topic

scipy.linalg.solve_continuous_are

#### Next topic

scipy.linalg.solve_discrete_lyapunov

# scipy.linalg.solve_discrete_are

`scipy.linalg.``solve_discrete_are`(a, b, q, r)

  Solves the disctrete algebraic Riccati equation, or DARE, defined as (X = A’XA-(A’XB)(R+B’XB)^-1(B’XA)+Q), directly using a Schur decomposition method.

  Parameters: | a : (M, M) array_like Non-singular, square matrix b : (M, N) array_like Input q : (M, M) array_like Input r : (N, N) array_like Non-singular, square matrix
  Returns: | x : ndarray Solution to the continuous Lyapunov equation

  See also

  `solve_continuous_are`
    Solves the continuous algebraic Riccati equation

  Notes

  Method taken from: Laub, “A Schur Method for Solving Algebraic Riccati Equations.” U.S. Energy Research and Development Agency under contract ERDA-E(49-18)-2087. http://dspace.mit.edu/bitstream/handle/1721.1/1301/R-0859-05666488.pdf

  New in version 0.11.0.