next up previous contents index
Next: Band Storage Up: Matrix Storage Schemes Previous: Conventional Storage   Contents   Index


Packed Storage

Symmetric, Hermitian or triangular matrices may be stored more compactly, if the relevant triangle (again as specified by UPLO) is packed by columns in a one-dimensional array. In LAPACK, arrays that hold matrices in packed storage, have names ending in `P'. So:

For example:

UPLO Triangular matrix A Packed storage in array AP
`U' $
\left( \begin{array}{cccc}
a_{11} & a_{12} & a_{13} & a_{14} \\
& a_{22} & a_{23} & a_{24} \\
& & a_{33} & a_{34} \\
& & & a_{44}
\end{array} \right)
$ $
a_{11} \; \underbrace{a_{12} \: a_{22}} \;
\underbrace{a_{13} \: a_{23} \: a_{33}} \;
\underbrace{a_{14} \: a_{24} \: a_{34} \: a_{44}}
$
`L' $
\left( \begin{array}{cccc}
a_{11} & & & \\
a_{21} & a_{22} & & \\
a_{31} & a_{32} & a_{33} & \\
a_{41} & a_{42} & a_{43} & a_{44}
\end{array} \right)
$ $
\underbrace{a_{11} \: a_{21} \: a_{31} \: a_{41}} \;
\underbrace{a_{22} \: a_{32} \: a_{42}} \;
\underbrace{a_{33} \: a_{43}} \; a_{44}
$

Note that for real or complex symmetric matrices, packing the upper triangle by columns is equivalent to packing the lower triangle by rows; packing the lower triangle by columns is equivalent to packing the upper triangle by rows. For complex Hermitian matrices, packing the upper triangle by columns is equivalent to packing the conjugate of the lower triangle by rows; packing the lower triangle by columns is equivalent to packing the conjugate of the upper triangle by rows.


next up previous contents index
Next: Band Storage Up: Matrix Storage Schemes Previous: Conventional Storage   Contents   Index
Susan Blackford
1999-10-01