Convert a Complex Number to exponential real

Hi
I am looking for help to calculate value of a complex number say x = 2 +1j*5 using exponential function
Thanks you

 Akzeptierte Antwort

Robert U
Robert U am 16 Jun. 2021
Hi Jogger,
have a look at Euler's formula (https://en.wikipedia.org/wiki/Euler's_formula).
x = 2 + 1j * 5;
r = sqrt(real(x)^2 + imag(x)^2);
phi = atan2(imag(x),real(x));
fprintf(1,'z = r * exp(j*phi)\nr = %.2f\nphi = %.2f',r,phi)
z = r * exp(j*phi) r = 5.39 phi = 1.19
Kind regards,
Robert

Weitere Antworten (1)

dpb
dpb am 16 Jun. 2021

3 Stimmen

MATLAB has builtin functions abs (or hypot()) and angle() for the above explicit implementations...
>> x=complex(2,5);
>> cmplx2exp=@(x) deal(abs(x),angle(x));
>> [r,theta]=cmplx2exp(x)
r =
5.3852
theta =
1.1903
>>

3 Kommentare

Life is Wonderful
Life is Wonderful am 16 Jun. 2021
Bearbeitet: Life is Wonderful am 17 Jun. 2021
Thanks a lot Robert U and dpb
I make it little simpler
x = pi;
% complex number
(1) exp(1i*pi)
-1.0000 + 0.0000i
OR
% complex number
(1) exp(complex(0,pi))
-1.0000 + 0.0000i
% Real number
(2) exp(pi)
23.1407
% Side note, exponential is inverse of logarithm
>> log(23.1407)
ans =
3.1416 % get back the input value
I want to know how exp(1i*pi) is mapped to exp(pi) so that I know the input value is same !
OR
convert multivalue to single value . By doing , one can determine logarithm ( single value )
Thanks
Life is Wonderful
Life is Wonderful am 17 Jun. 2021
Bearbeitet: Life is Wonderful am 17 Jun. 2021
I have written a script and can someone explain the correctness
x = [-2*pi:1:2*pi];
y = exp(x);
z = log(y);
y1= exp(1i*x) ;
z1= (log(1i*y1));
fprintf('%10s\t| %10s\t|%10s\t| %15s%+15s| %15s%+15s|\n------------+---------------+-----------+---------------+---------------+---------------+---------------+\n','x(i)', 'exp(i)', 'log(i)', 'expreal(y1(i))','expimag(y1(i))','logreal(z1(i))','logimag(z1(i))');
for i = 1:length(x)
fprintf('%10f\t| %10.5f\t|%10f\t| %15f%+15f| %15f%+15f|\n',x(i), y(i), z(i), real(y1(i)),imag(y1(i)),real(z1(i)),imag(z1(i)));
end
Life is Wonderful
Life is Wonderful am 17 Jun. 2021
Bearbeitet: Life is Wonderful am 17 Jun. 2021
I ma having following output
x(i) | exp(i) | log(i) | expreal(y1(i)) expimag(y1(i))| logreal(z1(i)) logimag(z1(i))|
----------------+---------------+---------------+---------------+---------------+---------------+---------------+
-6.283185 | 0.00187 | -6.283185 | 1.000000 +0.000000| 0.000000 +1.570796|
-5.283185 | 0.00508 | -5.283185 | 0.540302 +0.841471| -0.000000 +2.570796|
-4.283185 | 0.01380 | -4.283185 | -0.416147 +0.909297| 0.000000 -2.712389|
-3.283185 | 0.03751 | -3.283185 | -0.989992 +0.141120| 0.000000 -1.712389|
-2.283185 | 0.10196 | -2.283185 | -0.653644 -0.756802| -0.000000 -0.712389|
-1.283185 | 0.27715 | -1.283185 | 0.283662 -0.958924| -0.000000 +0.287611|
-0.283185 | 0.75338 | -0.283185 | 0.960170 -0.279415| -0.000000 +1.287611|
0.716815 | 2.04790 | 0.716815 | 0.753902 +0.656987| 0.000000 +2.287611|
1.716815 | 5.56677 | 1.716815 | -0.145500 +0.989358| 0.000000 -2.995574|
2.716815 | 15.13205 | 2.716815 | -0.911130 +0.412118| -0.000000 -1.995574|
3.716815 | 41.13316 | 3.716815 | -0.839072 -0.544021| -0.000000 -0.995574|
4.716815 | 111.81153 | 4.716815 | 0.004426 -0.999990| 0.000000 +0.004426|
5.716815 | 303.93525 | 5.716815 | 0.843854 -0.536573| -0.000000 +1.004426|

Melden Sie sich an, um zu kommentieren.

Produkte

Version

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by