fsolve — Solve scalar or vector nonlinear equation systems using finite-difference Levenberg-Marquardt iterations.
x = fsolve(fun, x0) solves fun(x) = 0 starting from x0. Scalar guesses return scalars; vector and matrix guesses return a result with the same shape as x0.
How fsolve works
- The function handle must return a finite real scalar or vector.
- Jacobians are estimated with forward finite differences.
- The step is chosen with a Levenberg-Marquardt damping parameter and accepted only when it reduces the residual norm.
- Options are supplied as a struct, usually created with
optimset.TolX,TolFun,MaxIter,MaxFunEvals, andDisplayare accepted.
Examples
Solve a two-variable nonlinear system
F = @(x) [x(1)^2 + x(2)^2 - 4; x(1)*x(2) - 1];
x = fsolve(F, [1; 1])Expected output:
x =
1.9319
0.5176Solve a scalar equation
x = fsolve(@sin, 3)Expected output:
x =
3.1416Related Math functions
Elementwise
abs · angle · conj · double · exp · expm1 · factorial · gamma · hypot · imag · ldivide · log · log10 · log1p · log2 · minus · nextpow2 · plus · pow2 · power · rdivide · real · sign · single · sqrt · times
Trigonometry
acos · acosh · asin · asinh · atan · atan2 · atanh · cos · cosh · sin · sinh · tan · tanh
Reduction
all · any · cummax · cummin · cumprod · cumsum · cumtrapz · diff · gradient · max · mean · median · min · nnz · prod · std · sum · trapz · var
Structure
Open-source implementation
Unlike proprietary runtimes, every RunMat function is open-source. Read exactly how fsolve works, line by line, in Rust.
- View fsolve.rs on GitHub
- Learn how the runtime works
- Found a bug? Open an issue with a minimal reproduction.
About RunMat
RunMat is an open-source runtime that executes MATLAB-syntax code — faster, on any GPU, with no license required.
- Simulations that took hours now take minutes. RunMat automatically optimizes your math for GPU execution on Apple, Nvidia, and AMD hardware. No code changes needed.
- Start running code in seconds. Open the browser sandbox or download a single binary. No license server, no IT ticket, no setup.
- A full development environment. GPU-accelerated 2D and 3D plotting, automatic versioning on every save, and a browser IDE you can share with a link.