How to get solution of following polynomial?
On Sun, Jan 11, 2009 at 6:03 AM, RON70 <ron_michael70 at yahoo.com> wrote:
Hi, I want find all roots for the following polynomial :
a <- c(-0.07, 0.17); b <- c(1, -4); cc <- matrix(c(0.24, 0.00, -0.08,
-0.31), 2); d <- matrix(c(0, 0, -0.13, -0.37), 2); e <- matrix(c(0.2, 0,
-0.06, -0.34), 2)
A1 <- diag(2) + a %*% t(b) + cc; A2 <- -cc + d; A3 <- -d + e; A4 <- -e
fn <- function(z)
{
y <- diag(2) - A1*z - A2*z^2 - A3*z^3 - A4*z^4
return(det(y))
}; uniroot(fn, c(-10, 1))
Using uniroot function, I got only one solution of that. Is there any
function to get all four solutions? I looked at polyroot() function, but I
do not think it will work for my problem, because, my coef. are matrix, nor
number
Use curve to plot the curve of your function. Then, see where the roots are, and use uniroot with a small interval around the roots to determine their exact value. Example: f <- function(x) x^2-1 curve(f,-5,5) uniroot(f,c(-2,-0.2)) uniroot(f,c(0.2,2)) Paul