using
MatLab
By Professor
Mohamad H. Hassoun
Department of
Electrical & Computer Engineering
Wayne Satate
University
Detroit, MI
48202
October 22,
1996
Contents:
I. What
Are Complex Numbers and Why Study Them?
II. Complex
Algebra
III. Polar Form
IV. Exponential
Form
V. Trigonometric
& Hyperbolic Functions & Logarithms
I. What Are Complex Numbers and Why Study Them?
Definition
A complex number z is an ordered pair
(x, y) of real numbers x and y written as z = x + i*y [or as (0, 1)] where by
definition i = (-1)1/2 (or i2 = -1) is the imaginary
unit i = 0 + i*1.0). x is called the real part of z and y is called the
imaginary part of z. In circuit theory, j is used to replace i in order not to
confuse the imaginary unit with the symbol for electric current. i (and j) are
already defined for you in MatLab:
0 + 1.0000i
0 + 1.0000i
0 + 1.0000i
-1.0000 + 0.0000i
The
real and imaginary parts of a complex number are evaluated as follows:
-2.5000 + 3.0000i
-2.5000
3
Where do Complex Numbers Come From
Complex numbers arise from solving for the roots of
polynomial equations (polynomials appear in the solution of linear differential
equations and in solving for the eigenvalues of a matrix). First to use complex
numbers was the Italian mathemetician Girolamo Cardano (1501-1576). The term
"complex number" was introduced by the German mathematician Carl F.
Gauss.
Examples
#1: Solve for the roots of the
equation x2 -10x + 40 =0:
[5+i*15^(1/2)]
[5-i*15^(1/2)]
numeric(ans) % give numerical answer
5.0000 + 3.8730i
5.0000 - 3.8730i
Example
# 2: Find the eigenvalues of matrix A, where A is given by
A = [.5,.5,1,-1;1,-1,-1,-1;-1,-.25,1,1;1,-1,-8,1]
0.5000 0.5000
1.0000 -1.0000
1.0000 -1.0000
-1.0000 -1.0000
-1.0000 -0.2500
1.0000 1.0000
1.0000 -1.0000 -8.0000 1.0000
The
eigenvalues are
1.4307 + 3.0894i
1.4307 - 3.0894i
-1.3205
-0.0408
of which two are complex numbers.
NOTE: In
fact these eigenvalues are the roots of the fourth degree characteristic
polynomial of A, namely |xI - A| = 0, as seen below:
B =
sym('[x,0,0,0;0,x,0,0;0,0,x,0;0,0,0,x]')
[x,0,0,0]
[0,x,0,0]
[0,0,x,0]
[0,0,0,x]
x^4-3/2*x^3+31/4*x^2+125/8*x+5/8
4
3 2
x -
3/2 x + 31/4 x + 125/8 x + 5/8
Verification
(solving for the roots of p = 0):
1.4307 + 3.0894i
1.4307 - 3.0894i
-0.0408
-1.3205
It is an interesting fact that if a polynomial with
real valued coefficients has a complex root z1 = a + ib, then it must also
have z2
= a - ib as its root. z2 is called the complex conjugate of z1. The conj comman computes the
conjugate of a complex number
1.0000 - 5.0000i
1.0000 + 5.0000i
II. Complex Algebra
The following are examples of addition, subtraction,
multiplication and division of complex numbers. We illustrate these operations
with the two complex numbers 4 -5i and 2 + 3i.
4.0000 - 5.0000i
z2 =
2.0000 + 3.0000i
3*z2 % multiplication by a real number c: c*(a1 + ib1) = (c*a1) + i(c*b1)
6.0000 + 9.0000i
z1+z2 % addition: (a1 + ib1) + (a2 + ib2) = (a1+a2) + i(b1+b2)
6.0000 - 2.0000i
z1-z2 % addition: (a1 + ib1) - (a2 + ib2) = (a1-a2) + i(b1-b2)
2.0000 - 8.0000i
0 -33.0000i
z1*z2 % multiplication: (a1 + ib1)(a2 + ib2) = (a1a2 - b1b2) + i(a1b2 + b1a2)
23.0000 + 2.0000i
z1*conj(z1) % multiplication by the conjugate: (a1 + ib1)(a1 - ib1) = (a1a1 + b1b1)
41
z1/z2 % division: (a1 + ib1)/(a2 + ib2) = [(a1a2 + b1b2) +i(a1b2 + b1a2)]/(a2a2 + b2b2)
-0.5385 - 1.6923i
8
-9.0000 -40.0000i
2.2807 - 1.0962i
-1.0000 + 0.0000i
0.0000 - 1.0000i
1.0000 - 0.0000i
0.0000 + 1.0000i
III. Polar Form
The manipulation of complex algebriac expressions
may be made easier by employing polar representation of complex numbers. The polar form of a complex number is
obtained by viewing a complex number z as a vector (with magnitude r and angle q) in the complex plane: a
plane where the x-axis represents the real part of z and the y axis represents
the imaginary part of z. Then, one may use the polar-to-rectangular
transformation: x = r cos q and y = r sin q. Hence, we may now write z = x + iy = r(cos q + i sin q). The inverse
transformation from rectangular to polar form is given by: r = (x2 + y2)-1/2 and q =arc tan(y/x), where q is
measured in radians and positive in the counterclockwise sense. MatLab has two
convenient commants for computing the magnitude (abs) and angle (angle) of a complex number.
4.0000 - 5.0000i
6.4031
ans =
-0.8961
This is the explicit way of computing the angle of z1
-0.8961
which we can express in degrees as
-51.3402
Therefore,
z1 = 4 - i5 may be represented in the complex plane as a vector originating at
the origion and extending 6.4031 units
in a dirstion making an angle of 51.3402 degrees w.r.t. the x-axis in the
clockwise direction (because of the negative sign!).
IV. Exponential Form
The exponential form of a complex number is a
convenient way of expressing a complex number which renders it amenable to
analytic manipulation. In the following, we utilize MatLab's symbolic
manipulation features to show that a complex number z with magnitude r and
angle q may be expressed as the product of r and the exponential term eiq; i.e., z = reiq
The idea here is to show that z = r(cos q + i sin q) = reiq, or eiq = cos q + i sin q. This last expression is
known as Euler's (pronounced Oiler's) formula. Let us express eiq as a power series using Taylor's series expansion
at zero:
taylor('exp(i*x)') % we use x in place
of q
1+i*x-1/2*x^2+(-1/6*i)*x^3+1/24*x^4+(1/120*i)*x^5+O(x^6)
2 3 4 5 6
1 + i x - 1/2
x - 1/6 i x + 1/24 x + 1/120 i x + O(x )
The above expansion may be rearranged as: [1 -1/2 x2 + 1/24 x4 + O(x6)] + i [x - 1/6 x3 + 1/120 x5 + O(x7)] which is equal to cos(x) + i sin(x) since the power series representations for cos(x) and sin(x) are, respectively,
2 4 6
1
- 1/2 x + 1/24 x + O(x )
and
3 5 6
x -
1/6 x + 1/120 x + O(x )
This completes the proof that eiq = cos q + i sin q, and therefore r(cos q + i sin q) = reiq.
Multiplication
& Division in Polar/Exponential Form
The exponential form allows us to derive simple
expressions for computing the magnitude and angle of the product or ratio of
two complex numbers given in polar form. Given z1 = r1eiq1 and z2 = r2eiq2, then z1z2 = r1r2 r1ei(q1 + q2) =
r1r2[cos (q1 + q2) + i sin (q1+ q2)] (and z1/z2 =
(r1/r2) ei(q1
- q2) = (r1/r2)[cos (q1 -
q2) + i sin (q1-
q2)]. One can also easily show that zn = (reiq)n = rn ei n = rn
[cos nq + i sin nq]. Here are some examples:
exp(i*pi) % should give us cos(p) + i sin(p) = -1
-1.0000 + 0.0000i
1.0000 - 0.0000i
0.0000 + 1.0000i
1.4142 + 1.4142i
compare to
1.4142 + 1.4142i
We can retain the symbolic (exponential) representation of z1 by using the command
2*exp(i*pi/4)
-exp(i*pi/3)
numeric(z1z2) % symbolic
multiplication
0.5176 - 1.9319i
2.0000
-1.3090
Verification:
z1*z2 = (2)*(-1)*exp[i(p/4-p/3)] = -2*exp(i7p/12) = 2*exp(ip)*exp(i7p/12) = 2*exp(i19p/12) = 2*exp[i(2p - 5p/12)] = 2*exp(i2p)*exp[i(-5p/12)] = 2*exp[i(-1.3090p), which represents the complex number with magnitude 2 and angle
-1.3090 radians (note that we have used the fact that exp(i2p) = 1).
Roots
The nth root (n =1, 2, 3, ... ) of a
complex number z1/n = (reiq)1/n has precisely n
solutions. The formula for obtaining such roots is given by r1/n {cos [(q + 2kp)/n] + i sin [(q + 2kp)/n]}, for k = 0, 1, 2, ..., n-1. Let us
compute the 4th root of unity (should get 1, i, -1, -I):
r=1; % magnitude of z
a=0; % angle of z
n=4;
for k=0:n-1
r^(1/n)*(cos((a+2*k*pi)/n) + i*sin((a+2*k*pi)/n))
end
1
ans =
0.0000 + 1.0000i
ans =
-1.0000 + 0.0000i
ans =
0.0000 - 1.0000i
Roots of a complex coefficient polynomial
The
solve command which solves for the roots of a
symbolic polynomial also work for situations where some or all of the
polynomial coefficients are complex valued. Here is an example:
z_roots = solve('z^2 - (5+i)*z + 8 + i = 0')
[5/2+1/2*i+1/2*2^(1/2)*(-4+3*i)^(1/2)]
[5/2+1/2*i-1/2*2^(1/2)*(-4+3*i)^(1/2)]
3.0000 + 2.0000i
2.0000 - 1.0000i
Answer verification:
expand('(x-(3+2*i))*(x-(2-i))')
x^2-5*x-i*x+8+i
V. Trigonometric Functions, Hyperbolic Functions
Euler's formula can be used to extend trigonometric
functions for the case of complex arguments. By addition and subtraction of the
two equations exp(ix) = cos x + i sin x and exp(-ix) = cos x - i sin x we
obtain for the real cos and sin:
cos
x = (1/2)[exp(ix) + exp(-ix)] and sin x = (1/2i)[exp(ix) - exp(-ix)]
This
may be generalized to complex values z = x + iy:
cos
z = (1/2)[exp(iz) + exp(-iz)] and sin z = (1/2i)[exp(iz) - exp(-iz)]
MatLab
allows complex arguments for its sin & cos functions:
-4.1896 - 9.1092i
9.1545 - 4.1689i
0 + 1.1752i
MatLab also allows complex arguments for other built-in functions:
-3.7245 - 0.5118i
1.9596 + 3.1658i
log(1*exp(i*pi/2)) % ln(r*exp(iq)) = ln(r) + ln(exp(iq)) = ln(r) + iq
0 + 1.5708i
0 + 1.5708i
0.3466 + 0.7854i
0 + 3.1416i