Solving a formula in Matlab
2 views (last 30 days)
Show older comments
Belal Abboushi
on 6 Mar 2015
Commented: Roger Stafford
on 6 Mar 2015
Hello everyone,
In the following formula : X= 2y + 10 log(1+ E/S)
I want the user to input X, y, and S. Is there anyway i can get matlab to give me the value of E without having to rewrite the formula?
Thank you so much!
2 Comments
Roger Stafford
on 6 Mar 2015
It seems a shame not to use such a simple inverse formula as:
E = S*(exp((X-2*y)/10)-1);
assuming your log is the natural logarithm. Otherwise:
E = S*(10^((X-2*y)/10)-1);
Accepted Answer
Giorgos Papakonstantinou
on 6 Mar 2015
Edited: Giorgos Papakonstantinou
on 6 Mar 2015
x = input('Enter the value of x: '); % request user input
y = input('Enter the value of y: ');
S = input('Enter the value of S: ');
f = @(E) 2.*y + 10*log(1+ E./S) - x; % create an anonymous function
[Eval, fval]= fsolve(f, 1); % solve your equation
or you can also:
syms E
f = 2.*y + 10*log(1+ E./S) == x;
solve(f, E)
If log refers to the base of 10 rewrite f by replacing log with log10.
0 Comments
More Answers (0)
See Also
Categories
Find more on Exponents and Logarithms in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!