User Rating 0.0
Total Usage 0 times
Angle Unit
Presets:
Is this tool helpful?

Your feedback helps us improve.

About

Errors in complex number conversion cascade through every downstream calculation in circuit analysis, signal processing, and quantum mechanics. A sign error on the imaginary component of an impedance value, for instance, flips a capacitive load to inductive and invalidates an entire filter design. This calculator converts complex numbers expressed in polar form (rθ), exponential form (re), or trigonometric form (r[cosθ + isinθ]) into standard rectangular form a + bi. It handles both degree and radian inputs and applies IEEE 754 floating-point arithmetic with configurable decimal precision up to 15 digits.

Limitation: results near special angles (e.g., cos(90°) producing 6.12e-17 instead of 0) are automatically snapped to zero when the magnitude falls below 1e-12. This threshold covers all standard engineering and physics use cases but may not suit arbitrary-precision number theory work. Negative modulus values are supported: the calculator adds π to the argument and uses |r| per standard convention.

complex numbers rectangular form polar to rectangular exponential form imaginary numbers trigonometric form complex number converter

Formulas

The conversion from polar to rectangular form relies on Euler's formula and standard trigonometric decomposition.

z = r cos(θ) + i r sin(θ)

Equivalently, from exponential notation:

re = r(cosθ + isinθ)

The real part a and imaginary part b are extracted as:

a = r cos(θ)
b = r sin(θ)

Degree-to-radian conversion when the angle is supplied in degrees:

θrad = θdeg π180

Where: r = modulus (magnitude) of the complex number. θ = argument (angle) of the complex number. a = real component. b = imaginary component. i = imaginary unit where i2 = −1.

For negative modulus r < 0, the calculator normalizes via:

rnorm = |r|, θnorm = θ + π

Reference Data

Angle (θ)DegreesRadianscos(θ)sin(θ)Rectangular (r = 1)
00°0101 + 0i
π/630°0.52360.86600.50.8660 + 0.5i
π/445°0.78540.70710.70710.7071 + 0.7071i
π/360°1.04720.50.86600.5 + 0.8660i
π/290°1.5708010 + 1i
2π/3120°2.0944−0.50.8660−0.5 + 0.8660i
3π/4135°2.3562−0.70710.7071−0.7071 + 0.7071i
5π/6150°2.6180−0.86600.5−0.8660 + 0.5i
π180°3.1416−10−1 + 0i
7π/6210°3.6652−0.8660−0.5−0.8660 0.5i
5π/4225°3.9270−0.7071−0.7071−0.7071 0.7071i
4π/3240°4.1888−0.5−0.8660−0.5 0.8660i
3π/2270°4.71240−10 1i
5π/3300°5.23600.5−0.86600.5 0.8660i
7π/4315°5.49780.7071−0.70710.7071 0.7071i
11π/6330°5.75960.8660−0.50.8660 0.5i
2π360°6.2832101 + 0i

Frequently Asked Questions

IEEE 754 double-precision arithmetic produces residual values such as cos(90°) ≈ 6.12×10⁻¹⁷ instead of exact zero. The calculator applies a snap-to-zero threshold: any component with absolute value below 1×10⁻¹² is forced to 0. This covers all 16 standard unit-circle angles and their integer multiples without affecting legitimate small values in typical engineering ranges.
A negative modulus r < 0 is mathematically valid but non-standard. The calculator normalizes it by taking the absolute value |r| and adding π (180°) to the argument θ. This produces the same point on the complex plane. For example, −5∠30° becomes 5∠210°, yielding a = 5·cos(210°) ≈ −4.3301 and b = 5·sin(210°) = −2.5.
JavaScript uses 64-bit IEEE 754 floating-point numbers, which provide approximately 15-17 significant decimal digits. Beyond ~15 digits, rounding artifacts appear. The calculator caps precision at 15 decimal places. For most engineering applications (circuit analysis, control systems, structural dynamics), 6-8 decimal places exceed required tolerance. Set precision to match your domain's significant figures.
Yes. The algebraic input mode accepts strings in the forms a+bi, a−bi, bi, −bi, or just a. The parser uses regex to extract signed real and imaginary coefficients. Whitespace is ignored. Inputs like "−2.5−3.7i", "4i", "−i", and "6" are all valid. The letter "j" is also accepted for electrical engineering notation.
The trigonometric functions cos(θ) and sin(θ) are periodic with period 2π. The calculator feeds the raw angle directly to Math.cos() and Math.sin(), which handle any real number correctly. An input of 750° produces the same rectangular result as 30° because cos(750°) = cos(30°) and sin(750°) = sin(30°). No manual modular reduction is applied, preserving numerical accuracy.
The exponential input expects two numeric fields: modulus r and argument θ. You do not type "re^(iθ)" as a string. The calculator applies Euler's formula internally. This avoids parsing ambiguity and ensures the angle unit toggle (degrees vs. radians) is respected correctly.