isolate
Isolate variable or expression in equation
Syntax
Description
isolate(
rearranges the equation eqn
,expr
)eqn
so that the expression
expr
appears on the left side. The result is similar to
solving eqn
for expr
. If
isolate
cannot isolate expr
, it moves
all terms containing expr
to the left side. The output of
isolate
lets you eliminate expr
from
eqn
by using subs
.
Examples
Isolate Variable in Equation
Isolate x
in the equation a*x^2 +
b*x + c == 0
.
syms x a b c eqn = a*x^2 + b*x + c == 0; xSol = isolate(eqn, x)
xSol = x == -(b + (b^2 - 4*a*c)^(1/2))/(2*a)
You can use the output of isolate
to eliminate the variable
from the equation using subs
.
Eliminate x
from eqn
by substituting
lhs(xSol)
for rhs(xSol)
.
eqn2 = subs(eqn, lhs(xSol), rhs(xSol))
eqn2 = c + (b + (b^2 - 4*a*c)^(1/2))^2/(4*a) - (b*(b + (b^2 - 4*a*c)^(1/2)))/(2*a) == 0
Isolate Expression in Equation
Isolate y(t)
in the following
equation.
syms y(t) eqn = a*y(t)^2 + b*c == 0; isolate(eqn, y(t))
ans = y(t) == ((-b)^(1/2)*c^(1/2))/a^(1/2)
Isolate a*y(t)
in the same equation.
isolate(eqn, a*y(t))
ans = a*y(t) == -(b*c)/y(t)
isolate
Returns Simplest Solution
For equations with multiple solutions,
isolate
returns the simplest solution.
Demonstrate this behavior by isolating x
in sin(x) ==
0
, which has multiple solutions at 0
,
pi
, 3*pi/2
, and so on.
isolate(sin(x) == 0, x)
ans = x == 0
isolate
does not consider special cases when returning the
solution. Instead, isolate
returns a general solution that is
not guaranteed to hold for all values of the variables in the equation.
Isolate x
in the equation a*x^2/(x-a) == 1
.
The returned value of x
does not hold in the special case
a = 0
.
syms a x isolate(a*x^2/(x-a) == 1, x)
ans = x == ((-(2*a - 1)*(2*a + 1))^(1/2) + 1)/(2*a)
isolate
Follows Assumptions on Variables
isolate
returns only results that are
consistent with the assumptions on the variables in the equation.
First, assume x
is negative, and then isolate
x
in the equation x^4 == 1
.
syms x assume(x < 0) eqn = x^4 == 1; isolate(x^4 == 1, x)
ans = x == -1
Remove the assumption. isolate
chooses a different solution
to return.
assume(x, 'clear') isolate(x^4 == 1, x)
ans = x == 1
Tips
If
eqn
has no solution,isolate
errors.isolate
also ignores special cases. If the only solutions toeqn
are special cases, thenisolate
ignores those special cases and errors.The returned solution is not guaranteed to hold for all values of the variables in the solution.
expr
cannot be a mathematical constant such aspi
.
Input Arguments
Version History
Introduced in R2017a