Getting a shorter, more simple answer as output

42 views (last 30 days)
How can I get a shorter answer, ideally an exact answer but decimal is also fine. This is my code:
syms x y
y=(log(x)/log(4))+(log(x^2)/log(4)); dy=diff(y)
Returns the answer as:
13510798882111488/(6243314768165359*x)
I'd like a simpler answer please such as:
3/(x*log(4)) % Exact answer
or;
2.1640/x % Decimal approximation
Thanks.

Accepted Answer

Walter Roberson
Walter Roberson on 18 Apr 2025 at 0:02
syms x y
log4 = log(sym(4));
y=(log(x)/log4)+(log(x^2)/log4); dy=diff(y)
dy = 
  2 Comments
rezheen
rezheen on 30 Apr 2025 at 17:33
Hi Walter. When I run your code in Matlab (I have R2021a version), I get:
dy=2.1640/x
Which is great, but doesn't get what you get as output but that's probably because I have the older MATLAB version. Thanks for the answer.
Walter Roberson
Walter Roberson on 30 Apr 2025 at 18:55
Edited: Walter Roberson on 30 Apr 2025 at 18:55
You probably have
sympref('FloatingPointOutput', true)
ans = logical
0
in effect. You want it to be false .

Sign in to comment.

More Answers (1)

rezheen
rezheen on 17 Apr 2025 at 21:24
Moved: Matt J on 17 Apr 2025 at 22:44
I figured it out with this code:
sympref('FloatingPointOutput',true);
syms x y
y=(log(x)/log(4))+(log(x^2)/log(4)); dy=diff(y)
Output:
dy =
2.1640/x
Thanks in advance.

Tags

Products


Release

R2021a

Community Treasure Hunt

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

Start Hunting!