how to use the output of 'solve' in another equation

3 visualizzazioni (ultimi 30 giorni)
Hi everyone I used 'solve' function to solve an equation and got a variable 'v' then I converted it to double. The problem is when I wrote two equations with two variables x and y which contain v as a constant, I did not get the values of x and y but instead a symbolic expression in v. How can I make the program substitute with the value of v I already got from the first step. v=double(solve('3*v/5+v+8')); S=solve('x+y=1','x-11*y=-v'); yield a solution in v S.x=11/12-1/12*v S.y=1/12*v+1/12
  1 Commento
Walter Roberson
Walter Roberson il 5 Dic 2011
http://www.mathworks.com/matlabcentral/answers/13205-tutorial-how-to-format-your-question-with-markup

Accedi per commentare.

Risposta accettata

Walter Roberson
Walter Roberson il 5 Dic 2011
Sx = double(subs(S.x, 'v', v));
Sy = double(subs(S.y, 'v', v));
However, it would be shorter if you used
syms x y
[Sx Sy] = double( solve('3*v/5+v+8', 'x+y=1','x-11*y=-v', x, y) );
  2 Commenti
omnia
omnia il 5 Dic 2011
when I did 'S.x' in my program I had very long expression (after using simplify)in the form of numerator and denominator as a function of v -although it can be written in much simpler form. when i did 'subs(S.x, 'v', v)' i have NAN.
How can I make the program write it in a simpler way (using 1.2*10^34 for example instead of writing at as 33 number)??

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Symbolic Math Toolbox in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by