image of a large network

Network & Matrix Computations

David Gleich

Purdue University

Fall 2011

Course number CS 59000-NMC

Tuesdays and Thursday, 10:30am-11:45am

CIVL 2123


Basic Notation

Let us begin by introducing basic notation for matrices and vectors.

We’ll use to denote the set of real-numbers and to denote the set of complex numbers.

We write the space of all real-valued matrices as . Each

\mA \in \RR^{m \times n} \text{ is } \bmat{ A_{1,1} & \cdots & A_{1,n} \\ \vdots & & \vdots \\ A_{m,1} & \cdots & A{m,n} } \text{ where } A_{i,j} \in \RR.

With only a few exceptions, matrices are written as bold, capital letters. Matrix elements are written as sub-scripted, unbold letters. When clear from context,

A_{i,j} \text{ is written } A_{ij}

instead, e.g. instead of .

An short-hand notation for is

\mA : n \times n.

In class I’ll usually write matrices with just upper-case letters.

We write the set of length- real-valued vectors as . Each

\vx \in \RR^{n} \text{ is } \bmat{ x_{1} \\ \vdots \\ x_{n} } \text{ where } x_i \in \RR.

Vectors are denoted by lowercase, bold letters. As with matrices, elements are sub-scripted, unbold letters. Sometimes, we’ll write vector elements as

x_i \text{ or } [x]_i \text{ or } x(i).

Usually, this choice is motivated by a particular application. Throughout the class, vectors are column vectors.

In class I’ll usually write vectors with just lower-case letters. I may try and follow the convention of underlining vectors. We’ll see.

Operations

Transpose Let , then

\mB : n \times m = \mA^T \implies B_{i,j} = A_{j,i}.

Example

Hermitian Let , then

\mB \in \CC^{n \times m} = \mA^* = \mA^{H} \implies B_{i,j} = \conj{A}_{j,i}.

Example

Addition Let and , then

\mC : m \times n = \mA + \mB \implies C_{i,j} = A_{i,j} + B_{i,j}.

Example .

Scalar Multiplication Let and , then

\mC : m \times n = \alpha \mA + \mB \implies C_{i,j} = \alpha A_{i,j}.

Example

Matrix Multiplication Let and , then

\mC : m \times k = \mA \mB \implies C_{i,j} = \sum_{r=1}^{n} A_{i,r} B_{r,j}.

Matrix-vector Multiplication Let and , then

\vc \in \RR^{m} = \mA \vx \implies c_i = \sum_{j=1}^n A_{i,j} x_j.

This operation is just a special case of matrix multiplication that follows from treating and as and matrices, respectively.

Vector addition, Scalar vector multiplication These are just special cases of matrix addition and scalar matrix multiplication where vectors are viewed as matrices.

Partitioning

It is often useful to represent a matrix as a collection of vectors. In this case, we write

\mA : m \times n = \bmat{ \va_1 & \va_2 & \cdots & \va_n }

where each . This form corresponds to a partition into columns.

Alternatively, we may wish to partition a matrix into rows.

\mA : m \times n = \bmat{ \vr_1^T \\ \vr_2^T \\ \vdots \\ \vr_m^T }.

Here, each .

Using the column partitioning:

\mA \vx = \bmat{ \va_1 & \va_2 & \cdots & \va_n } \bmat{ x_1 \\ x_2 \\ \vdots \\ x_n } = \sum_j x_j \va_j.

And with the row partitioning:

\[ \mA \vx = \bmat{ \vr_1^T \\ \vr_2^T \\ \vdots \\ \vr_m^T } \vx = \bmat{ \vr_1^T \vx \\ \vr_2^T \vx \\ \vdots \\ \vr_m^T \vx }.

Another useful partitioned representation of a matrix is into blocks:

\mA = \bmat{\mA_{1,1} & \mA_{1,2} \\ \mA_{2,1} & \mA_{2,2} }

or

\mA = \bmat{\mA_{1,1} & \mA_{1,2} & \mA_{1,3} \\ \mA_{2,1} & \mA_{2,2} & \mA_{2,3} \\ \mA_{3,1} & \mA_{3,2} & \mA_{3,3} }.

Here, the sizes “just have to work out” in the vernacular. Formally, all must have the same number of rows and all must have the same number of columns. This means the diagonal blocks are always square, but the off-diagonal blocks may not be.