Path: news.mathworks.com!not-for-mail
From: "billy ford" <firstsillybilly@yahoo.com>
Newsgroups: comp.soft-sys.matlab
Subject: is it possible to extract P from A=P'*P?
Date: Wed, 24 Nov 2010 22:24:04 +0000 (UTC)
Organization: The MathWorks, Inc.
Lines: 15
Message-ID: <ick3a3$om3$1@fred.mathworks.com>
Reply-To: "billy ford" <firstsillybilly@yahoo.com>
NNTP-Posting-Host: webapp-02-blr.mathworks.com
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: fred.mathworks.com 1290637444 25283 172.30.248.37 (24 Nov 2010 22:24:04 GMT)
X-Complaints-To: news@mathworks.com
NNTP-Posting-Date: Wed, 24 Nov 2010 22:24:04 +0000 (UTC)
X-Newsreader: MATLAB Central Newsreader 2585630
Xref: news.mathworks.com comp.soft-sys.matlab:689809

Hi all,

I am looking for a program that can extract the matrix back, for example, I know a matrix A which is produced from P'*P, then I would rather prefer to have P back, is there anyway to do this in Matlab? I give you an example here:
P =   [1     2
          5     6]
A = P'*P =   [26    32
                      32    40]
I try to use Cholesky decomposition, and it does give me the matrix P back
C = chol(A) = [5.099019513592784   6.275716324421889
                                                             0   0.784464540552735]
Even I use sqrtm command, I still can not get the original matrix P
D = sqrtm(A) = [25.999999999999996  32.000000000000000
                             32.000000000000000  40.000000000000000]
Plese help and thanks all,
Billy.