header[72] key[8] totalLines[14] pointerLines[14] rowIndexLines[14] valueLines[14] rightHandSideLines[14] matrixType[14] numRows[14] numCols[14] totalNonZeroValues[14] 0 pointerFormat[16] rowIndexFormat[16] valueFormat[16] rightHandSideFormat[16] for each column plus one: firstValueIndex for each non-zero value: rowIndex for each non-zero value: value
The header must be 72 characters long, as indicated by the number in square brackets. It is ignored, as is the key. The line counts on header line 2 are not used by SVDLIBC.
The matrixType on line 3 must be "rra", since that's the only one supported. The final item on row 3 is the number of elemental matrixes, it must be 0 for an assembled matrix.
The fourth header line contains format specifications. They aren't used by SVDLIBC.
The firstValueIndex is the cumulative number of values in the columns to the left of the current column, plus one. The final one of these should be equivalent to the total number of non-zero values plus one. The rows are indexed starting with 1. Newlines and spaces are equivalent.
4 3 2.3 0 4.2 0 1.3 2.2 3.8 0 0.5 0 0 0Sparse Text Harwell-Boeing Format:
SVDLIBC v. 1.323 1 1 1 0 rra 4 3 6 0 (8i) (8i) (8e) (8e) 1 3 4 7 1 3 2 1 2 3 2.3 3.8 1.3 4.2 2.2 0.5