How to get the coefficients of an equation

4 visualizaciones (últimos 30 días)
Geovane Gomes
Geovane Gomes el 8 de Nov. de 2023
Respondida: Sulaymon Eshkabilov el 8 de Nov. de 2023
Dear all,
Is it possible to extract the coefficients of an equantion defined as below:
syms x1 x2
eq = 2*x1 + x2 <= 0
eq = 
By using coeffs and sym2poly did not work when it has the relational operator "<=".
c = coeffs(eq)
c = 
1
c = sym2poly(eq)
Error using sym/sym2poly
Not a polynomial.
  2 comentarios
Dyuman Joshi
Dyuman Joshi el 8 de Nov. de 2023
What is the expected output?
[1 2] or [2 1]? or something else?
Geovane Gomes
Geovane Gomes el 8 de Nov. de 2023
[2 1]

Iniciar sesión para comentar.

Respuesta aceptada

Dyuman Joshi
Dyuman Joshi el 8 de Nov. de 2023
How about -
syms x1 x2
eq = 2*x1 + x2 <= 0
eq = 
out = flip(coeffs(lhs(eq)))
out = 
  1 comentario
Geovane Gomes
Geovane Gomes el 8 de Nov. de 2023
Good solution!
This way I can also have the term in the right side
syms x1 x2
eq = 2*x1 + x2 <= 5
eq = 
out = flip(coeffs(rhs(eq)))
out = 
5
Thanks!

Iniciar sesión para comentar.

Más respuestas (1)

Sulaymon Eshkabilov
Sulaymon Eshkabilov el 8 de Nov. de 2023
Maybe it is appropriate to work in a reverse order, e.g.:
syms x1 x2
Coeff = [2;1];
eq = [x1, x2]*Coeff<=0
eq = 

Categorías

Más información sobre Symbolic Math Toolbox en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2023a

Community Treasure Hunt

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

Start Hunting!

Translated by