Solving non-linear and linear simultaneous equations with fsolve

solvesimul.m solves non-linear and linear simultaneous equations.
Updated 27 Jan 2010

View License

solvesimul.m can be easily adapted to solve more equations but as it stands it will solve 2 unknowns in 2 equations (1 non-linear and one linear).

To solve equations of this form...

a*x + b*y = A (1)
a1*x^2 + b1*y^2 = B (2)

...with fsolve (used by solvesimul.m) you need to rewrite them so that they equal zero.

so (1) and (2) become
a*x + b*y - A = 0 (1a)
a1*x^2 + b1*y^2 - B = 0 (2a)

then using a nested function approach (there are many other ways) you can solve some system of non-linear equations.
An example,

2*x + 3*y - 8 = 0
4*x^2 + 5*y^2 - 24 = 0

At the MATLAB command-line prompt you run the 'solvesimul' m-file function with the correct arguments
i.e. coefficients and constants in the equations in the appropriate order.
NB: please see final note below demo of the solvesimul command.

>> b=solvesimul(2,3,4,5,8,24);
1.0e-014 *


>> b

b =


These are the solutions for the 2 equations i.e. x = 1, y=2.
The code I wrote for 'solvesimul' is attached. Save it to your working folder and run as above.
NB: you can use any one of the 3 fsolve formats by commenting out the other 2 you don't need in the attached m-file code.

You need to enter the args (i.e equation coefficients) to solvesimul.m in the order they appear in the equations with equation constants specified last in the correct order.

Cite As

Bruce Raine (2024). Solving non-linear and linear simultaneous equations with fsolve (, MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2009b
Compatible with any release
Platform Compatibility
Windows macOS Linux
Find more on Nonlinear Optimization in Help Center and MATLAB Answers

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes

Updated title, summary and description fields.