Euler's identity with angle in degrees

15 次查看(过去 30 天)
How can I get MATLAB to accept a in degress in exp(aj) to return a complex number where j^2=-1? By default the software takes a in radians.

采纳的回答

Torsten
Torsten 2023-6-30
编辑:Torsten 2023-6-30
a = 30;
exp(deg2rad(a)*1i)
ans = 0.8660 + 0.5000i
exp(a*pi/180*1i)
ans = 0.8660 + 0.5000i

更多回答(2 个)

Joe Vinciguerra
Joe Vinciguerra 2023-6-30
编辑:Joe Vinciguerra 2023-6-30
[EDIT: oops. converted in the wrong direction.]
deg2rad will convert degrees to radians (https://www.mathworks.com/help/matlab/ref/deg2rad.html).
So you'll do something like this:
j = sqrt(-1);
a = 180;
exp(deg2rad(a)*j)
ans = -1.0000 + 0.0000i

Paul
Paul 2023-6-30
If the input is given in degrees, consider writing your own function using cosd and sind for accurate results at the 90 deg intervals
e = @(x) cosd(x) + 1i*sind(x);
d = [90 180 270];
format long e
e(d)
ans =
0.000000000000000e+00 + 1.000000000000000e+00i -1.000000000000000e+00 + 0.000000000000000e+00i 0.000000000000000e+00 - 1.000000000000000e+00i
exp(d*pi/180*1i)
ans =
6.123233995736766e-17 + 1.000000000000000e+00i -1.000000000000000e+00 + 1.224646799147353e-16i -1.836970198721030e-16 - 1.000000000000000e+00i

产品


版本

R2014a

Community Treasure Hunt

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

Start Hunting!

Translated by