next up previous contents
Next: E.3 Compressed Sparse Row Up: E. Matrix Storage Formats Previous: E.1 Modified Compressed Sparse

E.2 Compressed Sparse Row - Variant 1

As already mentioned above, PARDISO requires the system matrix stored in a format called CSR, Compressed Sparse Row. Since there are several variants, this one is called Variant 1 in this work.

The main difference between MCSR and CSR regards storing of diagonal entries. In MCSR an array of length $ n$ is used to store all diagonal entries, even if there are zero ones. The CSR format does not store all diagonal entries, and requires therefore also the index information for these entries. For that reason all entries of all rows are stored sequentially in the value array of length nnz and all column indices are stored in the parallel array ja. The only information missing is the starting index of each row, which is stored in the array ia of length n + 1. The CSR representation of the matrix above looks as follows:

\begin{displaymath}
\begin{array}{rrrrrrrrr} \mathrm{pos} & 0 & 1 & 2 & 3 & 4 & ...
...& 3 \\
\mathrm{ia } & 0 & 2 & 5 & 7 & 8 & & & \\
\end{array}\end{displaymath}


next up previous contents
Next: E.3 Compressed Sparse Row Up: E. Matrix Storage Formats Previous: E.1 Modified Compressed Sparse

S. Wagner: Small-Signal Device and Circuit Simulation