MATLAB Answers

Please tell me what's wrong here with the exp (1j*theta)

Asked by Md Mahmudul Hasan on 11 May 2013

I am trying to find the theta part from an exponential value.

Suppose, i take a variable


so this will give me

z =

   0.2837 - 0.9589i 

Now i want to find that "5" from this value. So, i go with this "angle(z)" and matlab shows

ans =


Shouldn't it be 5, according to theory ??

Or if i go with the eular formula like, exp(i*theta)= cos(theta) + i*sin(theta)

so, theta= atan(0.2837/-0.9589) = -0.2877 !!

How do i get the theta=5 back, i don't know if i am missing something.



No products are associated with this question.

1 Answer

Answer by John Doe
on 11 May 2013
Edited by John Doe
on 11 May 2013
 Accepted answer

The reason is that:

5 rad = -1.2832 rad  % (-1.2832 + 2*pi = 5)

That is:

x = x + n*2*pi; % where x is an angle in radians, and n is an integer. 

Matlab will always give you values between +/- pi.

And you use Eular the wrong way around: tan = sin/cos, not cos/sin.


- Rob


John Doe
on 11 May 2013

If the answer provided is sufficient, please accept it. If not, explain what parts are not clear, and you will get additional help (from me or others). =)

Md Mahmudul Hasan on 11 May 2013

thank you, for your reply, and as you've mentioned .. that i could save this variable to use later, but i will actually send this variable as a signal of "exp(1j*x)" to the receiver and receiver will extract 5 from this. So, i can't actually save it as a variable.

anyway, what i understood is this

>> angle(exp(1j*5)) +2*pi

ans =


>> angle(exp(1j*4)) +2*pi

ans =


It works here but, when i go for 1 or 2...

>> angle(exp(1j*2)) +2*pi

ans =


>> angle(exp(1j*1)) +2*pi

ans =


shouldn't this be 1 and 2, as it worked for 4 and 5 ??

John Doe
on 11 May 2013

No. Valid angles are in the area (-pi < x < pi). Since 4 and 5 are outside this area, the angles are not 4 and 5 (but -1.283.. etc). However, 1 and 2 are within the valid area, thus the angle is equal to 1 and 2 (without adding any +/-k*2*pi).

Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi test

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

MATLAB Academy

New to MATLAB?

Learn MATLAB today!