Rearrange Variables in an equation
137 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Mech Princess
am 20 Jul. 2012
Kommentiert: Star Strider
am 29 Jan. 2023
I declare the variables using sym or syms then i have an equation a+2*b=1; I want MATLAB to give me a=1-2*b; or alternatively b=(1-a)/2;
is there a way to do this?
Also, There maybe more than 2 variables Equation maybe linear or non-linear Equation can change at each iteration. Thanks
0 Kommentare
Akzeptierte Antwort
Star Strider
am 20 Jul. 2012
Bearbeitet: Star Strider
am 20 Jul. 2012
This is one way:
syms a b
eqn = (a + 2*b == 1)
v_a = solve(eqn, a)
v_b = solve(eqn, b)
producing this output:
v_a =
1 - 2*b
v_b =
1/2 - a/2
I suggest you avoid expressions such as:
[a b] = solve(eqn, a, b)
even though it is valid syntax, because instead of solving the equation for ‘a’ and then solving it independently for ‘b’, it solves it for ‘a’ first and then solves the resulting equation for ‘b’ in terms of an introduced variable ‘z’. That produces a multi-line warning in red (that I will not reproduce here), and the results:
a =
1 - 2*z
b =
z
that does not make sense to me. I consider this to be a bug, and I would prefer it to be an option rather than the default, but that is not my decision.
3 Kommentare
Star Strider
am 20 Jul. 2012
This:
data = [-1 0 1;-1 +1 -1]';
alpha = sym('alpha',[1 3]);
advct = alpha * data(:,2)
v_2 = solve(advct == 0, alpha(1))
gives me these:
advct =
alpha2 - alpha1 - alpha3
v_2 =
alpha2 - alpha3
Is that the result you were hoping for?
Weitere Antworten (2)
Nitesh khanna
am 1 Aug. 2020
how to replace the variables a, b, c, d by variables w, x, y, z for; in eqn
eqn=a+b+c+d==9;
will this command work
eqn=subs(eqn, [a,b,c,d],[w,x,y,z])
0 Kommentare
Bill Tubbs
am 29 Jan. 2023
>> syms a b
>> eqn1 = b == (1 - a) / 2;
>> isolate(eqn1, a)
ans =
a == 1 - 2*b
>> isolate(eqn1, b)
ans =
b == 0.5000 - 0.5000*a
2 Kommentare
Star Strider
am 29 Jan. 2023
Definitely!
I’ve used isolate extensively in my Answers since it was introduced, when its use was appropriate.
Siehe auch
Kategorien
Mehr zu Formula Manipulation and Simplification finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!