SF_SPARSE_ARRAY_CSR Module


Uses

  • module~~sf_sparse_array_csr~~UsesGraph module~sf_sparse_array_csr SF_SPARSE_ARRAY_CSR module~sf_linalg SF_LINALG module~sf_sparse_array_csr->module~sf_linalg module~sf_sparse_common SF_SPARSE_COMMON module~sf_sparse_array_csr->module~sf_sparse_common mpi mpi module~sf_sparse_array_csr->mpi module~sf_blacs SF_BLACS module~sf_linalg->module~sf_blacs module~sf_sparse_common->module~sf_linalg

Used by

  • module~~sf_sparse_array_csr~~UsedByGraph module~sf_sparse_array_csr SF_SPARSE_ARRAY_CSR module~sf_sparse SF_SPARSE module~sf_sparse->module~sf_sparse_array_csr module~sf_sparse_array_algebra SF_SPARSE_ARRAY_ALGEBRA module~sf_sparse_array_algebra->module~sf_sparse_array_csr

Interfaces

public interface as_sparse

  • private function construct_dmatrix_csr(matrix) result(self)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=8), intent(in), dimension(:,:) :: matrix

    Return Value type(sparse_dmatrix_csr)

  • private function construct_zmatrix_csr(matrix) result(self)

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=8), intent(in), dimension(:,:) :: matrix

    Return Value type(sparse_zmatrix_csr)

public interface sparse

  • private function construct_dmatrix_csr(matrix) result(self)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=8), intent(in), dimension(:,:) :: matrix

    Return Value type(sparse_dmatrix_csr)

  • private function construct_zmatrix_csr(matrix) result(self)

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=8), intent(in), dimension(:,:) :: matrix

    Return Value type(sparse_zmatrix_csr)

public interface assignment(=)

  • private subroutine dmatrix_equal_scalar_csr(a, c)

    Arguments

    Type IntentOptional Attributes Name
    type(sparse_dmatrix_csr), intent(inout) :: a
    real(kind=8), intent(in) :: c
  • private subroutine dmatrix_equal_dmatrix_csr(a, b)

    Arguments

    Type IntentOptional Attributes Name
    type(sparse_dmatrix_csr), intent(inout) :: a
    type(sparse_dmatrix_csr), intent(in) :: b
  • private subroutine zmatrix_equal_scalar_csr(a, c)

    Arguments

    Type IntentOptional Attributes Name
    type(sparse_zmatrix_csr), intent(inout) :: a
    complex(kind=8), intent(in) :: c
  • private subroutine zmatrix_equal_zmatrix_csr(a, b)

    Arguments

    Type IntentOptional Attributes Name
    type(sparse_zmatrix_csr), intent(inout) :: a
    type(sparse_zmatrix_csr), intent(in) :: b

public interface operator(*)

  • private function left_product_dmatrix_i_csr(C, A) result(B)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: C
    type(sparse_dmatrix_csr), intent(in) :: A

    Return Value type(sparse_dmatrix_csr)

  • private function left_product_dmatrix_d_csr(C, A) result(B)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=8), intent(in) :: C
    type(sparse_dmatrix_csr), intent(in) :: A

    Return Value type(sparse_dmatrix_csr)

  • private function left_product_zmatrix_i_csr(C, A) result(B)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: C
    type(sparse_zmatrix_csr), intent(in) :: A

    Return Value type(sparse_zmatrix_csr)

  • private function left_product_zmatrix_d_csr(C, A) result(B)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=8), intent(in) :: C
    type(sparse_zmatrix_csr), intent(in) :: A

    Return Value type(sparse_zmatrix_csr)

  • private function left_product_zmatrix_z_csr(C, A) result(B)

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=8), intent(in) :: C
    type(sparse_zmatrix_csr), intent(in) :: A

    Return Value type(sparse_zmatrix_csr)

  • private function right_product_dmatrix_i_csr(A, C) result(B)

    Arguments

    Type IntentOptional Attributes Name
    type(sparse_dmatrix_csr), intent(in) :: A
    integer, intent(in) :: C

    Return Value type(sparse_dmatrix_csr)

  • private function right_product_dmatrix_d_csr(A, C) result(B)

    Arguments

    Type IntentOptional Attributes Name
    type(sparse_dmatrix_csr), intent(in) :: A
    real(kind=8), intent(in) :: C

    Return Value type(sparse_dmatrix_csr)

  • private function right_product_zmatrix_i_csr(A, C) result(B)

    Arguments

    Type IntentOptional Attributes Name
    type(sparse_zmatrix_csr), intent(in) :: A
    integer, intent(in) :: C

    Return Value type(sparse_zmatrix_csr)

  • private function right_product_zmatrix_d_csr(A, C) result(B)

    Arguments

    Type IntentOptional Attributes Name
    type(sparse_zmatrix_csr), intent(in) :: A
    real(kind=8), intent(in) :: C

    Return Value type(sparse_zmatrix_csr)

  • private function right_product_zmatrix_z_csr(A, C) result(B)

    Arguments

    Type IntentOptional Attributes Name
    type(sparse_zmatrix_csr), intent(in) :: A
    complex(kind=8), intent(in) :: C

    Return Value type(sparse_zmatrix_csr)

