Define a variable from an equation

28 views (last 30 days)
ly
ly on 21 Nov 2016
Commented: ly on 21 Nov 2016
Hi,
I have an equation with x and y are variable and a, b and d are constant.
with x =[1:1:10];
How to define y variable?
  2 Comments
KSSV
KSSV on 21 Nov 2016
You want to solve for y?
ly
ly on 21 Nov 2016
Edited: ly on 21 Nov 2016
I want to know y based on x =[1:1:10];
Example:
x=1, y=???
x=2, y=???

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 21 Nov 2016
As I posted in your earlier question,
y1 = @(b, d, x) -b .* (exp(-(2/3) .* lambertw(-3 .* (b.^3 ./ a.^2).^(1/2) .* d.^3 ./ x.^3)) .* d.^2 - x.^2) ./ x.^2
y2 = @(b, d, x) -b .* (exp(-(2/3) .* lambertw(3 .* (b.^3 ./ a.^2).^(1/2) .* d.^3 ./ x.^3)) .* d.^2 - x.^2) ./ x.^2;
Now use y1(b, d, 1:10) and y2(b, d, 1:10)
Note: you will need the Symbolic Toolbox for lambertw, but see also https://www.mathworks.com/matlabcentral/fileexchange/43419-the-lambert-w-function
  3 Comments
Walter Roberson
Walter Roberson on 21 Nov 2016
Symbolic toolbox with x symbolic, and solve() . You can then matlabFunction() and pass the numeric x values in .
The y1 and y2 are there because there are two solutions.
ly
ly on 21 Nov 2016
syms a b d x y
Y=solve( '1/a*(b-y)^1.5-log(b/x)+0.5*log(1-y/b)=0',y);
Y
But Y is [empty sym], I use Matlab R2011b

Sign in to comment.

More Answers (1)

KSSV
KSSV on 21 Nov 2016
doc solve.
  1 Comment
ly
ly on 21 Nov 2016
Yes, but "solve" only get 1 value y from 1 value x.
My case, x is matrix adn I want y is a matrix like x.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!