MATLAB: Converting magnitude (dB) and phase (deg) to complex value

complexmagniture

Let's assume I have magnitude value in dB and phase in degrees. How to change those to a complex number in Matlab?

Best Answer

Try this:
complexVector = [10.^(mag_dB/20) .* exp(1j*deg2rad(phase_degrees))]
or as an anonymous function:
complexVector = @(mag_dB,phase_degrees) [10.^(mag_dB/20) .* exp(1j*deg2rad(phase_degrees))]
Out = complexVector(mag_dB,phase_degrees)
also demonstrating how to call it.
EDIT — (19 Feb 2021 at 23:06)
Corrected typographical error.