public interface operator(/)

  • private function right_division_dmatrix_i_csr(A, C) result(B)

    Arguments

    Type IntentOptional Attributes Name
    type(sparse_dmatrix_csr), intent(in) :: A
    integer, intent(in) :: C

    Return Value type(sparse_dmatrix_csr)

  • private function right_division_dmatrix_d_csr(A, C) result(B)

    Arguments

    Type IntentOptional Attributes Name
    type(sparse_dmatrix_csr), intent(in) :: A
    real(kind=8), intent(in) :: C

    Return Value type(sparse_dmatrix_csr)

  • private function right_division_zmatrix_i_csr(A, C) result(B)

    Arguments

    Type IntentOptional Attributes Name
    type(sparse_zmatrix_csr), intent(in) :: A
    integer, intent(in) :: C

    Return Value type(sparse_zmatrix_csr)

  • private function right_division_zmatrix_d_csr(A, C) result(B)

    Arguments

    Type IntentOptional Attributes Name
    type(sparse_zmatrix_csr), intent(in) :: A
    real(kind=8), intent(in) :: C

    Return Value type(sparse_zmatrix_csr)

  • private function right_division_zmatrix_z_csr(A, C) result(B)

    Arguments

    Type IntentOptional Attributes Name
    type(sparse_zmatrix_csr), intent(in) :: A
    complex(kind=8), intent(in) :: C

    Return Value type(sparse_zmatrix_csr)

public interface matmul

  • private function right_matmul_dmatrix_darray_csr(A, C) result(B)

    Arguments

    Type IntentOptional Attributes Name
    type(sparse_dmatrix_csr), intent(in) :: A
    real(kind=8), intent(in), dimension(:) :: C

    Return Value real(kind=8), dimension(size(C))

  • private function right_matmul_zmatrix_zarray_csr(A, C) result(B)

    Arguments

    Type IntentOptional Attributes Name
    type(sparse_zmatrix_csr), intent(in) :: A
    complex(kind=8), intent(in), dimension(:) :: C

    Return Value complex(kind=8), dimension(size(C))

public interface operator(.x.)

public interface kron

public interface transpose

public interface hconjg


Derived Types

type, public, extends(sparse_matrix) ::  sparse_dmatrix_csr

Components

Type Visibility Attributes Name Initial
integer, public :: Nrow
integer, public :: Ncol
integer, public :: Nelements
logical, public :: status = .false.
type(sparse_drow_csr), public, dimension(:), allocatable :: row

Type-Bound Procedures

procedure, public, pass :: shape => shape_matrix
procedure, public, pass :: init => init_dmatrix_csr
procedure, public, pass :: free => free_dmatrix_csr
procedure, public, pass :: load => load_dmatrix_csr
procedure, public, pass :: dump => dump_dmatrix_csr
procedure, public, pass :: insert => insert_delement_csr
procedure, public, pass :: get => get_delement_csr
procedure, public, pass :: as_matrix => as_dmatrix_csr
procedure, public, pass :: dgr => dgr_dmatrix_csr
procedure, public, pass :: transpose => transpose_dmatrix_csr

type, public, extends(sparse_matrix) ::  sparse_zmatrix_csr

Components

Type Visibility Attributes Name Initial
integer, public :: Nrow
integer, public :: Ncol
integer, public :: Nelements
logical, public :: status = .false.
type(sparse_zrow_csr), public, dimension(:), allocatable :: row

Type-Bound Procedures

procedure, public, pass :: shape => shape_matrix
procedure, public, pass :: init => init_zmatrix_csr
procedure, public, pass :: free => free_zmatrix_csr
procedure, public, pass :: load => load_zmatrix_csr
procedure, public, pass :: dump => dump_zmatrix_csr
procedure, public, pass :: insert => insert_zelement_csr
procedure, public, pass :: get => get_zelement_csr
procedure, public, pass :: as_matrix => as_zmatrix_csr
procedure, public, pass :: dgr => dgr_zmatrix_csr
procedure, public, pass :: transpose => transpose_zmatrix_csr
procedure, public, pass :: conjg => conjg_zmatrix_csr