mirror of
https://github.com/sfilippone/psblas3.git
synced 2026-10-06 22:55:08 +00:00
Fix interface location and use in spspmm
This commit is contained in:
@@ -37,7 +37,9 @@
|
||||
!
|
||||
subroutine psb_cspspmm(a,b,c,info)
|
||||
use psb_mat_mod
|
||||
!use psb_c_serial_mod, psb_protect_name => psb_cspspmm
|
||||
use psb_c_csr_mat_mod
|
||||
use psb_c_csc_mat_mod
|
||||
use psb_c_serial_mod, psb_protect_name => psb_cspspmm
|
||||
implicit none
|
||||
|
||||
type(psb_cspmat_type), intent(in) :: a,b
|
||||
@@ -48,24 +50,6 @@ subroutine psb_cspspmm(a,b,c,info)
|
||||
integer(psb_ipk_) :: err_act
|
||||
character(len=*), parameter :: name='psb_spspmm'
|
||||
logical :: done_spmm
|
||||
!!$ interface
|
||||
!!$ subroutine psb_ccsrspspmm(a,b,c,info)
|
||||
!!$ use psb_c_mat_mod, only : psb_c_csr_sparse_mat
|
||||
!!$ import :: psb_ipk_
|
||||
!!$ implicit none
|
||||
!!$ class(psb_c_csr_sparse_mat), intent(in) :: a,b
|
||||
!!$ type(psb_c_csr_sparse_mat), intent(out) :: c
|
||||
!!$ integer(psb_ipk_), intent(out) :: info
|
||||
!!$ end subroutine psb_ccsrspspmm
|
||||
!!$ subroutine psb_ccscspspmm(a,b,c,info)
|
||||
!!$ use psb_c_mat_mod, only : psb_c_csc_sparse_mat
|
||||
!!$ import :: psb_ipk_
|
||||
!!$ implicit none
|
||||
!!$ class(psb_c_csc_sparse_mat), intent(in) :: a,b
|
||||
!!$ type(psb_c_csc_sparse_mat), intent(out) :: c
|
||||
!!$ integer(psb_ipk_), intent(out) :: info
|
||||
!!$ end subroutine psb_ccscspspmm
|
||||
!!$ end interface
|
||||
call psb_erractionsave(err_act)
|
||||
info = psb_success_
|
||||
|
||||
@@ -136,7 +120,9 @@ end subroutine psb_cspspmm
|
||||
|
||||
subroutine psb_lcspspmm(a,b,c,info)
|
||||
use psb_mat_mod
|
||||
! use psb_c_serial_mod, psb_protect_name => psb_lcspspmm
|
||||
use psb_c_csr_mat_mod
|
||||
use psb_c_csc_mat_mod
|
||||
use psb_c_serial_mod, psb_protect_name => psb_lcspspmm
|
||||
implicit none
|
||||
|
||||
type(psb_lcspmat_type), intent(in) :: a,b
|
||||
@@ -147,25 +133,7 @@ subroutine psb_lcspspmm(a,b,c,info)
|
||||
integer(psb_ipk_) :: err_act
|
||||
character(len=*), parameter :: name='psb_spspmm'
|
||||
logical :: done_spmm
|
||||
!!$ interface
|
||||
!!$ subroutine psb_lccsrspspmm(a,b,c,info)
|
||||
!!$ use psb_c_mat_mod, only : psb_lc_csr_sparse_mat
|
||||
!!$ import :: psb_ipk_
|
||||
!!$ implicit none
|
||||
!!$ class(psb_lc_csr_sparse_mat), intent(in) :: a,b
|
||||
!!$ type(psb_lc_csr_sparse_mat), intent(out) :: c
|
||||
!!$ integer(psb_ipk_), intent(out) :: info
|
||||
!!$ end subroutine psb_lccsrspspmm
|
||||
!!$ subroutine psb_lccscspspmm(a,b,c,info)
|
||||
!!$ use psb_c_mat_mod, only : psb_lc_csc_sparse_mat
|
||||
!!$ import :: psb_ipk_
|
||||
!!$ implicit none
|
||||
!!$ class(psb_lc_csc_sparse_mat), intent(in) :: a,b
|
||||
!!$ type(psb_lc_csc_sparse_mat), intent(out) :: c
|
||||
!!$ integer(psb_ipk_), intent(out) :: info
|
||||
!!$ end subroutine psb_lccscspspmm
|
||||
!!$ end interface
|
||||
call psb_erractionsave(err_act)
|
||||
call psb_erractionsave(err_act)
|
||||
info = psb_success_
|
||||
|
||||
if ((a%is_null()) .or.(b%is_null())) then
|
||||
|
||||
@@ -37,7 +37,9 @@
|
||||
!
|
||||
subroutine psb_dspspmm(a,b,c,info)
|
||||
use psb_mat_mod
|
||||
!use psb_d_serial_mod, psb_protect_name => psb_dspspmm
|
||||
use psb_d_csr_mat_mod
|
||||
use psb_d_csc_mat_mod
|
||||
use psb_d_serial_mod, psb_protect_name => psb_dspspmm
|
||||
implicit none
|
||||
|
||||
type(psb_dspmat_type), intent(in) :: a,b
|
||||
@@ -48,24 +50,6 @@ subroutine psb_dspspmm(a,b,c,info)
|
||||
integer(psb_ipk_) :: err_act
|
||||
character(len=*), parameter :: name='psb_spspmm'
|
||||
logical :: done_spmm
|
||||
!!$ interface
|
||||
!!$ subroutine psb_dcsrspspmm(a,b,c,info)
|
||||
!!$ use psb_d_mat_mod, only : psb_d_csr_sparse_mat
|
||||
!!$ import :: psb_ipk_
|
||||
!!$ implicit none
|
||||
!!$ class(psb_d_csr_sparse_mat), intent(in) :: a,b
|
||||
!!$ type(psb_d_csr_sparse_mat), intent(out) :: c
|
||||
!!$ integer(psb_ipk_), intent(out) :: info
|
||||
!!$ end subroutine psb_dcsrspspmm
|
||||
!!$ subroutine psb_dcscspspmm(a,b,c,info)
|
||||
!!$ use psb_d_mat_mod, only : psb_d_csc_sparse_mat
|
||||
!!$ import :: psb_ipk_
|
||||
!!$ implicit none
|
||||
!!$ class(psb_d_csc_sparse_mat), intent(in) :: a,b
|
||||
!!$ type(psb_d_csc_sparse_mat), intent(out) :: c
|
||||
!!$ integer(psb_ipk_), intent(out) :: info
|
||||
!!$ end subroutine psb_dcscspspmm
|
||||
!!$ end interface
|
||||
call psb_erractionsave(err_act)
|
||||
info = psb_success_
|
||||
|
||||
@@ -136,7 +120,9 @@ end subroutine psb_dspspmm
|
||||
|
||||
subroutine psb_ldspspmm(a,b,c,info)
|
||||
use psb_mat_mod
|
||||
! use psb_d_serial_mod, psb_protect_name => psb_ldspspmm
|
||||
use psb_d_csr_mat_mod
|
||||
use psb_d_csc_mat_mod
|
||||
use psb_d_serial_mod, psb_protect_name => psb_ldspspmm
|
||||
implicit none
|
||||
|
||||
type(psb_ldspmat_type), intent(in) :: a,b
|
||||
@@ -147,25 +133,7 @@ subroutine psb_ldspspmm(a,b,c,info)
|
||||
integer(psb_ipk_) :: err_act
|
||||
character(len=*), parameter :: name='psb_spspmm'
|
||||
logical :: done_spmm
|
||||
!!$ interface
|
||||
!!$ subroutine psb_ldcsrspspmm(a,b,c,info)
|
||||
!!$ use psb_d_mat_mod, only : psb_ld_csr_sparse_mat
|
||||
!!$ import :: psb_ipk_
|
||||
!!$ implicit none
|
||||
!!$ class(psb_ld_csr_sparse_mat), intent(in) :: a,b
|
||||
!!$ type(psb_ld_csr_sparse_mat), intent(out) :: c
|
||||
!!$ integer(psb_ipk_), intent(out) :: info
|
||||
!!$ end subroutine psb_ldcsrspspmm
|
||||
!!$ subroutine psb_ldcscspspmm(a,b,c,info)
|
||||
!!$ use psb_d_mat_mod, only : psb_ld_csc_sparse_mat
|
||||
!!$ import :: psb_ipk_
|
||||
!!$ implicit none
|
||||
!!$ class(psb_ld_csc_sparse_mat), intent(in) :: a,b
|
||||
!!$ type(psb_ld_csc_sparse_mat), intent(out) :: c
|
||||
!!$ integer(psb_ipk_), intent(out) :: info
|
||||
!!$ end subroutine psb_ldcscspspmm
|
||||
!!$ end interface
|
||||
call psb_erractionsave(err_act)
|
||||
call psb_erractionsave(err_act)
|
||||
info = psb_success_
|
||||
|
||||
if ((a%is_null()) .or.(b%is_null())) then
|
||||
|
||||
@@ -37,7 +37,9 @@
|
||||
!
|
||||
subroutine psb_sspspmm(a,b,c,info)
|
||||
use psb_mat_mod
|
||||
!use psb_s_serial_mod, psb_protect_name => psb_sspspmm
|
||||
use psb_s_csr_mat_mod
|
||||
use psb_s_csc_mat_mod
|
||||
use psb_s_serial_mod, psb_protect_name => psb_sspspmm
|
||||
implicit none
|
||||
|
||||
type(psb_sspmat_type), intent(in) :: a,b
|
||||
@@ -48,24 +50,6 @@ subroutine psb_sspspmm(a,b,c,info)
|
||||
integer(psb_ipk_) :: err_act
|
||||
character(len=*), parameter :: name='psb_spspmm'
|
||||
logical :: done_spmm
|
||||
!!$ interface
|
||||
!!$ subroutine psb_scsrspspmm(a,b,c,info)
|
||||
!!$ use psb_s_mat_mod, only : psb_s_csr_sparse_mat
|
||||
!!$ import :: psb_ipk_
|
||||
!!$ implicit none
|
||||
!!$ class(psb_s_csr_sparse_mat), intent(in) :: a,b
|
||||
!!$ type(psb_s_csr_sparse_mat), intent(out) :: c
|
||||
!!$ integer(psb_ipk_), intent(out) :: info
|
||||
!!$ end subroutine psb_scsrspspmm
|
||||
!!$ subroutine psb_scscspspmm(a,b,c,info)
|
||||
!!$ use psb_s_mat_mod, only : psb_s_csc_sparse_mat
|
||||
!!$ import :: psb_ipk_
|
||||
!!$ implicit none
|
||||
!!$ class(psb_s_csc_sparse_mat), intent(in) :: a,b
|
||||
!!$ type(psb_s_csc_sparse_mat), intent(out) :: c
|
||||
!!$ integer(psb_ipk_), intent(out) :: info
|
||||
!!$ end subroutine psb_scscspspmm
|
||||
!!$ end interface
|
||||
call psb_erractionsave(err_act)
|
||||
info = psb_success_
|
||||
|
||||
@@ -136,7 +120,9 @@ end subroutine psb_sspspmm
|
||||
|
||||
subroutine psb_lsspspmm(a,b,c,info)
|
||||
use psb_mat_mod
|
||||
! use psb_s_serial_mod, psb_protect_name => psb_lsspspmm
|
||||
use psb_s_csr_mat_mod
|
||||
use psb_s_csc_mat_mod
|
||||
use psb_s_serial_mod, psb_protect_name => psb_lsspspmm
|
||||
implicit none
|
||||
|
||||
type(psb_lsspmat_type), intent(in) :: a,b
|
||||
@@ -147,25 +133,7 @@ subroutine psb_lsspspmm(a,b,c,info)
|
||||
integer(psb_ipk_) :: err_act
|
||||
character(len=*), parameter :: name='psb_spspmm'
|
||||
logical :: done_spmm
|
||||
!!$ interface
|
||||
!!$ subroutine psb_lscsrspspmm(a,b,c,info)
|
||||
!!$ use psb_s_mat_mod, only : psb_ls_csr_sparse_mat
|
||||
!!$ import :: psb_ipk_
|
||||
!!$ implicit none
|
||||
!!$ class(psb_ls_csr_sparse_mat), intent(in) :: a,b
|
||||
!!$ type(psb_ls_csr_sparse_mat), intent(out) :: c
|
||||
!!$ integer(psb_ipk_), intent(out) :: info
|
||||
!!$ end subroutine psb_lscsrspspmm
|
||||
!!$ subroutine psb_lscscspspmm(a,b,c,info)
|
||||
!!$ use psb_s_mat_mod, only : psb_ls_csc_sparse_mat
|
||||
!!$ import :: psb_ipk_
|
||||
!!$ implicit none
|
||||
!!$ class(psb_ls_csc_sparse_mat), intent(in) :: a,b
|
||||
!!$ type(psb_ls_csc_sparse_mat), intent(out) :: c
|
||||
!!$ integer(psb_ipk_), intent(out) :: info
|
||||
!!$ end subroutine psb_lscscspspmm
|
||||
!!$ end interface
|
||||
call psb_erractionsave(err_act)
|
||||
call psb_erractionsave(err_act)
|
||||
info = psb_success_
|
||||
|
||||
if ((a%is_null()) .or.(b%is_null())) then
|
||||
|
||||
@@ -37,7 +37,9 @@
|
||||
!
|
||||
subroutine psb_zspspmm(a,b,c,info)
|
||||
use psb_mat_mod
|
||||
!use psb_z_serial_mod, psb_protect_name => psb_zspspmm
|
||||
use psb_z_csr_mat_mod
|
||||
use psb_z_csc_mat_mod
|
||||
use psb_z_serial_mod, psb_protect_name => psb_zspspmm
|
||||
implicit none
|
||||
|
||||
type(psb_zspmat_type), intent(in) :: a,b
|
||||
@@ -48,24 +50,6 @@ subroutine psb_zspspmm(a,b,c,info)
|
||||
integer(psb_ipk_) :: err_act
|
||||
character(len=*), parameter :: name='psb_spspmm'
|
||||
logical :: done_spmm
|
||||
!!$ interface
|
||||
!!$ subroutine psb_zcsrspspmm(a,b,c,info)
|
||||
!!$ use psb_z_mat_mod, only : psb_z_csr_sparse_mat
|
||||
!!$ import :: psb_ipk_
|
||||
!!$ implicit none
|
||||
!!$ class(psb_z_csr_sparse_mat), intent(in) :: a,b
|
||||
!!$ type(psb_z_csr_sparse_mat), intent(out) :: c
|
||||
!!$ integer(psb_ipk_), intent(out) :: info
|
||||
!!$ end subroutine psb_zcsrspspmm
|
||||
!!$ subroutine psb_zcscspspmm(a,b,c,info)
|
||||
!!$ use psb_z_mat_mod, only : psb_z_csc_sparse_mat
|
||||
!!$ import :: psb_ipk_
|
||||
!!$ implicit none
|
||||
!!$ class(psb_z_csc_sparse_mat), intent(in) :: a,b
|
||||
!!$ type(psb_z_csc_sparse_mat), intent(out) :: c
|
||||
!!$ integer(psb_ipk_), intent(out) :: info
|
||||
!!$ end subroutine psb_zcscspspmm
|
||||
!!$ end interface
|
||||
call psb_erractionsave(err_act)
|
||||
info = psb_success_
|
||||
|
||||
@@ -136,7 +120,9 @@ end subroutine psb_zspspmm
|
||||
|
||||
subroutine psb_lzspspmm(a,b,c,info)
|
||||
use psb_mat_mod
|
||||
! use psb_z_serial_mod, psb_protect_name => psb_lzspspmm
|
||||
use psb_z_csr_mat_mod
|
||||
use psb_z_csc_mat_mod
|
||||
use psb_z_serial_mod, psb_protect_name => psb_lzspspmm
|
||||
implicit none
|
||||
|
||||
type(psb_lzspmat_type), intent(in) :: a,b
|
||||
@@ -147,25 +133,7 @@ subroutine psb_lzspspmm(a,b,c,info)
|
||||
integer(psb_ipk_) :: err_act
|
||||
character(len=*), parameter :: name='psb_spspmm'
|
||||
logical :: done_spmm
|
||||
!!$ interface
|
||||
!!$ subroutine psb_lzcsrspspmm(a,b,c,info)
|
||||
!!$ use psb_z_mat_mod, only : psb_lz_csr_sparse_mat
|
||||
!!$ import :: psb_ipk_
|
||||
!!$ implicit none
|
||||
!!$ class(psb_lz_csr_sparse_mat), intent(in) :: a,b
|
||||
!!$ type(psb_lz_csr_sparse_mat), intent(out) :: c
|
||||
!!$ integer(psb_ipk_), intent(out) :: info
|
||||
!!$ end subroutine psb_lzcsrspspmm
|
||||
!!$ subroutine psb_lzcscspspmm(a,b,c,info)
|
||||
!!$ use psb_z_mat_mod, only : psb_lz_csc_sparse_mat
|
||||
!!$ import :: psb_ipk_
|
||||
!!$ implicit none
|
||||
!!$ class(psb_lz_csc_sparse_mat), intent(in) :: a,b
|
||||
!!$ type(psb_lz_csc_sparse_mat), intent(out) :: c
|
||||
!!$ integer(psb_ipk_), intent(out) :: info
|
||||
!!$ end subroutine psb_lzcscspspmm
|
||||
!!$ end interface
|
||||
call psb_erractionsave(err_act)
|
||||
call psb_erractionsave(err_act)
|
||||
info = psb_success_
|
||||
|
||||
if ((a%is_null()) .or.(b%is_null())) then
|
||||
|
||||
Reference in New Issue
Block a user