why does Matlab not expand(abs(a-b)^2) ?

2 views (last 30 days)
Wolfram alpha shows: a^2 -2*a*b+b^2

Accepted Answer

Walter Roberson
Walter Roberson on 14 Oct 2020
>> a=complex(rand,rand)
a =
0.0975404049994095 + 0.278498218867048i
>> b=complex(rand,rand)
b =
0.546881519204984 + 0.957506835434298i
>> abs(a-b)^2
ans =
0.662960138288077
>> a^2-2*a*b+b^2
ans =
-0.259145264457063 + 0.610212976647027i
  2 Comments
Niklas Kurz
Niklas Kurz on 18 Oct 2020
Edited: Niklas Kurz on 18 Oct 2020
Hence it's incorrect for complex numbers. Alrigth. But for real numbers it should work. However
expand(abs(real(a)-real(b))^2
still doesn't expand.
Walter Roberson
Walter Roberson on 18 Oct 2020
expand(simplify(abs(real(a) -real(b) ) ^2))

Sign in to comment.

More Answers (0)

Products

Community Treasure Hunt

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

Start Hunting!