Solving a formula in Matlab
조회 수: 1 (최근 30일)
이전 댓글 표시
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
Roger Stafford
2015년 3월 6일
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);
채택된 답변
Giorgos Papakonstantinou
2015년 3월 6일
편집: Giorgos Papakonstantinou
2015년 3월 6일
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
추가 답변 (0개)
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!