# Re: [R] Solving equations with optim

From: <Bill.Venables_at_csiro.au>
Date: Sun, 16 Mar 2008 09:52:54 +1000

There is one obvious way:

a <- x
b <- x
ex <- if (all(x > 0))

```	(((a/(a+b))*(beta(a,b)/(beta(a,b)-beta(a,b+6))))-0.35259)
else Inf
```

(ex - value)^2
}
> opt <- optim(c(1,2),test)
>
> opt[c("par", "value")]

\$par
 0.5141272 2.4810257

\$value
 2.613923e-17

>
> originalTest <- function(x) {

a <- x
b <- x
if (all(x > 0))

```	(((a/(a+b))*(beta(a,b)/(beta(a,b)-beta(a,b+6))))-0.35259)
else Inf
```

}
>
> with(opt, originalTest(par))

 -5.112654e-09

Bill Venables
CSIRO Laboratories
PO Box 120, Cleveland, 4163
AUSTRALIA

```Office Phone (email preferred): +61 7 3826 7251
Fax (if absolutely necessary):  +61 7 3826 7304
Mobile:                         +61 4 8819 4402
Home Phone:                     +61 7 3286 7700
```
mailto:Bill.Venables_at_csiro.au
http://www.cmis.csiro.au/bill.venables/

-----Original Message-----
From: r-help-bounces_at_r-project.org [mailto:r-help-bounces_at_r-project.org] On Behalf Of francogrex
Sent: Sunday, 16 March 2008 3:24 AM
To: r-help_at_r-project.org
Subject: [R] Solving equations with optim

Hello, optim searches for min (or max) of a function, but is it possible to
solve for a specific value? I mean, I want to find the value of a and b that
give the function value closest to ZERO (and not min or max) in the below.
is it possible? thanks

test=function(x){
a=x
b=x
if (all(x>0))(((a/(a+b))*(beta(a,b)/(beta(a,b)-beta(a,b+6))))-0.35259) else Inf
}
optim(c(1,2),test)

```--
View this message in context:
http://www.nabble.com/Solving-equations-with-optim-tp16070263p16070263.h
tml
Sent from the R help mailing list archive at Nabble.com.

______________________________________________
R-help_at_r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

______________________________________________
R-help_at_r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help