diff --git a/spm.h b/spm.h index 3a9409f94c2493aad0908fc7eea4769b4961c126..4ce46baf3ab01e06db9ed963b1a3d6bf0f3035d3 100644 --- a/spm.h +++ b/spm.h @@ -51,6 +51,31 @@ typedef enum pastix_driver_e { /* PastixDriverBRGMD, /\**< Not supported yet *\/ */ } pastix_driver_t; +/** + * @brief Arithmetic types. + * + * This describes the different arithmetics that can be stored in a sparse matrix. + * @remark The values start at 2 for compatibility purpose with PLASMA and + * DPLASMA libraries. + */ +typedef enum pastix_coeftype_e { + PastixPattern = 0, /**< Pattern only, no values are stored */ + PastixFloat = 2, /**< Single precision real */ + PastixDouble = 3, /**< Double precision real */ + PastixComplex32 = 4, /**< Single precision complex */ + PastixComplex64 = 5 /**< Double precision complex */ +} pastix_coeftype_t; + +/** + * @brief Sparse matrix format + */ +typedef enum pastix_fmttype_e { + PastixCSC = 0, /**< Compressed sparse column */ + PastixCSR = 1, /**< Compressed sparse row */ + PastixIJV = 2 /**< Coordinates */ +} pastix_fmttype_t; + + /** * * @brief The sparse matrix data structure