MultivariateSolver
Searches numerically for isolated real solutions of a multivariate system. Each equation is interpreted as
`equation = 0`. The solver starts Newton-Raphson at every point in a Cartesian grid, approximates the Jacobian with central differences, and merges nearby converged solutions.
This is a bounded heuristic rather than a completeness proof. The number of starts is
`gridPoints`raised to the number of variables, so cost grows rapidly with dimension. Singular Jacobians, failed evaluations, and starts that do not converge are discarded. Calculations use the ambient
`decimal.js`precision, and the supplied equation and variable arrays are retained by the solver. The numerical linear solve requires a square Jacobian in ordinary use; this class is intended for isolated solutions of systems with as many equations as variables.
Members
MultivariateSolver(equations: Expression[], variables: string[], options: MultivariateSolverOptions): MultivariateSolverConstructorCreates a bounded multi-start solver.
Parameters
| Name | Type | Description |
|---|---|---|
equations | Expression[] | Expressions interpreted as equations equal to zero. |
variables | string[] | Ordered variables corresponding to solution coordinates. |
options | MultivariateSolverOptions | Grid, iteration, differentiation, and deduplication settings. |
Returns
roots(): Map<string, Expression>[]MethodSearches for roots from every configured grid point.
Returns
Map<string, Expression>[] — Deduplicated solutions as maps keyed in `variables` order. An empty array means that no start converged; it does not prove that no root exists.
