Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Matrix decomposition question

  1. Jan 29, 2010 #1
    Hi everyone,

    I have a problem with the following matrix equation:

    A = B*inv(B+D)

    where A is a square matrix, B a positive semi-definite matrix, D a positive diagonal matrix and inv() denotes the inverse matrix. All are real-valued.

    Does anyone know of any simple way to check whether this equation has a solution for given A? And how to obtain this solution? (i.e. find B and D) And whether the solution is unique?

    Thanks in advance!
  2. jcsd
  3. Jan 29, 2010 #2


    User Avatar
    Science Advisor
    Homework Helper

    Welcome to PF!

    Hi TimSal! Welcome to PF! :smile:

    Hint: multiply both sides by … ? :wink:
  4. Jan 30, 2010 #3
    Yes, that gives




    I don't see how that really helps to answer the question though. It's a system of linear equations but I still don't see an easy way of checking whether there exists a solution, nor do I know how to solve this efficiently under the restriction that B is positive semi-definite and D is positive diagonal.
  5. Jan 30, 2010 #4


    User Avatar
    Science Advisor
    Homework Helper

    Hi TimSal! :smile:
    So, if (I - A) is invertible, then B = (1 - A)-1AD :wink:
  6. Jan 30, 2010 #5
    Thanks. Any thoughts on the case where A and (I-A) are not invertible?
  7. Jan 30, 2010 #6
    Also, with
    there does not seem to be any guarantee that B will indeed be positive semi-definite for any given positive diagonal D.
  8. Jan 30, 2010 #7


    User Avatar
    Science Advisor
    Homework Helper

    Nope! :smile:
    But D isn't given.
  9. Jan 30, 2010 #8
    D isn't given, but because there is no guarantee that B will be positive semi-definite for any chosen D, this expression does not help me solve the equation. I still don't know how to pick D and B.
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook