Borrar filtros
Borrar filtros

Solving a System of Equations with syms

1 visualización (últimos 30 días)
Kevin Bachovchin
Kevin Bachovchin el 14 de Feb. de 2013
Hello,
I have a system of 10 equations and 14 unknowns. I want to solve this system of equations for 6 particular unknowns in terms of the other unknowns.
When I use solve(Equations==0) then it successfully solves for 10 unknowns in terms of the other 4 unknowns. However, I can't control which 10 unknowns MATLAB solves for.
When I try to specify 6 of the unknowns MATLAB solves for and use solve(Equations==0,x1,x2,x3,x4,x5,x6) then I get an empty matrix as my answer.
Can someone please tell me how I can correctly specify the 6 unknowns that I want MATLAB to solve for?
Thank you, Kevin
  3 comentarios
Walter Roberson
Walter Roberson el 14 de Feb. de 2013
Perhaps the equations are not solvable with respect to those 6 variables.
Kevin Bachovchin
Kevin Bachovchin el 14 de Feb. de 2013
Editada: Walter Roberson el 14 de Feb. de 2013
Seems like I have to specify all 10 substitution variables for solving the other 4 variables, but I think that is ok for my purpose.
When I used, solve(Equations==0,x1,x2,x3,x4,x5,x6,x7,x8,x9,x10), then that successfully solves for x11,x12,x13,x14.
Do you know is there a way to specify the substitution variables as a matrix? Doing
XSubsitute = [x1,x2,x3,x4,x5,x6,x7,x8,x9,x10]
solve(Equations==0,XSubstitute)
produces an empty matrix as my answer.
I really need to be able to specify the substitution variables as the elements in the matrix to be able to apply my code for a general problem.

Iniciar sesión para comentar.

Respuesta aceptada

Walter Roberson
Walter Roberson el 14 de Feb. de 2013
Editada: Walter Roberson el 14 de Feb. de 2013
XSubstitute = {x1,x2,x3,x4,x5,x6,x7,x8,x9,x10}
solve(Equations==0,XSubstitute{:})
  6 comentarios
Walter Roberson
Walter Roberson el 14 de Feb. de 2013
You could work with struct2cell()
Kevin Bachovchin
Kevin Bachovchin el 14 de Feb. de 2013
The problem with this is that I lose the field names then. There's no way to directly extract the first N fields and values from a struct and then put in another struct? Something like answer2 = answer{1:N}?

Iniciar sesión para comentar.

Más respuestas (0)

Community Treasure Hunt

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

Start Hunting!

Translated by