13.3.6 Convert_ELL_to_LAMG Procedure

The Convert_ELL_to_LAMG procedure converts an ELL Matrix object to the LAMG matrix storage format. While converting to the LAMG CSR (compressed storage row) format, the zero entries in the ELL Matrix are removed, which will result in faster operation. This function is only available if CÆSAR has been compiled with LAMG.

Calling syntax:

call Convert (LAMG_Matrix, ELLM, LAMG_Communicator, LAMG_Options, status)

Input variables:

 ELLM  The ELL_Matrix object to be converted.
 LAMG_Communicator  The Communicator object for the LAMG package.
 LAMG_Options  The Options object for the LAMG package.

Output variables:

 LAMG_Matrix  The matrix in LAMG format.
 status  If present, the status variable is set to either 'Memory Error' or 'Success' depending on program execution. If not present, the procedure aborts if unsuccessful when the DEBUG_LEVEL is set high enough.

Internal variables:

 Status variables  
 allocate_status  Allocation Status.
 consolidated_status  Consolidated Status.
 LAMG_Status  LAMG status.
 Matrix variables  
 NNonzeros_PE  Number of nonzeros on this PE.
 Columns_BNA  Matrix columns bare naked array.
 Values_BNA  Matrix values bare naked array.
 LAMG_BR_Matrix  LAMG block-row format matrix.
 Counter variables  
 BR_Location  Location in the block-row matrix.
 ELL_Location  Location in the ELL matrix.
 row  Row loop counter.

The Convert_ELL_to_LAMG code listing contains additional documentation.

Michael L. Hall