How to get the real&imaginary mode of the symbolic complex equation

18 visualizaciones (últimos 30 días)
Hi, it seems the MATLAB(2018b) cannot express the real&imaginary&mode of the symbolic complex equation? For instance, Function=A+1j*B, and I expect "sqrt(A^2+B^2)" as the answer when I type in "abs(Function)". However, Matlab just returned "abs(Funtion)", which is not what I expected.
I found some similar quesiton on these sort of thing, this one "https://it.mathworks.com/matlabcentral/answers/386933-symbolic-complex-number-manipulation" suggets to add "real", and this one "https://it.mathworks.com/matlabcentral/answers/14945-complex-numbers-in-symbolic-toolbox " mentiones to add "simplify". I tried to add both "simplify" and “real”, but Matlab still doesn't understand. I figured that if you type in number, Matlab can easily work out, but if using symbolic, Matlab isn't that intelligent. By the way,software MathCad seems understand better in how to express symbolic complex equation.
Is this just a problem only for 2018b version? If anyone knows how to solve this kind of symbolic complex equation manipulation, that will be very helpful.

Respuesta aceptada

madhan ravi
madhan ravi el 30 de Jun. de 2020
syms A B real
Function = A+1j*B
rewrite(abs(Function),'sqrt')
  1 comentario
Ruimin Dai
Ruimin Dai el 30 de Jun. de 2020
Thank your advice. That solves my question.
I used "assume(A,'real'); assume(B,'real');" instead of "syms A B real", and I overlooked to use "rewrite (Funtion,'sqrt')" in the end. That is why I failed before.

Iniciar sesión para comentar.

Más respuestas (0)

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by