@@ -326,6 +326,55 @@ Note: Structure-only matrices (allowed in matrix market format) can be stored
326326 using this technique with a value of 1. This adds only a small amount of
327327 overhead while describing essentially the same matrix.
328328
329+ Structure {#key_structure}
330+ --------------------------
331+ The `structure` key, if present, denotes a special matrix structure in which
332+ only one triangle of the matrix is stored and the structure and values in the
333+ other triangle are inferred.
334+
335+ #### symmetric_lower #### {#symmetric_lower_structure}
336+
337+ The `symmetric_lower` value indicates that the matrix has a symmetric structure
338+ with only the lower triangle stored. For all matrix entries with row and column
339+ indices `i,j` and value `v`, `i >= j`. If `i != j`, the entry implies the
340+ presence of an entry at row and column index `j,i` with value `v`.
341+
342+ #### symmetric_upper #### {#symmetric_upper_structure}
343+
344+ The `symmetric_upper` value indicates that the matrix has a symmetric structure
345+ with only the upper triangle stored. For all matrix entries with row and column
346+ indices `i,j` and value `v`, `i <= j`. If `i != j`, the entry implies the
347+ presence of an entry at row and column index `j,i` with value `v`.
348+
349+ #### hermitian_lower #### {#hermitian_lower_structure}
350+
351+ The `hermitian_lower` value indicates that the matrix has a Hermitian structure
352+ with only the lower triangle stored. For all matrix entries with row and column
353+ indices `i,j` and value `v`, `i >= j`. If `i != j`, the entry implies the
354+ presence of an entry at row and column index `j,i` with a value equal to the
355+ complex conjugate of `v`. The matrix's value type must be complex.
356+
357+ #### hermitian_upper #### {#hermitian_upper_structure}
358+
359+ The `hermitian_upper` value indicates that the matrix has a Hermitian structure
360+ with only the upper triangle stored. For all matrix entries with row and column
361+ indices `i,j` and value `v`, `i <= j`. If `i != j`, the entry implies the
362+ presence of an entry at row and column index `j,i` with a value equal to the
363+ complex conjugate of `v`. The matrix's value type must be complex.
364+
365+ #### skew_symmetric_lower #### {#skew_symmetric_lower_structure}
366+
367+ The `skew_symmetric_lower` value indicates that the matrix has a skew-symmetric structure
368+ with only the lower triangle stored. For all matrix entries with row and column
369+ indices `i,j` and value `v`, `i >= j`. If `i != j`, the entry implies the
370+ presence of an entry at row and column index `j,i` with value `-v`.
371+
372+ #### skew_symmetric_upper #### {#skew_symmetric_upper_structure}
373+
374+ The `symmetric_upper` value indicates that the matrix has a skew-symmetric structure
375+ with only the upper triangle stored. For all matrix entries with row and column
376+ indices `i,j` and value `v`, `i <= j`. If `i != j`, the entry implies the
377+ presence of an entry at row and column index `j,i` with value `-v`.
329378
330379Binary Containers {#binary_container}
331380=====================================
0 commit comments