<img src="https://d5nxst8fruw4z.cloudfront.net/atrk.gif?account=iA1Pi1a8Dy00ym" style="display:none" height="1" width="1" alt="" />

# 3.4: Basic Complex and Matrix Operations

Difficulty Level: At Grade Created by: CK-12

## Complex numbers

m-file environments have excellent support for complex numbers. The imaginary unit is denoted by

i


or

(as preferred in Electrical Engineering)

j


.

To create complex variables \begin{align*}z_1 = 7 + j\end{align*} and \begin{align*}z_2 = 2e^{j\pi}\end{align*} simply enter

z1 = 7 + j


and

z2 = 2*exp(j*pi)


Table 2 gives an overview of the basic functions for manipulating complex numbers, where \begin{align*}z\end{align*} is a complex number.

Manipulating complex numbers.
m-file
\begin{align*}Re(z)\end{align*}
real(z)

\begin{align*}Im(z)\end{align*}
imag(z)

\begin{align*}mag(z)\end{align*}
abs(z)

\begin{align*}\angle(z)\end{align*}
angle(z)

\begin{align*}z^*\end{align*}
conj(z)


## Operations on Matrices

In addition to scalars, m-file environments can operate on matrices. Some common matrix operations are shown in Table 3; in this table,

M


and

N


are matrices.

Common matrix operations.
Operation m-file
\begin{align*}M N\end{align*}
M*N

\begin{align*}M^{-1}\end{align*}
inv(M)

\begin{align*}M^T\end{align*}
M'

\begin{align*}det(M)\end{align*}
det(M)


Some useful facts:

• The functions
length


and

size


are used to find the dimensions of vectors and matrices, respectively.

• Operations can also be performed on each element of a vector or matrix by proceeding the operator by ".", e.g
.*


,

.^


and

./


.

Example 4

Let \begin{align*}A = \begin{pmatrix}1 & 1\\ 1 & 1\end{pmatrix}\end{align*}. Then

A^2


will return \begin{align*}AA = \begin{pmatrix}2 & 2\\ 2 & 2\end{pmatrix}\end{align*}, while

A.^2


will return \begin{align*}\begin{pmatrix}1^2 & 1^2\\ 1^2 & 1^2\end{pmatrix} = \begin{pmatrix}1 & 1\\ 1 & 1\end{pmatrix}\end{align*}.

Example 5

Given a vector

x


,

compute a vector

y


having elements \begin{align*}y (n) = \tfrac{1}{sin(x(n))}\end{align*}. This can be easily be done with the command

y=1./sin(x)


Note that using

/


in place of

./


would result in the (common) error "Matrix dimensions must agree".

### Notes/Highlights Having trouble? Report an issue.

Color Highlighted Text Notes

Show Hide Details
Description
Tags:
Subjects: