Solving system of 3 non-linear equations.
Mostra commenti meno recenti
Hello, I'm trying to solve a system of equations using matlab.
The three variables are: xo2, xo, xar
I've entered the equations in as follows:
syms xo2 xo xar
eq1 = xo2 +xo +xar = 1
eq2 = 2*xo2 +xo -4*xar = 0
eq3 = 2.063E-4*xo2 = xo^2
Then, to solve the system for the variable xo I typed:
solve('eq1', 'eq2', 'eq3', xo)
and I get this message: Warning: Explicit solution could not be found.
What am I doing wrong? I'm fairly ceratain that this system is solvable.
is it because I am using symbolic algebra? For hte problem that I am solving, I dont need a general expression for the value, I just need a number.
2 Commenti
YARA NABA
il 10 Mar 2019
Spostato: Dyuman Joshi
il 4 Apr 2024
syms x y z
eq1=exp(x)+sqrt(y)-z.^3-2
eq2=x.^2-y-z-5
eq3=x+exp(y-1)+z-7
sol=solve(eq1,eq2,eq3)
sol
how can i rewrite it
darova
il 10 Mar 2019
Spostato: Dyuman Joshi
il 4 Apr 2024
What it is wrong with it?
Risposta accettata
Più risposte (3)
Pierce Brady
il 30 Mar 2011
2 voti
the output class will be syms, so try casting the answer to a double
class(ans)
double(ans)
class(ans)
1 Commento
Tyler Tomlinson
il 12 Dic 2015
That was a huge help, thank you so much
Pier Giorgio Petrolini
il 23 Mar 2020
I hope it can be already helpfull...
syms x y z
eq1=exp(x)+sqrt(y)-z.^3-2
eq2=x.^2-y-z-5
eq3=x+exp(y-1)+z-7
eqs = [eq1, eq2, eq3]
[x,y,z]=vpasolve(eqs,[x,y,z])
% Reported results
x = -2.8;
y = 3.33;
z = -0.48;
1 Commento
Stephen Ofori
il 13 Gen 2023
This is also working, but the approximations makes it unsuitable for solutions where very small errors are required. If your work require minimal error then it is better to use the solve or fsolve.
Tushar
il 13 Feb 2011
2 Commenti
Walter Roberson
il 14 Feb 2011
Use vpa() or double() to get the number in decimal format.
Tushar
il 14 Feb 2011
Categorie
Scopri di più su Numeric Solvers in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!