fsolve.RdSolve a system of m nonlinear equations of n variables.
fsolve(f, x0, J = NULL,
maxiter = 100, tol = .Machine$double.eps^(0.5), ...)fsolve tries to solve the components of function f
simultaneously and uses the Gauss-Newton method with numerical gradient
and Jacobian. If m = n, it uses broyden. Not applicable
for univariate root finding.
List with
location of the solution.
function value at the solution.
Antoniou, A., and W.-S. Lu (2007). Practical Optimization: Algorithms and Engineering Applications. Springer Science+Business Media, New York.
fsolve mimics the Matlab function of the same name.
if (FALSE) { # \dontrun{
# Find a matrix X such that X * X * X = [1, 2; 3, 4]
F <- function(x) {
a <- matrix(c(1, 3, 2, 4), nrow = 2, ncol = 2, byrow = TRUE)
X <- matrix(x, nrow = 2, ncol = 2, byrow = TRUE)
return(c(X %*% X %*% X - a))
}
x0 <- matrix(1, 2, 2)
X <- matrix(fsolve(F, x0)$x, 2, 2)
X
# -0.1291489 0.8602157
# 1.2903236 1.1611747
} # }