You are on page 1of 2

2

Storage Schemes for


the Coefficient Stiffness Matrix

2.1 Introduction

For many important engineering and science applications [2.1, 2.2], the coefficient
matrix [A] involved in the system of linear simultaneous equations
[A] {X} = {b} (2.1)
is usually symmetrical, positive-definite and sparse. In structural engineering
applications [A], {X} and {b} represent stiffness matrix, nodal displacement vector and
nodal load vector, respectively.
Consider, for example, a 9 x 9 (stiffness) matrix [A] of the type:

~ AI2 0 AI4 0 0 0 0 0
AI2 ~ A 23 0 0 0 0 0 0
0 A 23 ~ A34 0 A36 0 0 0
AI4 0 A34 A II A4S A46 0 0 0
[A]= 0 0 0 A4S IT;J AS6 0 Ass 0 (2.2)
0 0 A36 A46 AS6 ~ A67 0 A69
0 0 0 0 0 A67 ~ A7S 0
0 0 0 0 Ass 0 A78 [&] AS9
0 0 0 0 0 A69 0 AS9 ~

There are several different storage schemes that can be used for the matrix
expressed in Eq. (2.2). Different storage schemes will lead to different storage
requirements. Furthermore, as will be explained in subsequent chapters, the choice for
the appropriate storage scheme will be influenced (or dictated) by the equation solution
strategies to be employed for solving the unknown vector {X} from Eq. (2.1).
Since effective equation solution algorithms are heavily influenced by the storage
scheme used to store the coefficient matrix [A] (shown in eqs. 2.1-2.2), the objective
of this chapter is to describe some common storage schemes used in many practical
engineering and science applications.

l3

D. T. Nguyen, Parallel-Vector Equation Solvers for Finite Element Engineering Applications


© Kluwer Academic / Plenum Publishers, New York 2002
14 Parallel-Vector Equation Solvers for Finite Element Engineering Applications

2.2 Full Matrix

This is the simplest way to store matrix [A] ofEq. (2.2). The entire matrix is stored,
thus 81 (=9x9) words of memory is required to store matrix [A].

2.3 Symmetrical Matrix

In this storage scheme, only the upper triangular portion (including diagonal terms) of
matrix [A] needs to be stored (due to the symmetrical property of [AD. Thus, this
storage scheme only requires 45 (=9xlO/2) words of memories.

2.4 Banded Matrix

By observation, the maximum bandwidth (the maximum "distance" between the


diagonal term and the last non-zero term in each row) of the matrix [A] is 4 (including
the diagonal term). Furthermore, taking the advantage of symmetry, matrix [A] can be
stored as
All Al2 0 A'4
A22 A 23 0 0
A33 A34 0 A36
A44 A45 A46 0
[A] = A55 A56 0 A5S (2.3)
A66 A67 0 A69
A77 A78 0 0
Ass AS9 0 0
A99 0 0 0

It should be noted here that the diagonal terms of matrix [A] in Eq. (2.2) are shifted to
become the first column of the rectangular matrix [A] in Eq. (2.3). This banded storage
scheme requires 36 (9x4) words of memory.

2.5 Variable Banded Matrix [2.3]

In this storage scheme, the matrix [A] shown in Eq. (2.2) is stored as a I-dimensional
array according to the following row-by-row fashion

A~ IAu lAo: 10 lAO' IA" lAo> lolA" IA" 10 IA~ lAW IA" IA~ IA" IA" I

10 IA" I~ lA., 1° lAm IA" IA" 1° IA" IA" I~ I


The above I-dimensional (row-by-row) array corresponds to the following 2-
dimensional array (or matrix) representation:

You might also like