https://github.com/cran/nleqslv
Tip revision: d276190ffe7652b3175842dd6535df0ae35225e2 authored by Berend Hasselman on 02 March 2011, 11:33:56 UTC
version 1.8.2
version 1.8.2
Tip revision: d276190
dslnexscaled.R
# Dennis Schnabel example
library("nleqslv")
dslnex <- function(x) {
y <- numeric(2)
y[1] <- x[1]^2 + x[2]^2 - 2
y[2] <- exp(x[1]-1) + x[2]^3 - 2
y
}
jacdsln <- function(x) {
n <- length(x)
Df <- matrix(numeric(n*n),n,n)
Df[1,1] <- 2*x[1]
Df[1,2] <- 2*x[2]
Df[2,1] <- exp(x[1]-1)
Df[2,2] <- 3*x[2]^2
Df
}
xstart <- c(2,0.5)
fstart <- dslnex(xstart)
xstart
fstart
# a solution is c(1,1)
znleqa <- nleqslv(xstart, dslnex, global="qline",control=list(trace=1,btol=.01,scalex=c(2,3)))
znleqa
znleqb <- nleqslv(xstart, dslnex, global="gline",control=list(trace=1,btol=.01,scalex=c(2,3)))
znleqb
znleqc <- nleqslv(xstart, dslnex, global="dbldog",
control=list(trace=1,btol=.01,delta=-1.0,scalex=c(2,3)))
znleqc
znleqd <- nleqslv(xstart, dslnex, global="pwldog",
control=list(trace=1,btol=.01,delta=-1.0,scalex=c(2,3)))
znleqd
znleqe <- nleqslv(xstart, dslnex, global="dbldog",
control=list(trace=1,btol=.01,delta=-2.0,scalex=c(2,3)))
znleqe
znleqf <- nleqslv(xstart, dslnex, global="pwldog",
control=list(trace=1,btol=.01,delta=-2.0,scalex=c(2,3)))
znleqf
znlejc <- nleqslv(xstart, dslnex, jacdsln, global="dbldog",
control=list(trace=1,btol=.01,delta=-1.0,scalex=c(2,3)))
znlejc
znlejd <- nleqslv(xstart, dslnex, jacdsln, global="dbldog",
method="Newton", control=list(trace=1,btol=.01,delta=-1.0,scalex=c(2,3)))
znlejd