MatrixMarketModule Module

This module contains helpers for processing matrix market files.


Contents


Enumerations

enum, bind(c)

Enumerators

enumerator:: MM_COORDINATE = 1

Sparse coordinate file.

enumerator:: MM_ARRAY = 2

Dense array file.

enumerator:: MM_REAL = 1

Real data being read in.

enumerator:: MM_INTEGER = 2

Integer data being read in.

enumerator:: MM_COMPLEX = 3

Complex numbers being read in.

enumerator:: MM_PATTERN = 4

Just a pattern of non zeros.

enumerator:: MM_GENERAL = 1

File lacks symmetry.

enumerator:: MM_SYMMETRIC = 2

File is symmetric

enumerator:: MM_SKEW_SYMMETRIC = 3

File is skew symmetric.

enumerator:: MM_HERMITIAN = 4

File is hermitian.


Functions

public function ParseMMHeader(line, sparsity_type, data_type, pattern_type) result(no_error)

Parse a matrix market header.

Arguments

Type IntentOptional AttributesName
character(len=*), intent(in) :: line

String to parse.

integer, intent(out) :: sparsity_type

If coordinate or array type.

integer, intent(out) :: data_type

If real, integer, complex, pattern.

integer, intent(out) :: pattern_type

If general, symmetric, skew_symmetric, hermitian.

Return Value logical

True if no errors.