Systems of Nonlinear Equations
Find a solution to a multivariable nonlinear equation F(x) = 0. You can also solve a scalar equation or linear system of equations, or a system represented by F(x) = G(x) in the problem-based approach (equivalent to F(x) – G(x) = 0 in the solver-based approach). For nonlinear systems, solvers convert the equation-solving problem to the optimization problem of minimizing the sum of squares of the components of F, namely min(∑Fi2(x)). Linear and scalar equations have different solution algorithms; see Equation Solving Algorithms.
Before you begin to solve an optimization problem, you must choose the appropriate approach: problem-based or solver-based. For details, see First Choose Problem-Based or Solver-Based Approach.
For the problem-based approach, create problem variables, and then
represent the equations in terms of these variables. For the problem-based
steps to take, see Problem-Based Workflow for Solving Equations. To
solve the resulting problem, use
For the solver-based steps to take, including defining the objective function and choosing the appropriate solver, see Solver-Based Optimization Problem Setup.
Solve and Analyze, Problem-Based
|Create equation problem|
|Evaluate optimization expression|
|Constraint violation at a point|
|Create empty optimization equality array|
|Create optimization variables|
|Convert optimization problem or equation problem to solver form|
|Display information about optimization object|
|Solve optimization problem or equation problem|
|Save optimization object description|
Live Editor Tasks
|Optimize||Optimize or solve equations in the Live Editor|
Problem-Based Systems of Nonlinear Equations
- Solve Nonlinear System of Equations, Problem-Based
Solve a system of nonlinear equations using the problem-based approach.
- Solve Nonlinear System of Polynomials, Problem-Based
Solve a polynomial system of equations using the problem-based approach.
- Follow Equation Solution as a Parameter Changes
Solve a sequence of problems using the previous solution as a start point.
- Nonlinear System of Equations with Constraints, Problem-Based
Solve a system of nonlinear equations with constraints using the problem-based approach.
Solver-Based Systems of Nonlinear Equations
- Solve Nonlinear System Without and Including Jacobian
Use derivatives in nonlinear equation solving.
- Large System of Nonlinear Equations with Jacobian Sparsity Pattern
Solve a nonlinear system of equations with a known finite-difference sparsity pattern.
- Large Sparse System of Nonlinear Equations with Jacobian
Example of solving a nonlinear system of equations that has derivatives available.
- Nonlinear Systems with Constraints
Learn techniques for solving nonlinear systems of equations with constraints.
- Code Generation in Nonlinear Equation Solving: Background
Prerequisites to generate C code for systems of nonlinear equations.
- Generate Code for fsolve
Example of code generation for solving systems of nonlinear equations.
- Optimization Code Generation for Real-Time Applications
Explore techniques for handling real-time requirements in generated code.
- What Is Parallel Computing in Optimization Toolbox?
Use multiple processors for optimization.
- Using Parallel Computing in Optimization Toolbox
Perform gradient estimation in parallel.
- Improving Performance with Parallel Computing
Investigate factors for speeding optimizations.