mapl3g_CSR_SparseMatrix Module


Uses

  • module~~mapl3g_csr_sparsematrix~~UsesGraph module~mapl3g_csr_sparsematrix mapl3g_CSR_SparseMatrix iso_fortran_env iso_fortran_env module~mapl3g_csr_sparsematrix->iso_fortran_env module~mapl_keywordenforcer mapl_KeywordEnforcer module~mapl3g_csr_sparsematrix->module~mapl_keywordenforcer

Used by

  • module~~mapl3g_csr_sparsematrix~~UsedByGraph module~mapl3g_csr_sparsematrix mapl3g_CSR_SparseMatrix module~test_csr_sparsematrix Test_CSR_SparseMatrix module~test_csr_sparsematrix->module~mapl3g_csr_sparsematrix

Interfaces

public interface CSR_SparseMatrix_dp

  • private function new_csr_matrix_dp(n_rows, n_columns, nnz) result(mat)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: n_rows
    integer, intent(in) :: n_columns
    integer, intent(in) :: nnz

    Return Value type(CSR_SparseMatrix_dp)

public interface CSR_SparseMatrix_sp

  • private function new_csr_matrix_sp(n_rows, n_columns, nnz) result(mat)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: n_rows
    integer, intent(in) :: n_columns
    integer, intent(in) :: nnz

    Return Value type(CSR_SparseMatrix_sp)

public interface add_row

  • private pure subroutine add_row_sp(this, row, start_column, v)

    Arguments

    Type IntentOptional Attributes Name
    type(CSR_SparseMatrix_sp), intent(inout) :: this
    integer, intent(in) :: row
    integer, intent(in) :: start_column
    real(kind=sp), intent(in) :: v(:)

public interface matmul

  • private pure function matmul_vec_spsp(A, x) result(y)

    Arguments

    Type IntentOptional Attributes Name
    type(CSR_SparseMatrix_sp), intent(in) :: A
    real(kind=sp), intent(in) :: x(:)

    Return Value real(kind=sp), (A%n_rows)

  • private pure function matmul_vec_spdp(A, x) result(y)

    Arguments

    Type IntentOptional Attributes Name
    type(CSR_SparseMatrix_sp), intent(in) :: A
    real(kind=dp), intent(in) :: x(:)

    Return Value real(kind=dp), (A%n_rows)

  • private pure function matmul_multi_vec_spsp(A, x) result(b)

    Arguments

    Type IntentOptional Attributes Name
    type(CSR_SparseMatrix_sp), intent(in) :: A(:)
    real(kind=sp), intent(in) :: x(:,:)

    Return Value real(kind=sp), (size(A,1),A(1)%n_rows)

  • private pure function matmul_multi_vec_spdp(A, x) result(b)

    Arguments

    Type IntentOptional Attributes Name
    type(CSR_SparseMatrix_sp), intent(in) :: A(:)
    real(kind=dp), intent(in) :: x(:,:)

    Return Value real(kind=dp), (size(A,1),A(1)%n_rows)


Derived Types

type, public ::  CSR_SparseMatrix_dp

Constructor

private function new_csr_matrix_dp (n_rows, n_columns, nnz)

type, public ::  CSR_SparseMatrix_sp

Constructor

private function new_csr_matrix_sp (n_rows, n_columns, nnz)