s-news
[Top] [All Lists]

Re: chol error in Finmetric's SUR

To: "'Leeds, Mark'" <mleeds@mlp.com>, "'Eric Gravengaard'" <gravengaard@gmail.com>, "'Stahel, Christof'" <stahel_2@cob.osu.edu>
Subject: Re: chol error in Finmetric's SUR
From: "Eric Zivot" <ezivot@u.washington.edu>
Date: Mon, 19 Apr 2004 14:11:38 -0700
Cc: <s-news@lists.biostat.wustl.edu>
In-reply-to: <54668D97C0199943A454516A5FF6481E1F9B59@EXCHUS001.AD.MLP.COM>
Thread-index: AcQmUDuKWiFT3xpJQI2YVtFq59BQdQAABIxgAACTD5A=
The problem is not in FinMetrics but in the S-PLUS function chol() and the
type of Intel processor (P3, P4 etc). The function chol() is very sensitive
to small departures from symmetric. The trick of defining x = (x + t(x))/2
will inforce symmetry so that chol() will work correctly. 

-----Original Message-----
From: s-news-owner@lists.biostat.wustl.edu
[mailto:s-news-owner@lists.biostat.wustl.edu] On Behalf Of Leeds, Mark
Sent: Monday, April 19, 2004 1:56 PM
To: Eric Gravengaard; Stahel, Christof
Cc: s-news@lists.biostat.wustl.edu
Subject: Re: [S] chol error in Finmetric's SUR

I used to add the matrix to itself and
Then multiply by 0.5 or something
Like that but I don't recall exactly.
Someone else may remember the details.
All I remember is that it worked
For symmetry problems with Splus. Maybe
Finmetrics is different though.


                                mark


-----Original Message-----
From: s-news-owner@lists.biostat.wustl.edu
[mailto:s-news-owner@lists.biostat.wustl.edu] On Behalf Of Eric Gravengaard
Sent: Monday, April 19, 2004 4:22 PM
To: Stahel, Christof
Cc: s-news@lists.biostat.wustl.edu
Subject: Re: [S] chol error in Finmetric's SUR


Christof,

I've had similar errors when using a Choleski decomposition. It comes down
to the matrix not being symmetric. The problems usually arise when the
matrix is symmetric, but because of machine precision limitations doesn't
look symmetric to a machine. I do not have a work around except to use
Matlab to do this because their implementation does not have this
limitation.

Do others have work arounds or possibly another implementation of the
Choleski decomposition that would help to solve this problem?

-Eric

On Sat, 17 Apr 2004 12:49:12 -0400, Stahel, Christof <stahel_2@cob.osu.edu>
wrote:
> 
> Dear all,
> I receive the following error
> 
> Problem in chol(xpx[X.idx[[i]], X.idx[[i]]]): Matrix must be symmetric 
> Use traceback() to see the call stack when I call SUR in Finmetrics 
> using the sample code straight from the help file. Any idea what 
> causes the problem?
> 
> # simulate a multivariate data set.
> set.seed(10)
> x1 <- abs(rnorm(100))
> x2 <- x1^2
> sim.dat <- data.frame(x1=x1,
>                      x2=x2,
>                      y1=1+2*x1+rnorm(100),
>                      y2=4+5*x2+rnorm(100)) # estimate an SUR model 
> SUR(list(y1~x1, y2~x2), data=sim.dat)
> 
> I am using  release 6.0.2 for windows on a 3.06 Pentium 4 HT running 
> XP.
> 
> Thanks VERY much for your help & input!
> C
> --------------------------------------------------------------------
> This message was distributed by s-news@lists.biostat.wustl.edu.  To 
> unsubscribe send e-mail to s-news-request@lists.biostat.wustl.edu with 
> the BODY of the message:  unsubscribe s-news
>
--------------------------------------------------------------------
This message was distributed by s-news@lists.biostat.wustl.edu.  To
unsubscribe send e-mail to s-news-request@lists.biostat.wustl.edu with the
BODY of the message:  unsubscribe s-news
--------------------------------------------------------------------
This message was distributed by s-news@lists.biostat.wustl.edu.  To
unsubscribe send e-mail to s-news-request@lists.biostat.wustl.edu with the
BODY of the message:  unsubscribe s-news


<Prev in Thread] Current Thread [Next in Thread>