base/comm/psb_dspgather.F90
 base/modules/psb_c_linmap_mod.f90
 base/modules/psb_c_mat_mod.f03
 base/modules/psb_c_psblas_mod.f90
 base/modules/psb_c_tools_mod.f90
 base/modules/psb_comm_mod.f90
 base/modules/psb_d_linmap_mod.f90
 base/modules/psb_d_mat_mod.f03
 base/modules/psb_d_psblas_mod.f90
 base/modules/psb_d_tools_mod.f90
 base/modules/psb_linmap_type_mod.f90
 base/modules/psb_s_linmap_mod.f90
 base/modules/psb_s_mat_mod.f03
 base/modules/psb_s_psblas_mod.f90
 base/modules/psb_s_tools_mod.f90
 base/modules/psb_serial_mod.f90
 base/modules/psb_z_linmap_mod.f90
 base/modules/psb_z_mat_mod.f03
 base/modules/psb_z_psblas_mod.f90
 base/modules/psb_z_tools_mod.f90
 base/psblas/psb_cnrmi.f90
 base/psblas/psb_cspmm.f90
 base/psblas/psb_cspsm.f90
 base/psblas/psb_dnrmi.f90
 base/psblas/psb_dspmm.f90
 base/psblas/psb_dspnrm1.f90
 base/psblas/psb_dspsm.f90
 base/psblas/psb_snrmi.f90
 base/psblas/psb_sspmm.f90
 base/psblas/psb_sspsm.f90
 base/psblas/psb_znrmi.f90
 base/psblas/psb_zspmm.f90
 base/psblas/psb_zspsm.f90
 base/serial/f03/psb_c_mat_impl.F03
 base/serial/f03/psb_d_mat_impl.F03
 base/serial/f03/psb_s_mat_impl.F03
 base/serial/f03/psb_z_mat_impl.F03
 base/serial/psb_cnumbmm.f90
 base/serial/psb_crwextd.f90
 base/serial/psb_csymbmm.f90
 base/serial/psb_dnumbmm.f90
 base/serial/psb_drwextd.f90
 base/serial/psb_dsymbmm.f90
 base/serial/psb_snumbmm.f90
 base/serial/psb_srwextd.f90
 base/serial/psb_ssymbmm.f90
 base/serial/psb_znumbmm.f90
 base/serial/psb_zrwextd.f90
 base/serial/psb_zsymbmm.f90
 base/tools/psb_ccdbldext.F90
 base/tools/psb_cspalloc.f90
 base/tools/psb_cspasb.f90
 base/tools/psb_cspfree.f90
 base/tools/psb_csphalo.F90
 base/tools/psb_cspins.f90
 base/tools/psb_csprn.f90
 base/tools/psb_dcdbldext.F90
 base/tools/psb_dspalloc.f90
 base/tools/psb_dspasb.f90
 base/tools/psb_dspfree.f90
 base/tools/psb_dsphalo.F90
 base/tools/psb_dspins.f90
 base/tools/psb_dsprn.f90
 base/tools/psb_linmap.f90
 base/tools/psb_scdbldext.F90
 base/tools/psb_sspalloc.f90
 base/tools/psb_sspasb.f90
 base/tools/psb_sspfree.f90
 base/tools/psb_ssphalo.F90
 base/tools/psb_sspins.f90
 base/tools/psb_ssprn.f90
 base/tools/psb_zcdbldext.F90
 base/tools/psb_zspalloc.f90
 base/tools/psb_zspasb.f90
 base/tools/psb_zspfree.f90
 base/tools/psb_zsphalo.F90
 base/tools/psb_zspins.f90
 base/tools/psb_zsprn.f90
 krylov/psb_c_inner_krylov_mod.f90
 krylov/psb_cbicg.f90
 krylov/psb_ccg.f90
 krylov/psb_ccgs.f90
 krylov/psb_ccgstab.f90
 krylov/psb_ccgstabl.f90
 krylov/psb_ckrylov.f90
 krylov/psb_crgmres.f90
 krylov/psb_d_inner_krylov_mod.f90
 krylov/psb_dbicg.f90
 krylov/psb_dcg.F90
 krylov/psb_dcgs.f90
 krylov/psb_dcgstab.F90
 krylov/psb_dcgstabl.f90
 krylov/psb_dkrylov.f90
 krylov/psb_drgmres.f90
 krylov/psb_krylov_mod.f90
 krylov/psb_s_inner_krylov_mod.f90
 krylov/psb_sbicg.f90
 krylov/psb_scg.F90
 krylov/psb_scgs.f90
 krylov/psb_scgstab.F90
 krylov/psb_scgstabl.f90
 krylov/psb_skrylov.f90
 krylov/psb_srgmres.f90
 krylov/psb_z_inner_krylov_mod.f90
 krylov/psb_zbicg.f90
 krylov/psb_zcg.F90
 krylov/psb_zcgs.f90
 krylov/psb_zcgstab.f90
 krylov/psb_zcgstabl.f90
 krylov/psb_zkrylov.f90
 krylov/psb_zrgmres.f90
 prec/psb_c_base_prec_mod.f03
 prec/psb_c_bjacprec.f03
 prec/psb_c_diagprec.f03
 prec/psb_c_nullprec.f03
 prec/psb_c_prec_type.f03
 prec/psb_cilu_fct.f90
 prec/psb_cprecbld.f90
 prec/psb_d_base_prec_mod.f03
 prec/psb_d_bjacprec.f03
 prec/psb_d_diagprec.f03
 prec/psb_d_nullprec.f03
 prec/psb_d_prec_type.f03
 prec/psb_dilu_fct.f90
 prec/psb_dprecbld.f90
 prec/psb_prec_mod.f90
 prec/psb_s_base_prec_mod.f03
 prec/psb_s_bjacprec.f03
 prec/psb_s_diagprec.f03
 prec/psb_s_nullprec.f03
 prec/psb_s_prec_type.f03
 prec/psb_silu_fct.f90
 prec/psb_sprecbld.f90
 prec/psb_z_base_prec_mod.f03
 prec/psb_z_bjacprec.f03
 prec/psb_z_diagprec.f03
 prec/psb_z_nullprec.f03
 prec/psb_z_prec_type.f03
 prec/psb_zilu_fct.f90
 prec/psb_zprecbld.f90
 test/fileread/cf_sample.f90
 test/fileread/df_sample.f90
 test/fileread/sf_sample.f90
 test/fileread/zf_sample.f90
 test/pargen/ppde.f90
 test/pargen/spde.f90
 test/serial/d_coo_matgen.f03
 test/serial/d_matgen.f03
 test/torture/psb_c_mvsv_tester.f90
 test/torture/psb_d_mvsv_tester.f90
 test/torture/psb_s_mvsv_tester.f90
 test/torture/psb_z_mvsv_tester.f90
 test/util/dhb2mm.f90
 test/util/dmm2hb.f90
 test/util/zhb2mm.f90
 test/util/zmm2hb.f90
 util/psb_hbio_impl.f90
 util/psb_hbio_mod.f90
 util/psb_mat_dist_impl.f90
 util/psb_mat_dist_mod.f90
 util/psb_metispart_mod.F90
 util/psb_mmio_impl.f90
 util/psb_mmio_mod.f90

Revised name of outer sparse type to be backward-compatible.
psblas3-type-indexed
Salvatore Filippone 14 years ago
parent e2f9cb6ada
commit 8c6358a226

@ -10,8 +10,8 @@ subroutine psb_dsp_allgather(globa, loca, desc_a, info, root, dupl,keepnum,keep
#ifdef MPI_H
include 'mpif.h'
#endif
type(psb_d_sparse_mat), intent(inout) :: loca
type(psb_d_sparse_mat), intent(inout) :: globa
type(psb_dspmat_type), intent(inout) :: loca
type(psb_dspmat_type), intent(inout) :: globa
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
integer, intent(in), optional :: root, dupl

@ -98,7 +98,7 @@ module psb_c_linmap_mod
implicit none
type(psb_clinmap_type) :: psb_c_linmap
type(psb_desc_type), target :: desc_X, desc_Y
type(psb_c_sparse_mat), intent(in) :: map_X2Y, map_Y2X
type(psb_cspmat_type), intent(in) :: map_X2Y, map_Y2X
integer, intent(in) :: map_kind
integer, intent(in), optional :: iaggr(:), naggr(:)
end function psb_c_linmap
@ -200,7 +200,7 @@ contains
implicit none
type(psb_clinmap_type), intent(out) :: out_map
type(psb_desc_type), target :: desc_X, desc_Y
type(psb_c_sparse_mat), intent(in) :: map_X2Y, map_Y2X
type(psb_cspmat_type), intent(in) :: map_X2Y, map_Y2X
integer, intent(in) :: map_kind
integer, intent(in), optional :: iaggr(:), naggr(:)
out_map = psb_linmap(map_kind,desc_X,desc_Y,map_X2Y,map_Y2X,iaggr,naggr)

@ -48,7 +48,7 @@ module psb_c_mat_mod
use psb_c_csr_mat_mod, only : psb_c_csr_sparse_mat
use psb_c_csc_mat_mod, only : psb_c_csc_sparse_mat
type :: psb_c_sparse_mat
type :: psb_cspmat_type
class(psb_c_base_sparse_mat), allocatable :: a
@ -141,7 +141,7 @@ module psb_c_mat_mod
procedure, pass(a) :: c_cssm => psb_c_cssm
generic, public :: cssm => c_cssm, c_cssv
end type psb_c_sparse_mat
end type psb_cspmat_type
private :: psb_c_get_nrows, psb_c_get_ncols, psb_c_get_nzeros, psb_c_get_size, &
& psb_c_get_state, psb_c_get_dupl, psb_c_is_null, psb_c_is_bld, psb_c_is_upd, &
@ -169,100 +169,100 @@ module psb_c_mat_mod
interface
subroutine psb_c_set_nrows(m,a)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(inout) :: a
import :: psb_cspmat_type
class(psb_cspmat_type), intent(inout) :: a
integer, intent(in) :: m
end subroutine psb_c_set_nrows
end interface
interface
subroutine psb_c_set_ncols(n,a)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(inout) :: a
import :: psb_cspmat_type
class(psb_cspmat_type), intent(inout) :: a
integer, intent(in) :: n
end subroutine psb_c_set_ncols
end interface
interface
subroutine psb_c_set_state(n,a)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(inout) :: a
import :: psb_cspmat_type
class(psb_cspmat_type), intent(inout) :: a
integer, intent(in) :: n
end subroutine psb_c_set_state
end interface
interface
subroutine psb_c_set_dupl(n,a)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(inout) :: a
import :: psb_cspmat_type
class(psb_cspmat_type), intent(inout) :: a
integer, intent(in) :: n
end subroutine psb_c_set_dupl
end interface
interface
subroutine psb_c_set_null(a)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(inout) :: a
import :: psb_cspmat_type
class(psb_cspmat_type), intent(inout) :: a
end subroutine psb_c_set_null
end interface
interface
subroutine psb_c_set_bld(a)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(inout) :: a
import :: psb_cspmat_type
class(psb_cspmat_type), intent(inout) :: a
end subroutine psb_c_set_bld
end interface
interface
subroutine psb_c_set_upd(a)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(inout) :: a
import :: psb_cspmat_type
class(psb_cspmat_type), intent(inout) :: a
end subroutine psb_c_set_upd
end interface
interface
subroutine psb_c_set_asb(a)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(inout) :: a
import :: psb_cspmat_type
class(psb_cspmat_type), intent(inout) :: a
end subroutine psb_c_set_asb
end interface
interface
subroutine psb_c_set_sorted(a,val)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(inout) :: a
import :: psb_cspmat_type
class(psb_cspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
end subroutine psb_c_set_sorted
end interface
interface
subroutine psb_c_set_triangle(a,val)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(inout) :: a
import :: psb_cspmat_type
class(psb_cspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
end subroutine psb_c_set_triangle
end interface
interface
subroutine psb_c_set_unit(a,val)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(inout) :: a
import :: psb_cspmat_type
class(psb_cspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
end subroutine psb_c_set_unit
end interface
interface
subroutine psb_c_set_lower(a,val)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(inout) :: a
import :: psb_cspmat_type
class(psb_cspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
end subroutine psb_c_set_lower
end interface
interface
subroutine psb_c_set_upper(a,val)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(inout) :: a
import :: psb_cspmat_type
class(psb_cspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
end subroutine psb_c_set_upper
end interface
@ -270,9 +270,9 @@ module psb_c_mat_mod
interface
subroutine psb_c_sparse_print(iout,a,iv,eirs,eics,head,ivr,ivc)
import :: psb_c_sparse_mat
import :: psb_cspmat_type
integer, intent(in) :: iout
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
integer, intent(in), optional :: iv(:)
integer, intent(in), optional :: eirs,eics
character(len=*), optional :: head
@ -282,8 +282,8 @@ module psb_c_mat_mod
interface
subroutine psb_c_get_neigh(a,idx,neigh,n,info,lev)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(in) :: a
import :: psb_cspmat_type
class(psb_cspmat_type), intent(in) :: a
integer, intent(in) :: idx
integer, intent(out) :: n
integer, allocatable, intent(out) :: neigh(:)
@ -294,8 +294,8 @@ module psb_c_mat_mod
interface
subroutine psb_c_csall(nr,nc,a,info,nz)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(out) :: a
import :: psb_cspmat_type
class(psb_cspmat_type), intent(out) :: a
integer, intent(in) :: nr,nc
integer, intent(out) :: info
integer, intent(in), optional :: nz
@ -304,30 +304,30 @@ module psb_c_mat_mod
interface
subroutine psb_c_reallocate_nz(nz,a)
import :: psb_c_sparse_mat
import :: psb_cspmat_type
integer, intent(in) :: nz
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
end subroutine psb_c_reallocate_nz
end interface
interface
subroutine psb_c_free(a)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(inout) :: a
import :: psb_cspmat_type
class(psb_cspmat_type), intent(inout) :: a
end subroutine psb_c_free
end interface
interface
subroutine psb_c_trim(a)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(inout) :: a
import :: psb_cspmat_type
class(psb_cspmat_type), intent(inout) :: a
end subroutine psb_c_trim
end interface
interface
subroutine psb_c_csput(nz,ia,ja,val,a,imin,imax,jmin,jmax,info,gtl)
import :: psb_c_sparse_mat, psb_spk_
class(psb_c_sparse_mat), intent(inout) :: a
import :: psb_cspmat_type, psb_spk_
class(psb_cspmat_type), intent(inout) :: a
complex(psb_spk_), intent(in) :: val(:)
integer, intent(in) :: nz, ia(:), ja(:), imin,imax,jmin,jmax
integer, intent(out) :: info
@ -338,8 +338,8 @@ module psb_c_mat_mod
interface
subroutine psb_c_csgetptn(imin,imax,a,nz,ia,ja,info,&
& jmin,jmax,iren,append,nzin,rscale,cscale)
import :: psb_c_sparse_mat, psb_spk_
class(psb_c_sparse_mat), intent(in) :: a
import :: psb_cspmat_type, psb_spk_
class(psb_cspmat_type), intent(in) :: a
integer, intent(in) :: imin,imax
integer, intent(out) :: nz
integer, allocatable, intent(inout) :: ia(:), ja(:)
@ -354,8 +354,8 @@ module psb_c_mat_mod
interface
subroutine psb_c_csgetrow(imin,imax,a,nz,ia,ja,val,info,&
& jmin,jmax,iren,append,nzin,rscale,cscale)
import :: psb_c_sparse_mat, psb_spk_
class(psb_c_sparse_mat), intent(in) :: a
import :: psb_cspmat_type, psb_spk_
class(psb_cspmat_type), intent(in) :: a
integer, intent(in) :: imin,imax
integer, intent(out) :: nz
integer, allocatable, intent(inout) :: ia(:), ja(:)
@ -371,9 +371,9 @@ module psb_c_mat_mod
interface
subroutine psb_c_csgetblk(imin,imax,a,b,info,&
& jmin,jmax,iren,append,rscale,cscale)
import :: psb_c_sparse_mat, psb_spk_
class(psb_c_sparse_mat), intent(in) :: a
class(psb_c_sparse_mat), intent(out) :: b
import :: psb_cspmat_type, psb_spk_
class(psb_cspmat_type), intent(in) :: a
class(psb_cspmat_type), intent(out) :: b
integer, intent(in) :: imin,imax
integer,intent(out) :: info
logical, intent(in), optional :: append
@ -386,9 +386,9 @@ module psb_c_mat_mod
interface
subroutine psb_c_csclip(a,b,info,&
& imin,imax,jmin,jmax,rscale,cscale)
import :: psb_c_sparse_mat, psb_spk_
class(psb_c_sparse_mat), intent(in) :: a
class(psb_c_sparse_mat), intent(out) :: b
import :: psb_cspmat_type, psb_spk_
class(psb_cspmat_type), intent(in) :: a
class(psb_cspmat_type), intent(out) :: b
integer,intent(out) :: info
integer, intent(in), optional :: imin,imax,jmin,jmax
logical, intent(in), optional :: rscale,cscale
@ -398,8 +398,8 @@ module psb_c_mat_mod
interface
subroutine psb_c_b_csclip(a,b,info,&
& imin,imax,jmin,jmax,rscale,cscale)
import :: psb_c_sparse_mat, psb_spk_, psb_c_coo_sparse_mat
class(psb_c_sparse_mat), intent(in) :: a
import :: psb_cspmat_type, psb_spk_, psb_c_coo_sparse_mat
class(psb_cspmat_type), intent(in) :: a
type(psb_c_coo_sparse_mat), intent(out) :: b
integer,intent(out) :: info
integer, intent(in), optional :: imin,imax,jmin,jmax
@ -409,9 +409,9 @@ module psb_c_mat_mod
interface
subroutine psb_c_cscnv(a,b,info,type,mold,upd,dupl)
import :: psb_c_sparse_mat, psb_spk_, psb_c_base_sparse_mat
class(psb_c_sparse_mat), intent(in) :: a
class(psb_c_sparse_mat), intent(out) :: b
import :: psb_cspmat_type, psb_spk_, psb_c_base_sparse_mat
class(psb_cspmat_type), intent(in) :: a
class(psb_cspmat_type), intent(out) :: b
integer, intent(out) :: info
integer,optional, intent(in) :: dupl, upd
character(len=*), optional, intent(in) :: type
@ -422,8 +422,8 @@ module psb_c_mat_mod
interface
subroutine psb_c_cscnv_ip(a,iinfo,type,mold,dupl)
import :: psb_c_sparse_mat, psb_spk_, psb_c_base_sparse_mat
class(psb_c_sparse_mat), intent(inout) :: a
import :: psb_cspmat_type, psb_spk_, psb_c_base_sparse_mat
class(psb_cspmat_type), intent(inout) :: a
integer, intent(out) :: iinfo
integer,optional, intent(in) :: dupl
character(len=*), optional, intent(in) :: type
@ -434,8 +434,8 @@ module psb_c_mat_mod
interface
subroutine psb_c_cscnv_base(a,b,info,dupl)
import :: psb_c_sparse_mat, psb_spk_, psb_c_base_sparse_mat
class(psb_c_sparse_mat), intent(in) :: a
import :: psb_cspmat_type, psb_spk_, psb_c_base_sparse_mat
class(psb_cspmat_type), intent(in) :: a
class(psb_c_base_sparse_mat), intent(out) :: b
integer, intent(out) :: info
integer,optional, intent(in) :: dupl
@ -444,106 +444,106 @@ module psb_c_mat_mod
interface
subroutine psb_c_clip_d(a,b,info)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(in) :: a
class(psb_c_sparse_mat), intent(out) :: b
import :: psb_cspmat_type
class(psb_cspmat_type), intent(in) :: a
class(psb_cspmat_type), intent(out) :: b
integer,intent(out) :: info
end subroutine psb_c_clip_d
end interface
interface
subroutine psb_c_clip_d_ip(a,info)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(inout) :: a
import :: psb_cspmat_type
class(psb_cspmat_type), intent(inout) :: a
integer,intent(out) :: info
end subroutine psb_c_clip_d_ip
end interface
interface
subroutine psb_c_mv_from(a,b)
import :: psb_c_sparse_mat, psb_spk_, psb_c_base_sparse_mat
class(psb_c_sparse_mat), intent(out) :: a
import :: psb_cspmat_type, psb_spk_, psb_c_base_sparse_mat
class(psb_cspmat_type), intent(out) :: a
class(psb_c_base_sparse_mat), intent(inout) :: b
end subroutine psb_c_mv_from
end interface
interface
subroutine psb_c_cp_from(a,b)
import :: psb_c_sparse_mat, psb_spk_, psb_c_base_sparse_mat
class(psb_c_sparse_mat), intent(out) :: a
import :: psb_cspmat_type, psb_spk_, psb_c_base_sparse_mat
class(psb_cspmat_type), intent(out) :: a
class(psb_c_base_sparse_mat), intent(inout), allocatable :: b
end subroutine psb_c_cp_from
end interface
interface
subroutine psb_c_mv_to(a,b)
import :: psb_c_sparse_mat, psb_spk_, psb_c_base_sparse_mat
class(psb_c_sparse_mat), intent(inout) :: a
import :: psb_cspmat_type, psb_spk_, psb_c_base_sparse_mat
class(psb_cspmat_type), intent(inout) :: a
class(psb_c_base_sparse_mat), intent(out) :: b
end subroutine psb_c_mv_to
end interface
interface
subroutine psb_c_cp_to(a,b)
import :: psb_c_sparse_mat, psb_spk_, psb_c_base_sparse_mat
class(psb_c_sparse_mat), intent(in) :: a
import :: psb_cspmat_type, psb_spk_, psb_c_base_sparse_mat
class(psb_cspmat_type), intent(in) :: a
class(psb_c_base_sparse_mat), intent(out) :: b
end subroutine psb_c_cp_to
end interface
interface psb_move_alloc
subroutine psb_c_sparse_mat_move(a,b,info)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_c_sparse_mat), intent(out) :: b
subroutine psb_cspmat_type_move(a,b,info)
import :: psb_cspmat_type
class(psb_cspmat_type), intent(inout) :: a
class(psb_cspmat_type), intent(out) :: b
integer, intent(out) :: info
end subroutine psb_c_sparse_mat_move
end subroutine psb_cspmat_type_move
end interface
interface psb_clone
subroutine psb_c_sparse_mat_clone(a,b,info)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(in) :: a
class(psb_c_sparse_mat), intent(out) :: b
subroutine psb_cspmat_type_clone(a,b,info)
import :: psb_cspmat_type
class(psb_cspmat_type), intent(in) :: a
class(psb_cspmat_type), intent(out) :: b
integer, intent(out) :: info
end subroutine psb_c_sparse_mat_clone
end subroutine psb_cspmat_type_clone
end interface
interface
subroutine psb_c_transp_1mat(a)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(inout) :: a
import :: psb_cspmat_type
class(psb_cspmat_type), intent(inout) :: a
end subroutine psb_c_transp_1mat
end interface
interface
subroutine psb_c_transp_2mat(a,b)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(out) :: a
class(psb_c_sparse_mat), intent(in) :: b
import :: psb_cspmat_type
class(psb_cspmat_type), intent(out) :: a
class(psb_cspmat_type), intent(in) :: b
end subroutine psb_c_transp_2mat
end interface
interface
subroutine psb_c_transc_1mat(a)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(inout) :: a
import :: psb_cspmat_type
class(psb_cspmat_type), intent(inout) :: a
end subroutine psb_c_transc_1mat
end interface
interface
subroutine psb_c_transc_2mat(a,b)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(out) :: a
class(psb_c_sparse_mat), intent(in) :: b
import :: psb_cspmat_type
class(psb_cspmat_type), intent(out) :: a
class(psb_cspmat_type), intent(in) :: b
end subroutine psb_c_transc_2mat
end interface
interface
subroutine psb_c_reinit(a,clear)
import :: psb_c_sparse_mat
class(psb_c_sparse_mat), intent(inout) :: a
import :: psb_cspmat_type
class(psb_cspmat_type), intent(inout) :: a
logical, intent(in), optional :: clear
end subroutine psb_c_reinit
@ -566,16 +566,16 @@ module psb_c_mat_mod
interface psb_csmm
subroutine psb_c_csmm(alpha,a,x,beta,y,info,trans)
import :: psb_c_sparse_mat, psb_spk_
class(psb_c_sparse_mat), intent(in) :: a
import :: psb_cspmat_type, psb_spk_
class(psb_cspmat_type), intent(in) :: a
complex(psb_spk_), intent(in) :: alpha, beta, x(:,:)
complex(psb_spk_), intent(inout) :: y(:,:)
integer, intent(out) :: info
character, optional, intent(in) :: trans
end subroutine psb_c_csmm
subroutine psb_c_csmv(alpha,a,x,beta,y,info,trans)
import :: psb_c_sparse_mat, psb_spk_
class(psb_c_sparse_mat), intent(in) :: a
import :: psb_cspmat_type, psb_spk_
class(psb_cspmat_type), intent(in) :: a
complex(psb_spk_), intent(in) :: alpha, beta, x(:)
complex(psb_spk_), intent(inout) :: y(:)
integer, intent(out) :: info
@ -585,8 +585,8 @@ module psb_c_mat_mod
interface psb_cssm
subroutine psb_c_cssm(alpha,a,x,beta,y,info,trans,scale,d)
import :: psb_c_sparse_mat, psb_spk_
class(psb_c_sparse_mat), intent(in) :: a
import :: psb_cspmat_type, psb_spk_
class(psb_cspmat_type), intent(in) :: a
complex(psb_spk_), intent(in) :: alpha, beta, x(:,:)
complex(psb_spk_), intent(inout) :: y(:,:)
integer, intent(out) :: info
@ -594,8 +594,8 @@ module psb_c_mat_mod
complex(psb_spk_), intent(in), optional :: d(:)
end subroutine psb_c_cssm
subroutine psb_c_cssv(alpha,a,x,beta,y,info,trans,scale,d)
import :: psb_c_sparse_mat, psb_spk_
class(psb_c_sparse_mat), intent(in) :: a
import :: psb_cspmat_type, psb_spk_
class(psb_cspmat_type), intent(in) :: a
complex(psb_spk_), intent(in) :: alpha, beta, x(:)
complex(psb_spk_), intent(inout) :: y(:)
integer, intent(out) :: info
@ -606,16 +606,16 @@ module psb_c_mat_mod
interface
function psb_c_csnmi(a) result(res)
import :: psb_c_sparse_mat, psb_spk_
class(psb_c_sparse_mat), intent(in) :: a
import :: psb_cspmat_type, psb_spk_
class(psb_cspmat_type), intent(in) :: a
real(psb_spk_) :: res
end function psb_c_csnmi
end interface
interface
subroutine psb_c_get_diag(a,d,info)
import :: psb_c_sparse_mat, psb_spk_
class(psb_c_sparse_mat), intent(in) :: a
import :: psb_cspmat_type, psb_spk_
class(psb_cspmat_type), intent(in) :: a
complex(psb_spk_), intent(out) :: d(:)
integer, intent(out) :: info
end subroutine psb_c_get_diag
@ -623,14 +623,14 @@ module psb_c_mat_mod
interface psb_scal
subroutine psb_c_scal(d,a,info)
import :: psb_c_sparse_mat, psb_spk_
class(psb_c_sparse_mat), intent(inout) :: a
import :: psb_cspmat_type, psb_spk_
class(psb_cspmat_type), intent(inout) :: a
complex(psb_spk_), intent(in) :: d(:)
integer, intent(out) :: info
end subroutine psb_c_scal
subroutine psb_c_scals(d,a,info)
import :: psb_c_sparse_mat, psb_spk_
class(psb_c_sparse_mat), intent(inout) :: a
import :: psb_cspmat_type, psb_spk_
class(psb_cspmat_type), intent(inout) :: a
complex(psb_spk_), intent(in) :: d
integer, intent(out) :: info
end subroutine psb_c_scals
@ -657,7 +657,7 @@ contains
function psb_c_sizeof(a) result(res)
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
integer(psb_long_int_k_) :: res
res = 0
@ -671,7 +671,7 @@ contains
function psb_c_get_fmt(a) result(res)
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
character(len=5) :: res
if (allocated(a%a)) then
@ -685,7 +685,7 @@ contains
function psb_c_get_dupl(a) result(res)
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
integer :: res
if (allocated(a%a)) then
@ -698,7 +698,7 @@ contains
function psb_c_get_state(a) result(res)
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
integer :: res
if (allocated(a%a)) then
@ -710,7 +710,7 @@ contains
function psb_c_get_nrows(a) result(res)
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
integer :: res
if (allocated(a%a)) then
@ -723,7 +723,7 @@ contains
function psb_c_get_ncols(a) result(res)
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
integer :: res
if (allocated(a%a)) then
@ -736,7 +736,7 @@ contains
function psb_c_is_triangle(a) result(res)
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -749,7 +749,7 @@ contains
function psb_c_is_unit(a) result(res)
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -762,7 +762,7 @@ contains
function psb_c_is_upper(a) result(res)
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -775,7 +775,7 @@ contains
function psb_c_is_lower(a) result(res)
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -788,7 +788,7 @@ contains
function psb_c_is_null(a) result(res)
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -801,7 +801,7 @@ contains
function psb_c_is_bld(a) result(res)
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -814,7 +814,7 @@ contains
function psb_c_is_upd(a) result(res)
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -827,7 +827,7 @@ contains
function psb_c_is_asb(a) result(res)
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -840,7 +840,7 @@ contains
function psb_c_is_sorted(a) result(res)
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -855,7 +855,7 @@ contains
function psb_c_get_nzeros(a) result(res)
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
integer :: res
res = 0
@ -868,7 +868,7 @@ contains
function psb_c_get_size(a) result(res)
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
integer :: res
@ -883,7 +883,7 @@ contains
function psb_c_get_nz_row(idx,a) result(res)
implicit none
integer, intent(in) :: idx
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
integer :: res
res = 0

@ -193,9 +193,9 @@ module psb_c_psblas_mod
interface psb_spnrmi
function psb_cnrmi(a, desc_a,info)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_c_sparse_mat
use psb_mat_mod, only : psb_cspmat_type
real(psb_spk_) :: psb_cnrmi
type(psb_c_sparse_mat), intent (in) :: a
type(psb_cspmat_type), intent (in) :: a
type(psb_desc_type), intent (in) :: desc_a
integer, intent(out) :: info
end function psb_cnrmi
@ -205,8 +205,8 @@ module psb_c_psblas_mod
subroutine psb_cspmm(alpha, a, x, beta, y, desc_a, info,&
&trans, k, jx, jy,work,doswap)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_c_sparse_mat
type(psb_c_sparse_mat), intent(in) :: a
use psb_mat_mod, only : psb_cspmat_type
type(psb_cspmat_type), intent(in) :: a
complex(psb_spk_), intent(inout) :: x(:,:)
complex(psb_spk_), intent(inout) :: y(:,:)
complex(psb_spk_), intent(in) :: alpha, beta
@ -220,8 +220,8 @@ module psb_c_psblas_mod
subroutine psb_cspmv(alpha, a, x, beta, y,&
& desc_a, info, trans, work,doswap)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_c_sparse_mat
type(psb_c_sparse_mat), intent(in) :: a
use psb_mat_mod, only : psb_cspmat_type
type(psb_cspmat_type), intent(in) :: a
complex(psb_spk_), intent(inout) :: x(:)
complex(psb_spk_), intent(inout) :: y(:)
complex(psb_spk_), intent(in) :: alpha, beta
@ -238,8 +238,8 @@ module psb_c_psblas_mod
& desc_a, info, trans, scale, choice,&
& diag, n, jx, jy, work)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_c_sparse_mat
type(psb_c_sparse_mat), intent(in) :: t
use psb_mat_mod, only : psb_cspmat_type
type(psb_cspmat_type), intent(in) :: t
complex(psb_spk_), intent(in) :: x(:,:)
complex(psb_spk_), intent(inout) :: y(:,:)
complex(psb_spk_), intent(in) :: alpha, beta
@ -255,8 +255,8 @@ module psb_c_psblas_mod
& desc_a, info, trans, scale, choice,&
& diag, work)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_c_sparse_mat
type(psb_c_sparse_mat), intent(in) :: t
use psb_mat_mod, only : psb_cspmat_type
type(psb_cspmat_type), intent(in) :: t
complex(psb_spk_), intent(in) :: x(:)
complex(psb_spk_), intent(inout) :: y(:)
complex(psb_spk_), intent(in) :: alpha, beta

@ -70,9 +70,9 @@ Module psb_c_tools_mod
Subroutine psb_csphalo(a,desc_a,blk,info,rowcnv,colcnv,&
& rowscale,colscale,outfmt,data)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_c_sparse_mat
Type(psb_c_sparse_mat),Intent(in) :: a
Type(psb_c_sparse_mat),Intent(inout) :: blk
use psb_mat_mod, only : psb_cspmat_type
Type(psb_cspmat_type),Intent(in) :: a
Type(psb_cspmat_type),Intent(inout) :: blk
Type(psb_desc_type),Intent(in) :: desc_a
integer, intent(out) :: info
logical, optional, intent(in) :: rowcnv,colcnv,rowscale,colscale
@ -124,9 +124,9 @@ Module psb_c_tools_mod
interface psb_cdbldext
Subroutine psb_ccdbldext(a,desc_a,novr,desc_ov,info,extype)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_c_sparse_mat
use psb_mat_mod, only : psb_cspmat_type
integer, intent(in) :: novr
Type(psb_c_sparse_mat), Intent(in) :: a
Type(psb_cspmat_type), Intent(in) :: a
Type(psb_desc_type), Intent(in), target :: desc_a
Type(psb_desc_type), Intent(out) :: desc_ov
integer, intent(out) :: info
@ -137,9 +137,9 @@ Module psb_c_tools_mod
interface psb_spall
subroutine psb_cspalloc(a, desc_a, info, nnz)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_c_sparse_mat
use psb_mat_mod, only : psb_cspmat_type
type(psb_desc_type), intent(in) :: desc_a
type(psb_c_sparse_mat), intent(inout) :: a
type(psb_cspmat_type), intent(inout) :: a
integer, intent(out) :: info
integer, optional, intent(in) :: nnz
end subroutine psb_cspalloc
@ -148,8 +148,8 @@ Module psb_c_tools_mod
interface psb_spasb
subroutine psb_cspasb(a,desc_a, info, afmt, upd, dupl,mold)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_c_sparse_mat, psb_c_base_sparse_mat
type(psb_c_sparse_mat), intent (inout) :: a
use psb_mat_mod, only : psb_cspmat_type, psb_c_base_sparse_mat
type(psb_cspmat_type), intent (inout) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
integer,optional, intent(in) :: dupl, upd
@ -161,9 +161,9 @@ Module psb_c_tools_mod
interface psb_spfree
subroutine psb_cspfree(a, desc_a,info)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_c_sparse_mat
use psb_mat_mod, only : psb_cspmat_type
type(psb_desc_type), intent(in) :: desc_a
type(psb_c_sparse_mat), intent(inout) ::a
type(psb_cspmat_type), intent(inout) ::a
integer, intent(out) :: info
end subroutine psb_cspfree
end interface
@ -172,9 +172,9 @@ Module psb_c_tools_mod
interface psb_spins
subroutine psb_cspins(nz,ia,ja,val,a,desc_a,info,rebuild)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_c_sparse_mat
use psb_mat_mod, only : psb_cspmat_type
type(psb_desc_type), intent(inout) :: desc_a
type(psb_c_sparse_mat), intent(inout) :: a
type(psb_cspmat_type), intent(inout) :: a
integer, intent(in) :: nz,ia(:),ja(:)
complex(psb_spk_), intent(in) :: val(:)
integer, intent(out) :: info
@ -182,10 +182,10 @@ Module psb_c_tools_mod
end subroutine psb_cspins
subroutine psb_cspins_2desc(nz,ia,ja,val,a,desc_ar,desc_ac,info)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_c_sparse_mat
use psb_mat_mod, only : psb_cspmat_type
type(psb_desc_type), intent(in) :: desc_ar
type(psb_desc_type), intent(inout) :: desc_ac
type(psb_c_sparse_mat), intent(inout) :: a
type(psb_cspmat_type), intent(inout) :: a
integer, intent(in) :: nz,ia(:),ja(:)
complex(psb_spk_), intent(in) :: val(:)
integer, intent(out) :: info
@ -196,9 +196,9 @@ Module psb_c_tools_mod
interface psb_sprn
subroutine psb_csprn(a, desc_a,info,clear)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_c_sparse_mat
use psb_mat_mod, only : psb_cspmat_type
type(psb_desc_type), intent(in) :: desc_a
type(psb_c_sparse_mat), intent(inout) :: a
type(psb_cspmat_type), intent(inout) :: a
integer, intent(out) :: info
logical, intent(in), optional :: clear
end subroutine psb_csprn
@ -226,7 +226,7 @@ Module psb_c_tools_mod
!!$ use psb_penv_mod
!!$ use psb_error_mod
!!$ implicit none
!!$ type(psb_c_sparse_mat), intent(out) :: a_map
!!$ type(psb_cspmat_type), intent(out) :: a_map
!!$ type(psb_desc_type), intent(out) :: cd_xt
!!$ type(psb_desc_type), intent(in) :: descin, descout
!!$
@ -259,7 +259,7 @@ Module psb_c_tools_mod
!!$ integer, intent(in) :: nz
!!$ integer, intent(in) :: ir(:),ic(:)
!!$ complex(psb_spk_), intent(in) :: val(:)
!!$ type(psb_c_sparse_mat), intent(inout) :: a_map
!!$ type(psb_cspmat_type), intent(inout) :: a_map
!!$ type(psb_desc_type), intent(inout) :: cd_xt
!!$ type(psb_desc_type), intent(in) :: descin, descout
!!$ integer :: info
@ -274,7 +274,7 @@ Module psb_c_tools_mod
!!$ use psb_descriptor_type
!!$ use psb_serial_mod
!!$ implicit none
!!$ type(psb_c_sparse_mat), intent(inout) :: a_map
!!$ type(psb_cspmat_type), intent(inout) :: a_map
!!$ type(psb_desc_type), intent(inout) :: cd_xt
!!$ type(psb_desc_type), intent(in) :: descin, descout
!!$ character(len=*), optional, intent(in) :: afmt

@ -306,8 +306,8 @@ module psb_comm_mod
use psb_descriptor_type
use psb_mat_mod
implicit none
type(psb_d_sparse_mat), intent(inout) :: loca
type(psb_d_sparse_mat), intent(out) :: globa
type(psb_dspmat_type), intent(inout) :: loca
type(psb_dspmat_type), intent(out) :: globa
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
integer, intent(in), optional :: root,dupl

@ -98,7 +98,7 @@ module psb_d_linmap_mod
implicit none
type(psb_dlinmap_type) :: psb_d_linmap
type(psb_desc_type), target :: desc_X, desc_Y
type(psb_d_sparse_mat), intent(in) :: map_X2Y, map_Y2X
type(psb_dspmat_type), intent(in) :: map_X2Y, map_Y2X
integer, intent(in) :: map_kind
integer, intent(in), optional :: iaggr(:), naggr(:)
end function psb_d_linmap
@ -201,7 +201,7 @@ contains
implicit none
type(psb_dlinmap_type), intent(out) :: out_map
type(psb_desc_type), target :: desc_X, desc_Y
type(psb_d_sparse_mat), intent(in) :: map_X2Y, map_Y2X
type(psb_dspmat_type), intent(in) :: map_X2Y, map_Y2X
integer, intent(in) :: map_kind
integer, intent(in), optional :: iaggr(:), naggr(:)
out_map = psb_linmap(map_kind,desc_X,desc_Y,map_X2Y,map_Y2X,iaggr,naggr)

@ -47,7 +47,7 @@ module psb_d_mat_mod
use psb_d_csr_mat_mod, only : psb_d_csr_sparse_mat
use psb_d_csc_mat_mod, only : psb_d_csc_sparse_mat
type :: psb_d_sparse_mat
type :: psb_dspmat_type
class(psb_d_base_sparse_mat), allocatable :: a
@ -145,7 +145,7 @@ module psb_d_mat_mod
procedure, pass(a) :: d_cssm => psb_d_cssm
generic, public :: cssm => d_cssm, d_cssv
end type psb_d_sparse_mat
end type psb_dspmat_type
private :: psb_d_get_nrows, psb_d_get_ncols, psb_d_get_nzeros, psb_d_get_size, &
& psb_d_get_state, psb_d_get_dupl, psb_d_is_null, psb_d_is_bld, psb_d_is_upd, &
@ -173,100 +173,100 @@ module psb_d_mat_mod
interface
subroutine psb_d_set_nrows(m,a)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(inout) :: a
import :: psb_dspmat_type
class(psb_dspmat_type), intent(inout) :: a
integer, intent(in) :: m
end subroutine psb_d_set_nrows
end interface
interface
subroutine psb_d_set_ncols(n,a)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(inout) :: a
import :: psb_dspmat_type
class(psb_dspmat_type), intent(inout) :: a
integer, intent(in) :: n
end subroutine psb_d_set_ncols
end interface
interface
subroutine psb_d_set_state(n,a)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(inout) :: a
import :: psb_dspmat_type
class(psb_dspmat_type), intent(inout) :: a
integer, intent(in) :: n
end subroutine psb_d_set_state
end interface
interface
subroutine psb_d_set_dupl(n,a)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(inout) :: a
import :: psb_dspmat_type
class(psb_dspmat_type), intent(inout) :: a
integer, intent(in) :: n
end subroutine psb_d_set_dupl
end interface
interface
subroutine psb_d_set_null(a)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(inout) :: a
import :: psb_dspmat_type
class(psb_dspmat_type), intent(inout) :: a
end subroutine psb_d_set_null
end interface
interface
subroutine psb_d_set_bld(a)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(inout) :: a
import :: psb_dspmat_type
class(psb_dspmat_type), intent(inout) :: a
end subroutine psb_d_set_bld
end interface
interface
subroutine psb_d_set_upd(a)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(inout) :: a
import :: psb_dspmat_type
class(psb_dspmat_type), intent(inout) :: a
end subroutine psb_d_set_upd
end interface
interface
subroutine psb_d_set_asb(a)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(inout) :: a
import :: psb_dspmat_type
class(psb_dspmat_type), intent(inout) :: a
end subroutine psb_d_set_asb
end interface
interface
subroutine psb_d_set_sorted(a,val)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(inout) :: a
import :: psb_dspmat_type
class(psb_dspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
end subroutine psb_d_set_sorted
end interface
interface
subroutine psb_d_set_triangle(a,val)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(inout) :: a
import :: psb_dspmat_type
class(psb_dspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
end subroutine psb_d_set_triangle
end interface
interface
subroutine psb_d_set_unit(a,val)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(inout) :: a
import :: psb_dspmat_type
class(psb_dspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
end subroutine psb_d_set_unit
end interface
interface
subroutine psb_d_set_lower(a,val)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(inout) :: a
import :: psb_dspmat_type
class(psb_dspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
end subroutine psb_d_set_lower
end interface
interface
subroutine psb_d_set_upper(a,val)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(inout) :: a
import :: psb_dspmat_type
class(psb_dspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
end subroutine psb_d_set_upper
end interface
@ -274,9 +274,9 @@ module psb_d_mat_mod
interface
subroutine psb_d_sparse_print(iout,a,iv,eirs,eics,head,ivr,ivc)
import :: psb_d_sparse_mat
import :: psb_dspmat_type
integer, intent(in) :: iout
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
integer, intent(in), optional :: iv(:)
integer, intent(in), optional :: eirs,eics
character(len=*), optional :: head
@ -286,8 +286,8 @@ module psb_d_mat_mod
interface
subroutine psb_d_get_neigh(a,idx,neigh,n,info,lev)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(in) :: a
import :: psb_dspmat_type
class(psb_dspmat_type), intent(in) :: a
integer, intent(in) :: idx
integer, intent(out) :: n
integer, allocatable, intent(out) :: neigh(:)
@ -298,8 +298,8 @@ module psb_d_mat_mod
interface
subroutine psb_d_csall(nr,nc,a,info,nz)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(out) :: a
import :: psb_dspmat_type
class(psb_dspmat_type), intent(out) :: a
integer, intent(in) :: nr,nc
integer, intent(out) :: info
integer, intent(in), optional :: nz
@ -308,30 +308,30 @@ module psb_d_mat_mod
interface
subroutine psb_d_reallocate_nz(nz,a)
import :: psb_d_sparse_mat
import :: psb_dspmat_type
integer, intent(in) :: nz
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
end subroutine psb_d_reallocate_nz
end interface
interface
subroutine psb_d_free(a)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(inout) :: a
import :: psb_dspmat_type
class(psb_dspmat_type), intent(inout) :: a
end subroutine psb_d_free
end interface
interface
subroutine psb_d_trim(a)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(inout) :: a
import :: psb_dspmat_type
class(psb_dspmat_type), intent(inout) :: a
end subroutine psb_d_trim
end interface
interface
subroutine psb_d_csput(nz,ia,ja,val,a,imin,imax,jmin,jmax,info,gtl)
import :: psb_d_sparse_mat, psb_dpk_
class(psb_d_sparse_mat), intent(inout) :: a
import :: psb_dspmat_type, psb_dpk_
class(psb_dspmat_type), intent(inout) :: a
real(psb_dpk_), intent(in) :: val(:)
integer, intent(in) :: nz, ia(:), ja(:), imin,imax,jmin,jmax
integer, intent(out) :: info
@ -342,8 +342,8 @@ module psb_d_mat_mod
interface
subroutine psb_d_csgetptn(imin,imax,a,nz,ia,ja,info,&
& jmin,jmax,iren,append,nzin,rscale,cscale)
import :: psb_d_sparse_mat, psb_dpk_
class(psb_d_sparse_mat), intent(in) :: a
import :: psb_dspmat_type, psb_dpk_
class(psb_dspmat_type), intent(in) :: a
integer, intent(in) :: imin,imax
integer, intent(out) :: nz
integer, allocatable, intent(inout) :: ia(:), ja(:)
@ -358,8 +358,8 @@ module psb_d_mat_mod
interface
subroutine psb_d_csgetrow(imin,imax,a,nz,ia,ja,val,info,&
& jmin,jmax,iren,append,nzin,rscale,cscale)
import :: psb_d_sparse_mat, psb_dpk_
class(psb_d_sparse_mat), intent(in) :: a
import :: psb_dspmat_type, psb_dpk_
class(psb_dspmat_type), intent(in) :: a
integer, intent(in) :: imin,imax
integer, intent(out) :: nz
integer, allocatable, intent(inout) :: ia(:), ja(:)
@ -375,9 +375,9 @@ module psb_d_mat_mod
interface
subroutine psb_d_csgetblk(imin,imax,a,b,info,&
& jmin,jmax,iren,append,rscale,cscale)
import :: psb_d_sparse_mat, psb_dpk_
class(psb_d_sparse_mat), intent(in) :: a
class(psb_d_sparse_mat), intent(out) :: b
import :: psb_dspmat_type, psb_dpk_
class(psb_dspmat_type), intent(in) :: a
class(psb_dspmat_type), intent(out) :: b
integer, intent(in) :: imin,imax
integer,intent(out) :: info
logical, intent(in), optional :: append
@ -390,9 +390,9 @@ module psb_d_mat_mod
interface
subroutine psb_d_csclip(a,b,info,&
& imin,imax,jmin,jmax,rscale,cscale)
import :: psb_d_sparse_mat, psb_dpk_
class(psb_d_sparse_mat), intent(in) :: a
class(psb_d_sparse_mat), intent(out) :: b
import :: psb_dspmat_type, psb_dpk_
class(psb_dspmat_type), intent(in) :: a
class(psb_dspmat_type), intent(out) :: b
integer,intent(out) :: info
integer, intent(in), optional :: imin,imax,jmin,jmax
logical, intent(in), optional :: rscale,cscale
@ -402,8 +402,8 @@ module psb_d_mat_mod
interface
subroutine psb_d_b_csclip(a,b,info,&
& imin,imax,jmin,jmax,rscale,cscale)
import :: psb_d_sparse_mat, psb_dpk_, psb_d_coo_sparse_mat
class(psb_d_sparse_mat), intent(in) :: a
import :: psb_dspmat_type, psb_dpk_, psb_d_coo_sparse_mat
class(psb_dspmat_type), intent(in) :: a
type(psb_d_coo_sparse_mat), intent(out) :: b
integer,intent(out) :: info
integer, intent(in), optional :: imin,imax,jmin,jmax
@ -413,9 +413,9 @@ module psb_d_mat_mod
interface
subroutine psb_d_cscnv(a,b,info,type,mold,upd,dupl)
import :: psb_d_sparse_mat, psb_dpk_, psb_d_base_sparse_mat
class(psb_d_sparse_mat), intent(in) :: a
class(psb_d_sparse_mat), intent(out) :: b
import :: psb_dspmat_type, psb_dpk_, psb_d_base_sparse_mat
class(psb_dspmat_type), intent(in) :: a
class(psb_dspmat_type), intent(out) :: b
integer, intent(out) :: info
integer,optional, intent(in) :: dupl, upd
character(len=*), optional, intent(in) :: type
@ -426,8 +426,8 @@ module psb_d_mat_mod
interface
subroutine psb_d_cscnv_ip(a,iinfo,type,mold,dupl)
import :: psb_d_sparse_mat, psb_dpk_, psb_d_base_sparse_mat
class(psb_d_sparse_mat), intent(inout) :: a
import :: psb_dspmat_type, psb_dpk_, psb_d_base_sparse_mat
class(psb_dspmat_type), intent(inout) :: a
integer, intent(out) :: iinfo
integer,optional, intent(in) :: dupl
character(len=*), optional, intent(in) :: type
@ -438,8 +438,8 @@ module psb_d_mat_mod
interface
subroutine psb_d_cscnv_base(a,b,info,dupl)
import :: psb_d_sparse_mat, psb_dpk_, psb_d_base_sparse_mat
class(psb_d_sparse_mat), intent(in) :: a
import :: psb_dspmat_type, psb_dpk_, psb_d_base_sparse_mat
class(psb_dspmat_type), intent(in) :: a
class(psb_d_base_sparse_mat), intent(out) :: b
integer, intent(out) :: info
integer,optional, intent(in) :: dupl
@ -448,106 +448,106 @@ module psb_d_mat_mod
interface
subroutine psb_d_clip_d(a,b,info)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(in) :: a
class(psb_d_sparse_mat), intent(out) :: b
import :: psb_dspmat_type
class(psb_dspmat_type), intent(in) :: a
class(psb_dspmat_type), intent(out) :: b
integer,intent(out) :: info
end subroutine psb_d_clip_d
end interface
interface
subroutine psb_d_clip_d_ip(a,info)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(inout) :: a
import :: psb_dspmat_type
class(psb_dspmat_type), intent(inout) :: a
integer,intent(out) :: info
end subroutine psb_d_clip_d_ip
end interface
interface
subroutine psb_d_mv_from(a,b)
import :: psb_d_sparse_mat, psb_dpk_, psb_d_base_sparse_mat
class(psb_d_sparse_mat), intent(out) :: a
import :: psb_dspmat_type, psb_dpk_, psb_d_base_sparse_mat
class(psb_dspmat_type), intent(out) :: a
class(psb_d_base_sparse_mat), intent(inout) :: b
end subroutine psb_d_mv_from
end interface
interface
subroutine psb_d_cp_from(a,b)
import :: psb_d_sparse_mat, psb_dpk_, psb_d_base_sparse_mat
class(psb_d_sparse_mat), intent(out) :: a
import :: psb_dspmat_type, psb_dpk_, psb_d_base_sparse_mat
class(psb_dspmat_type), intent(out) :: a
class(psb_d_base_sparse_mat), intent(inout), allocatable :: b
end subroutine psb_d_cp_from
end interface
interface
subroutine psb_d_mv_to(a,b)
import :: psb_d_sparse_mat, psb_dpk_, psb_d_base_sparse_mat
class(psb_d_sparse_mat), intent(inout) :: a
import :: psb_dspmat_type, psb_dpk_, psb_d_base_sparse_mat
class(psb_dspmat_type), intent(inout) :: a
class(psb_d_base_sparse_mat), intent(out) :: b
end subroutine psb_d_mv_to
end interface
interface
subroutine psb_d_cp_to(a,b)
import :: psb_d_sparse_mat, psb_dpk_, psb_d_base_sparse_mat
class(psb_d_sparse_mat), intent(in) :: a
import :: psb_dspmat_type, psb_dpk_, psb_d_base_sparse_mat
class(psb_dspmat_type), intent(in) :: a
class(psb_d_base_sparse_mat), intent(out) :: b
end subroutine psb_d_cp_to
end interface
interface psb_move_alloc
subroutine psb_d_sparse_mat_move(a,b,info)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_d_sparse_mat), intent(out) :: b
subroutine psb_dspmat_type_move(a,b,info)
import :: psb_dspmat_type
class(psb_dspmat_type), intent(inout) :: a
class(psb_dspmat_type), intent(out) :: b
integer, intent(out) :: info
end subroutine psb_d_sparse_mat_move
end subroutine psb_dspmat_type_move
end interface
interface psb_clone
subroutine psb_d_sparse_mat_clone(a,b,info)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(in) :: a
class(psb_d_sparse_mat), intent(out) :: b
subroutine psb_dspmat_type_clone(a,b,info)
import :: psb_dspmat_type
class(psb_dspmat_type), intent(in) :: a
class(psb_dspmat_type), intent(out) :: b
integer, intent(out) :: info
end subroutine psb_d_sparse_mat_clone
end subroutine psb_dspmat_type_clone
end interface
interface
subroutine psb_d_transp_1mat(a)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(inout) :: a
import :: psb_dspmat_type
class(psb_dspmat_type), intent(inout) :: a
end subroutine psb_d_transp_1mat
end interface
interface
subroutine psb_d_transp_2mat(a,b)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(out) :: a
class(psb_d_sparse_mat), intent(in) :: b
import :: psb_dspmat_type
class(psb_dspmat_type), intent(out) :: a
class(psb_dspmat_type), intent(in) :: b
end subroutine psb_d_transp_2mat
end interface
interface
subroutine psb_d_transc_1mat(a)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(inout) :: a
import :: psb_dspmat_type
class(psb_dspmat_type), intent(inout) :: a
end subroutine psb_d_transc_1mat
end interface
interface
subroutine psb_d_transc_2mat(a,b)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(out) :: a
class(psb_d_sparse_mat), intent(in) :: b
import :: psb_dspmat_type
class(psb_dspmat_type), intent(out) :: a
class(psb_dspmat_type), intent(in) :: b
end subroutine psb_d_transc_2mat
end interface
interface
subroutine psb_d_reinit(a,clear)
import :: psb_d_sparse_mat
class(psb_d_sparse_mat), intent(inout) :: a
import :: psb_dspmat_type
class(psb_dspmat_type), intent(inout) :: a
logical, intent(in), optional :: clear
end subroutine psb_d_reinit
@ -569,16 +569,16 @@ module psb_d_mat_mod
interface psb_csmm
subroutine psb_d_csmm(alpha,a,x,beta,y,info,trans)
import :: psb_d_sparse_mat, psb_dpk_
class(psb_d_sparse_mat), intent(in) :: a
import :: psb_dspmat_type, psb_dpk_
class(psb_dspmat_type), intent(in) :: a
real(psb_dpk_), intent(in) :: alpha, beta, x(:,:)
real(psb_dpk_), intent(inout) :: y(:,:)
integer, intent(out) :: info
character, optional, intent(in) :: trans
end subroutine psb_d_csmm
subroutine psb_d_csmv(alpha,a,x,beta,y,info,trans)
import :: psb_d_sparse_mat, psb_dpk_
class(psb_d_sparse_mat), intent(in) :: a
import :: psb_dspmat_type, psb_dpk_
class(psb_dspmat_type), intent(in) :: a
real(psb_dpk_), intent(in) :: alpha, beta, x(:)
real(psb_dpk_), intent(inout) :: y(:)
integer, intent(out) :: info
@ -588,8 +588,8 @@ module psb_d_mat_mod
interface psb_cssm
subroutine psb_d_cssm(alpha,a,x,beta,y,info,trans,scale,d)
import :: psb_d_sparse_mat, psb_dpk_
class(psb_d_sparse_mat), intent(in) :: a
import :: psb_dspmat_type, psb_dpk_
class(psb_dspmat_type), intent(in) :: a
real(psb_dpk_), intent(in) :: alpha, beta, x(:,:)
real(psb_dpk_), intent(inout) :: y(:,:)
integer, intent(out) :: info
@ -597,8 +597,8 @@ module psb_d_mat_mod
real(psb_dpk_), intent(in), optional :: d(:)
end subroutine psb_d_cssm
subroutine psb_d_cssv(alpha,a,x,beta,y,info,trans,scale,d)
import :: psb_d_sparse_mat, psb_dpk_
class(psb_d_sparse_mat), intent(in) :: a
import :: psb_dspmat_type, psb_dpk_
class(psb_dspmat_type), intent(in) :: a
real(psb_dpk_), intent(in) :: alpha, beta, x(:)
real(psb_dpk_), intent(inout) :: y(:)
integer, intent(out) :: info
@ -609,48 +609,48 @@ module psb_d_mat_mod
interface
function psb_d_csnmi(a) result(res)
import :: psb_d_sparse_mat, psb_dpk_
class(psb_d_sparse_mat), intent(in) :: a
import :: psb_dspmat_type, psb_dpk_
class(psb_dspmat_type), intent(in) :: a
real(psb_dpk_) :: res
end function psb_d_csnmi
end interface
interface
function psb_d_csnm1(a) result(res)
import :: psb_d_sparse_mat, psb_dpk_
class(psb_d_sparse_mat), intent(in) :: a
import :: psb_dspmat_type, psb_dpk_
class(psb_dspmat_type), intent(in) :: a
real(psb_dpk_) :: res
end function psb_d_csnm1
end interface
interface
subroutine psb_d_rowsum(d,a)
import :: psb_d_sparse_mat, psb_dpk_
class(psb_d_sparse_mat), intent(in) :: a
import :: psb_dspmat_type, psb_dpk_
class(psb_dspmat_type), intent(in) :: a
real(psb_dpk_), intent(out) :: d(:)
end subroutine psb_d_rowsum
end interface
interface
subroutine psb_d_arwsum(d,a)
import :: psb_d_sparse_mat, psb_dpk_
class(psb_d_sparse_mat), intent(in) :: a
import :: psb_dspmat_type, psb_dpk_
class(psb_dspmat_type), intent(in) :: a
real(psb_dpk_), intent(out) :: d(:)
end subroutine psb_d_arwsum
end interface
interface
subroutine psb_d_colsum(d,a)
import :: psb_d_sparse_mat, psb_dpk_
class(psb_d_sparse_mat), intent(in) :: a
import :: psb_dspmat_type, psb_dpk_
class(psb_dspmat_type), intent(in) :: a
real(psb_dpk_), intent(out) :: d(:)
end subroutine psb_d_colsum
end interface
interface
subroutine psb_d_aclsum(d,a)
import :: psb_d_sparse_mat, psb_dpk_
class(psb_d_sparse_mat), intent(in) :: a
import :: psb_dspmat_type, psb_dpk_
class(psb_dspmat_type), intent(in) :: a
real(psb_dpk_), intent(out) :: d(:)
end subroutine psb_d_aclsum
end interface
@ -658,8 +658,8 @@ module psb_d_mat_mod
interface
subroutine psb_d_get_diag(a,d,info)
import :: psb_d_sparse_mat, psb_dpk_
class(psb_d_sparse_mat), intent(in) :: a
import :: psb_dspmat_type, psb_dpk_
class(psb_dspmat_type), intent(in) :: a
real(psb_dpk_), intent(out) :: d(:)
integer, intent(out) :: info
end subroutine psb_d_get_diag
@ -667,14 +667,14 @@ module psb_d_mat_mod
interface psb_scal
subroutine psb_d_scal(d,a,info)
import :: psb_d_sparse_mat, psb_dpk_
class(psb_d_sparse_mat), intent(inout) :: a
import :: psb_dspmat_type, psb_dpk_
class(psb_dspmat_type), intent(inout) :: a
real(psb_dpk_), intent(in) :: d(:)
integer, intent(out) :: info
end subroutine psb_d_scal
subroutine psb_d_scals(d,a,info)
import :: psb_d_sparse_mat, psb_dpk_
class(psb_d_sparse_mat), intent(inout) :: a
import :: psb_dspmat_type, psb_dpk_
class(psb_dspmat_type), intent(inout) :: a
real(psb_dpk_), intent(in) :: d
integer, intent(out) :: info
end subroutine psb_d_scals
@ -701,7 +701,7 @@ contains
function psb_d_sizeof(a) result(res)
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
integer(psb_long_int_k_) :: res
res = 0
@ -715,7 +715,7 @@ contains
function psb_d_get_fmt(a) result(res)
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
character(len=5) :: res
if (allocated(a%a)) then
@ -730,7 +730,7 @@ contains
function psb_d_get_dupl(a) result(res)
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
integer :: res
if (allocated(a%a)) then
@ -743,7 +743,7 @@ contains
function psb_d_get_state(a) result(res)
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
integer :: res
if (allocated(a%a)) then
@ -755,7 +755,7 @@ contains
function psb_d_get_nrows(a) result(res)
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
integer :: res
if (allocated(a%a)) then
@ -768,7 +768,7 @@ contains
function psb_d_get_ncols(a) result(res)
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
integer :: res
if (allocated(a%a)) then
@ -781,7 +781,7 @@ contains
function psb_d_is_triangle(a) result(res)
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -794,7 +794,7 @@ contains
function psb_d_is_unit(a) result(res)
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -807,7 +807,7 @@ contains
function psb_d_is_upper(a) result(res)
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -820,7 +820,7 @@ contains
function psb_d_is_lower(a) result(res)
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -833,7 +833,7 @@ contains
function psb_d_is_null(a) result(res)
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -846,7 +846,7 @@ contains
function psb_d_is_bld(a) result(res)
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -859,7 +859,7 @@ contains
function psb_d_is_upd(a) result(res)
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -872,7 +872,7 @@ contains
function psb_d_is_asb(a) result(res)
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -885,7 +885,7 @@ contains
function psb_d_is_sorted(a) result(res)
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -900,7 +900,7 @@ contains
function psb_d_get_nzeros(a) result(res)
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
integer :: res
res = 0
@ -913,7 +913,7 @@ contains
function psb_d_get_size(a) result(res)
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
integer :: res
@ -928,7 +928,7 @@ contains
function psb_d_get_nz_row(idx,a) result(res)
implicit none
integer, intent(in) :: idx
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
integer :: res
Integer :: err_act

@ -193,9 +193,9 @@ module psb_d_psblas_mod
interface psb_spnrmi
function psb_dnrmi(a, desc_a,info)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_d_sparse_mat
use psb_mat_mod, only : psb_dspmat_type
real(psb_dpk_) :: psb_dnrmi
type(psb_d_sparse_mat), intent (in) :: a
type(psb_dspmat_type), intent (in) :: a
type(psb_desc_type), intent (in) :: desc_a
integer, intent(out) :: info
end function psb_dnrmi
@ -204,9 +204,9 @@ module psb_d_psblas_mod
interface psb_spnrm1
function psb_dspnrm1(a, desc_a,info)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_d_sparse_mat
use psb_mat_mod, only : psb_dspmat_type
real(psb_dpk_) :: psb_dspnrm1
type(psb_d_sparse_mat), intent (in) :: a
type(psb_dspmat_type), intent (in) :: a
type(psb_desc_type), intent (in) :: desc_a
integer, intent(out) :: info
end function psb_dspnrm1
@ -216,8 +216,8 @@ module psb_d_psblas_mod
subroutine psb_dspmm(alpha, a, x, beta, y, desc_a, info,&
&trans, k, jx, jy,work,doswap)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_d_sparse_mat
type(psb_d_sparse_mat), intent(in) :: a
use psb_mat_mod, only : psb_dspmat_type
type(psb_dspmat_type), intent(in) :: a
real(psb_dpk_), intent(inout) :: x(:,:)
real(psb_dpk_), intent(inout) :: y(:,:)
real(psb_dpk_), intent(in) :: alpha, beta
@ -231,8 +231,8 @@ module psb_d_psblas_mod
subroutine psb_dspmv(alpha, a, x, beta, y,&
& desc_a, info, trans, work,doswap)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_d_sparse_mat
type(psb_d_sparse_mat), intent(in) :: a
use psb_mat_mod, only : psb_dspmat_type
type(psb_dspmat_type), intent(in) :: a
real(psb_dpk_), intent(inout) :: x(:)
real(psb_dpk_), intent(inout) :: y(:)
real(psb_dpk_), intent(in) :: alpha, beta
@ -249,8 +249,8 @@ module psb_d_psblas_mod
& desc_a, info, trans, scale, choice,&
& diag, n, jx, jy, work)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_d_sparse_mat
type(psb_d_sparse_mat), intent(in) :: t
use psb_mat_mod, only : psb_dspmat_type
type(psb_dspmat_type), intent(in) :: t
real(psb_dpk_), intent(in) :: x(:,:)
real(psb_dpk_), intent(inout) :: y(:,:)
real(psb_dpk_), intent(in) :: alpha, beta
@ -266,8 +266,8 @@ module psb_d_psblas_mod
& desc_a, info, trans, scale, choice,&
& diag, work)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_d_sparse_mat
type(psb_d_sparse_mat), intent(in) :: t
use psb_mat_mod, only : psb_dspmat_type
type(psb_dspmat_type), intent(in) :: t
real(psb_dpk_), intent(in) :: x(:)
real(psb_dpk_), intent(inout) :: y(:)
real(psb_dpk_), intent(in) :: alpha, beta

@ -70,9 +70,9 @@ Module psb_d_tools_mod
Subroutine psb_dsphalo(a,desc_a,blk,info,rowcnv,colcnv,&
& rowscale,colscale,outfmt,data)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_d_sparse_mat
Type(psb_d_sparse_mat),Intent(in) :: a
Type(psb_d_sparse_mat),Intent(inout) :: blk
use psb_mat_mod, only : psb_dspmat_type
Type(psb_dspmat_type),Intent(in) :: a
Type(psb_dspmat_type),Intent(inout) :: blk
Type(psb_desc_type),Intent(in),target :: desc_a
integer, intent(out) :: info
logical, optional, intent(in) :: rowcnv,colcnv,rowscale,colscale
@ -123,9 +123,9 @@ Module psb_d_tools_mod
interface psb_cdbldext
Subroutine psb_dcdbldext(a,desc_a,novr,desc_ov,info,extype)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
Use psb_mat_mod, only : psb_d_sparse_mat
Use psb_mat_mod, only : psb_dspmat_type
integer, intent(in) :: novr
Type(psb_d_sparse_mat), Intent(in) :: a
Type(psb_dspmat_type), Intent(in) :: a
Type(psb_desc_type), Intent(in), target :: desc_a
Type(psb_desc_type), Intent(out) :: desc_ov
integer, intent(out) :: info
@ -136,9 +136,9 @@ Module psb_d_tools_mod
interface psb_spall
subroutine psb_dspalloc(a, desc_a, info, nnz)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_d_sparse_mat
use psb_mat_mod, only : psb_dspmat_type
type(psb_desc_type), intent(in) :: desc_a
type(psb_d_sparse_mat), intent(inout) :: a
type(psb_dspmat_type), intent(inout) :: a
integer, intent(out) :: info
integer, optional, intent(in) :: nnz
end subroutine psb_dspalloc
@ -147,8 +147,8 @@ Module psb_d_tools_mod
interface psb_spasb
subroutine psb_dspasb(a,desc_a, info, afmt, upd, dupl,mold)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_d_sparse_mat, psb_d_base_sparse_mat
type(psb_d_sparse_mat), intent (inout) :: a
use psb_mat_mod, only : psb_dspmat_type, psb_d_base_sparse_mat
type(psb_dspmat_type), intent (inout) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
integer,optional, intent(in) :: dupl, upd
@ -160,9 +160,9 @@ Module psb_d_tools_mod
interface psb_spfree
subroutine psb_dspfree(a, desc_a,info)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_d_sparse_mat
use psb_mat_mod, only : psb_dspmat_type
type(psb_desc_type), intent(in) :: desc_a
type(psb_d_sparse_mat), intent(inout) :: a
type(psb_dspmat_type), intent(inout) :: a
integer, intent(out) :: info
end subroutine psb_dspfree
end interface
@ -171,9 +171,9 @@ Module psb_d_tools_mod
interface psb_spins
subroutine psb_dspins(nz,ia,ja,val,a,desc_a,info,rebuild)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_d_sparse_mat
use psb_mat_mod, only : psb_dspmat_type
type(psb_desc_type), intent(inout) :: desc_a
type(psb_d_sparse_mat), intent(inout) :: a
type(psb_dspmat_type), intent(inout) :: a
integer, intent(in) :: nz,ia(:),ja(:)
real(psb_dpk_), intent(in) :: val(:)
integer, intent(out) :: info
@ -181,8 +181,8 @@ Module psb_d_tools_mod
end subroutine psb_dspins
subroutine psb_dspins_2desc(nz,ia,ja,val,a,desc_ar,desc_ac,info)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_d_sparse_mat
type(psb_d_sparse_mat), intent(inout) :: a
use psb_mat_mod, only : psb_dspmat_type
type(psb_dspmat_type), intent(inout) :: a
type(psb_desc_type), intent(in) :: desc_ar
type(psb_desc_type), intent(inout) :: desc_ac
integer, intent(in) :: nz,ia(:),ja(:)
@ -195,9 +195,9 @@ Module psb_d_tools_mod
interface psb_sprn
subroutine psb_dsprn(a, desc_a,info,clear)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_d_sparse_mat
use psb_mat_mod, only : psb_dspmat_type
type(psb_desc_type), intent(in) :: desc_a
type(psb_d_sparse_mat), intent(inout) :: a
type(psb_dspmat_type), intent(inout) :: a
integer, intent(out) :: info
logical, intent(in), optional :: clear
end subroutine psb_dsprn
@ -226,7 +226,7 @@ Module psb_d_tools_mod
!!$ use psb_base_tools_mod
!!$ use psb_d_mat_mod
!!$ implicit none
!!$ type(psb_d_sparse_mat), intent(out) :: a_map
!!$ type(psb_dspmat_type), intent(out) :: a_map
!!$ type(psb_desc_type), intent(out) :: cd_xt
!!$ type(psb_desc_type), intent(in) :: descin, descout
!!$
@ -257,7 +257,7 @@ Module psb_d_tools_mod
!!$ integer, intent(in) :: nz
!!$ integer, intent(in) :: ir(:),ic(:)
!!$ real(psb_dpk_), intent(in) :: val(:)
!!$ type(psb_d_sparse_mat), intent(inout) :: a_map
!!$ type(psb_dspmat_type), intent(inout) :: a_map
!!$ type(psb_desc_type), intent(inout) :: cd_xt
!!$ type(psb_desc_type), intent(in) :: descin, descout
!!$ integer :: info
@ -271,7 +271,7 @@ Module psb_d_tools_mod
!!$ use psb_descriptor_type
!!$ use psb_serial_mod
!!$ implicit none
!!$ type(psb_d_sparse_mat), intent(inout) :: a_map
!!$ type(psb_dspmat_type), intent(inout) :: a_map
!!$ type(psb_desc_type), intent(inout) :: cd_xt
!!$ type(psb_desc_type), intent(in) :: descin, descout
!!$ character(len=*), optional, intent(in) :: afmt

@ -37,7 +37,7 @@
!
module psb_linmap_type_mod
use psb_const_mod
use psb_mat_mod, only: psb_d_sparse_mat, psb_s_sparse_mat, psb_z_sparse_mat, psb_c_sparse_mat
use psb_mat_mod, only: psb_dspmat_type, psb_sspmat_type, psb_zspmat_type, psb_cspmat_type
use psb_descriptor_type, only: psb_desc_type
@ -57,28 +57,28 @@ module psb_linmap_type_mod
integer, allocatable :: itd_data(:), iaggr(:), naggr(:)
type(psb_desc_type), pointer :: p_desc_X=>null(), p_desc_Y=>null()
type(psb_desc_type) :: desc_X, desc_Y
type(psb_s_sparse_mat) :: map_X2Y, map_Y2X
type(psb_sspmat_type) :: map_X2Y, map_Y2X
end type psb_slinmap_type
type psb_dlinmap_type
integer, allocatable :: itd_data(:), iaggr(:), naggr(:)
type(psb_desc_type), pointer :: p_desc_X=>null(), p_desc_Y=>null()
type(psb_desc_type) :: desc_X, desc_Y
type(psb_d_sparse_mat) :: map_X2Y, map_Y2X
type(psb_dspmat_type) :: map_X2Y, map_Y2X
end type psb_dlinmap_type
type psb_clinmap_type
integer, allocatable :: itd_data(:), iaggr(:), naggr(:)
type(psb_desc_type), pointer :: p_desc_X=>null(), p_desc_Y=>null()
type(psb_desc_type) :: desc_X, desc_Y
type(psb_c_sparse_mat) :: map_X2Y, map_Y2X
type(psb_cspmat_type) :: map_X2Y, map_Y2X
end type psb_clinmap_type
type psb_zlinmap_type
integer, allocatable :: itd_data(:), iaggr(:), naggr(:)
type(psb_desc_type), pointer :: p_desc_X=>null(), p_desc_Y=>null()
type(psb_desc_type) :: desc_X, desc_Y
type(psb_z_sparse_mat) :: map_X2Y, map_Y2X
type(psb_zspmat_type) :: map_X2Y, map_Y2X
end type psb_zlinmap_type
end module psb_linmap_type_mod

@ -98,7 +98,7 @@ module psb_s_linmap_mod
implicit none
type(psb_slinmap_type) :: psb_s_linmap
type(psb_desc_type), target :: desc_X, desc_Y
type(psb_s_sparse_mat), intent(in) :: map_X2Y, map_Y2X
type(psb_sspmat_type), intent(in) :: map_X2Y, map_Y2X
integer, intent(in) :: map_kind
integer, intent(in), optional :: iaggr(:), naggr(:)
end function psb_s_linmap
@ -203,7 +203,7 @@ contains
implicit none
type(psb_slinmap_type), intent(out) :: out_map
type(psb_desc_type), target :: desc_X, desc_Y
type(psb_s_sparse_mat), intent(in) :: map_X2Y, map_Y2X
type(psb_sspmat_type), intent(in) :: map_X2Y, map_Y2X
integer, intent(in) :: map_kind
integer, intent(in), optional :: iaggr(:), naggr(:)
out_map = psb_linmap(map_kind,desc_X,desc_Y,map_X2Y,map_Y2X,iaggr,naggr)

@ -48,7 +48,7 @@ module psb_s_mat_mod
use psb_s_csr_mat_mod, only : psb_s_csr_sparse_mat
use psb_s_csc_mat_mod, only : psb_s_csc_sparse_mat
type :: psb_s_sparse_mat
type :: psb_sspmat_type
class(psb_s_base_sparse_mat), allocatable :: a
@ -141,7 +141,7 @@ module psb_s_mat_mod
procedure, pass(a) :: s_cssm => psb_s_cssm
generic, public :: cssm => s_cssm, s_cssv
end type psb_s_sparse_mat
end type psb_sspmat_type
private :: psb_s_get_nrows, psb_s_get_ncols, get_nzeros, psb_s_get_size, &
& psb_s_get_state, psb_s_get_dupl, psb_s_is_null, psb_s_is_bld, psb_s_is_upd, &
@ -169,100 +169,100 @@ module psb_s_mat_mod
interface
subroutine psb_s_set_nrows(m,a)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(inout) :: a
import :: psb_sspmat_type
class(psb_sspmat_type), intent(inout) :: a
integer, intent(in) :: m
end subroutine psb_s_set_nrows
end interface
interface
subroutine psb_s_set_ncols(n,a)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(inout) :: a
import :: psb_sspmat_type
class(psb_sspmat_type), intent(inout) :: a
integer, intent(in) :: n
end subroutine psb_s_set_ncols
end interface
interface
subroutine psb_s_set_state(n,a)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(inout) :: a
import :: psb_sspmat_type
class(psb_sspmat_type), intent(inout) :: a
integer, intent(in) :: n
end subroutine psb_s_set_state
end interface
interface
subroutine psb_s_set_dupl(n,a)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(inout) :: a
import :: psb_sspmat_type
class(psb_sspmat_type), intent(inout) :: a
integer, intent(in) :: n
end subroutine psb_s_set_dupl
end interface
interface
subroutine psb_s_set_null(a)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(inout) :: a
import :: psb_sspmat_type
class(psb_sspmat_type), intent(inout) :: a
end subroutine psb_s_set_null
end interface
interface
subroutine psb_s_set_bld(a)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(inout) :: a
import :: psb_sspmat_type
class(psb_sspmat_type), intent(inout) :: a
end subroutine psb_s_set_bld
end interface
interface
subroutine psb_s_set_upd(a)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(inout) :: a
import :: psb_sspmat_type
class(psb_sspmat_type), intent(inout) :: a
end subroutine psb_s_set_upd
end interface
interface
subroutine psb_s_set_asb(a)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(inout) :: a
import :: psb_sspmat_type
class(psb_sspmat_type), intent(inout) :: a
end subroutine psb_s_set_asb
end interface
interface
subroutine psb_s_set_sorted(a,val)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(inout) :: a
import :: psb_sspmat_type
class(psb_sspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
end subroutine psb_s_set_sorted
end interface
interface
subroutine psb_s_set_triangle(a,val)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(inout) :: a
import :: psb_sspmat_type
class(psb_sspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
end subroutine psb_s_set_triangle
end interface
interface
subroutine psb_s_set_unit(a,val)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(inout) :: a
import :: psb_sspmat_type
class(psb_sspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
end subroutine psb_s_set_unit
end interface
interface
subroutine psb_s_set_lower(a,val)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(inout) :: a
import :: psb_sspmat_type
class(psb_sspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
end subroutine psb_s_set_lower
end interface
interface
subroutine psb_s_set_upper(a,val)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(inout) :: a
import :: psb_sspmat_type
class(psb_sspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
end subroutine psb_s_set_upper
end interface
@ -270,9 +270,9 @@ module psb_s_mat_mod
interface
subroutine psb_s_sparse_print(iout,a,iv,eirs,eics,head,ivr,ivc)
import :: psb_s_sparse_mat
import :: psb_sspmat_type
integer, intent(in) :: iout
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
integer, intent(in), optional :: iv(:)
integer, intent(in), optional :: eirs,eics
character(len=*), optional :: head
@ -282,8 +282,8 @@ module psb_s_mat_mod
interface
subroutine psb_s_get_neigh(a,idx,neigh,n,info,lev)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(in) :: a
import :: psb_sspmat_type
class(psb_sspmat_type), intent(in) :: a
integer, intent(in) :: idx
integer, intent(out) :: n
integer, allocatable, intent(out) :: neigh(:)
@ -294,8 +294,8 @@ module psb_s_mat_mod
interface
subroutine psb_s_csall(nr,nc,a,info,nz)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(out) :: a
import :: psb_sspmat_type
class(psb_sspmat_type), intent(out) :: a
integer, intent(in) :: nr,nc
integer, intent(out) :: info
integer, intent(in), optional :: nz
@ -304,30 +304,30 @@ module psb_s_mat_mod
interface
subroutine psb_s_reallocate_nz(nz,a)
import :: psb_s_sparse_mat
import :: psb_sspmat_type
integer, intent(in) :: nz
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
end subroutine psb_s_reallocate_nz
end interface
interface
subroutine psb_s_free(a)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(inout) :: a
import :: psb_sspmat_type
class(psb_sspmat_type), intent(inout) :: a
end subroutine psb_s_free
end interface
interface
subroutine psb_s_trim(a)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(inout) :: a
import :: psb_sspmat_type
class(psb_sspmat_type), intent(inout) :: a
end subroutine psb_s_trim
end interface
interface
subroutine psb_s_csput(nz,ia,ja,val,a,imin,imax,jmin,jmax,info,gtl)
import :: psb_s_sparse_mat, psb_spk_
class(psb_s_sparse_mat), intent(inout) :: a
import :: psb_sspmat_type, psb_spk_
class(psb_sspmat_type), intent(inout) :: a
real(psb_spk_), intent(in) :: val(:)
integer, intent(in) :: nz, ia(:), ja(:), imin,imax,jmin,jmax
integer, intent(out) :: info
@ -338,8 +338,8 @@ module psb_s_mat_mod
interface
subroutine psb_s_csgetptn(imin,imax,a,nz,ia,ja,info,&
& jmin,jmax,iren,append,nzin,rscale,cscale)
import :: psb_s_sparse_mat, psb_spk_
class(psb_s_sparse_mat), intent(in) :: a
import :: psb_sspmat_type, psb_spk_
class(psb_sspmat_type), intent(in) :: a
integer, intent(in) :: imin,imax
integer, intent(out) :: nz
integer, allocatable, intent(inout) :: ia(:), ja(:)
@ -354,8 +354,8 @@ module psb_s_mat_mod
interface
subroutine psb_s_csgetrow(imin,imax,a,nz,ia,ja,val,info,&
& jmin,jmax,iren,append,nzin,rscale,cscale)
import :: psb_s_sparse_mat, psb_spk_
class(psb_s_sparse_mat), intent(in) :: a
import :: psb_sspmat_type, psb_spk_
class(psb_sspmat_type), intent(in) :: a
integer, intent(in) :: imin,imax
integer, intent(out) :: nz
integer, allocatable, intent(inout) :: ia(:), ja(:)
@ -371,9 +371,9 @@ module psb_s_mat_mod
interface
subroutine psb_s_csgetblk(imin,imax,a,b,info,&
& jmin,jmax,iren,append,rscale,cscale)
import :: psb_s_sparse_mat, psb_spk_
class(psb_s_sparse_mat), intent(in) :: a
class(psb_s_sparse_mat), intent(out) :: b
import :: psb_sspmat_type, psb_spk_
class(psb_sspmat_type), intent(in) :: a
class(psb_sspmat_type), intent(out) :: b
integer, intent(in) :: imin,imax
integer,intent(out) :: info
logical, intent(in), optional :: append
@ -386,9 +386,9 @@ module psb_s_mat_mod
interface
subroutine psb_s_csclip(a,b,info,&
& imin,imax,jmin,jmax,rscale,cscale)
import :: psb_s_sparse_mat, psb_spk_
class(psb_s_sparse_mat), intent(in) :: a
class(psb_s_sparse_mat), intent(out) :: b
import :: psb_sspmat_type, psb_spk_
class(psb_sspmat_type), intent(in) :: a
class(psb_sspmat_type), intent(out) :: b
integer,intent(out) :: info
integer, intent(in), optional :: imin,imax,jmin,jmax
logical, intent(in), optional :: rscale,cscale
@ -398,8 +398,8 @@ module psb_s_mat_mod
interface
subroutine psb_s_b_csclip(a,b,info,&
& imin,imax,jmin,jmax,rscale,cscale)
import :: psb_s_sparse_mat, psb_spk_, psb_s_coo_sparse_mat
class(psb_s_sparse_mat), intent(in) :: a
import :: psb_sspmat_type, psb_spk_, psb_s_coo_sparse_mat
class(psb_sspmat_type), intent(in) :: a
type(psb_s_coo_sparse_mat), intent(out) :: b
integer,intent(out) :: info
integer, intent(in), optional :: imin,imax,jmin,jmax
@ -409,9 +409,9 @@ module psb_s_mat_mod
interface
subroutine psb_s_cscnv(a,b,info,type,mold,upd,dupl)
import :: psb_s_sparse_mat, psb_spk_, psb_s_base_sparse_mat
class(psb_s_sparse_mat), intent(in) :: a
class(psb_s_sparse_mat), intent(out) :: b
import :: psb_sspmat_type, psb_spk_, psb_s_base_sparse_mat
class(psb_sspmat_type), intent(in) :: a
class(psb_sspmat_type), intent(out) :: b
integer, intent(out) :: info
integer,optional, intent(in) :: dupl, upd
character(len=*), optional, intent(in) :: type
@ -422,8 +422,8 @@ module psb_s_mat_mod
interface
subroutine psb_s_cscnv_ip(a,iinfo,type,mold,dupl)
import :: psb_s_sparse_mat, psb_spk_, psb_s_base_sparse_mat
class(psb_s_sparse_mat), intent(inout) :: a
import :: psb_sspmat_type, psb_spk_, psb_s_base_sparse_mat
class(psb_sspmat_type), intent(inout) :: a
integer, intent(out) :: iinfo
integer,optional, intent(in) :: dupl
character(len=*), optional, intent(in) :: type
@ -434,8 +434,8 @@ module psb_s_mat_mod
interface
subroutine psb_s_cscnv_base(a,b,info,dupl)
import :: psb_s_sparse_mat, psb_spk_, psb_s_base_sparse_mat
class(psb_s_sparse_mat), intent(in) :: a
import :: psb_sspmat_type, psb_spk_, psb_s_base_sparse_mat
class(psb_sspmat_type), intent(in) :: a
class(psb_s_base_sparse_mat), intent(out) :: b
integer, intent(out) :: info
integer,optional, intent(in) :: dupl
@ -444,106 +444,106 @@ module psb_s_mat_mod
interface
subroutine psb_s_clip_d(a,b,info)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(in) :: a
class(psb_s_sparse_mat), intent(out) :: b
import :: psb_sspmat_type
class(psb_sspmat_type), intent(in) :: a
class(psb_sspmat_type), intent(out) :: b
integer,intent(out) :: info
end subroutine psb_s_clip_d
end interface
interface
subroutine psb_s_clip_d_ip(a,info)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(inout) :: a
import :: psb_sspmat_type
class(psb_sspmat_type), intent(inout) :: a
integer,intent(out) :: info
end subroutine psb_s_clip_d_ip
end interface
interface
subroutine psb_s_mv_from(a,b)
import :: psb_s_sparse_mat, psb_spk_, psb_s_base_sparse_mat
class(psb_s_sparse_mat), intent(out) :: a
import :: psb_sspmat_type, psb_spk_, psb_s_base_sparse_mat
class(psb_sspmat_type), intent(out) :: a
class(psb_s_base_sparse_mat), intent(inout) :: b
end subroutine psb_s_mv_from
end interface
interface
subroutine psb_s_cp_from(a,b)
import :: psb_s_sparse_mat, psb_spk_, psb_s_base_sparse_mat
class(psb_s_sparse_mat), intent(out) :: a
import :: psb_sspmat_type, psb_spk_, psb_s_base_sparse_mat
class(psb_sspmat_type), intent(out) :: a
class(psb_s_base_sparse_mat), intent(inout), allocatable :: b
end subroutine psb_s_cp_from
end interface
interface
subroutine psb_s_mv_to(a,b)
import :: psb_s_sparse_mat, psb_spk_, psb_s_base_sparse_mat
class(psb_s_sparse_mat), intent(inout) :: a
import :: psb_sspmat_type, psb_spk_, psb_s_base_sparse_mat
class(psb_sspmat_type), intent(inout) :: a
class(psb_s_base_sparse_mat), intent(out) :: b
end subroutine psb_s_mv_to
end interface
interface
subroutine psb_s_cp_to(a,b)
import :: psb_s_sparse_mat, psb_spk_, psb_s_base_sparse_mat
class(psb_s_sparse_mat), intent(in) :: a
import :: psb_sspmat_type, psb_spk_, psb_s_base_sparse_mat
class(psb_sspmat_type), intent(in) :: a
class(psb_s_base_sparse_mat), intent(out) :: b
end subroutine psb_s_cp_to
end interface
interface psb_move_alloc
subroutine psb_s_sparse_mat_move(a,b,info)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_s_sparse_mat), intent(out) :: b
subroutine psb_sspmat_type_move(a,b,info)
import :: psb_sspmat_type
class(psb_sspmat_type), intent(inout) :: a
class(psb_sspmat_type), intent(out) :: b
integer, intent(out) :: info
end subroutine psb_s_sparse_mat_move
end subroutine psb_sspmat_type_move
end interface
interface psb_clone
subroutine psb_s_sparse_mat_clone(a,b,info)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(in) :: a
class(psb_s_sparse_mat), intent(out) :: b
subroutine psb_sspmat_type_clone(a,b,info)
import :: psb_sspmat_type
class(psb_sspmat_type), intent(in) :: a
class(psb_sspmat_type), intent(out) :: b
integer, intent(out) :: info
end subroutine psb_s_sparse_mat_clone
end subroutine psb_sspmat_type_clone
end interface
interface
subroutine psb_s_transp_1mat(a)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(inout) :: a
import :: psb_sspmat_type
class(psb_sspmat_type), intent(inout) :: a
end subroutine psb_s_transp_1mat
end interface
interface
subroutine psb_s_transp_2mat(a,b)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(out) :: a
class(psb_s_sparse_mat), intent(in) :: b
import :: psb_sspmat_type
class(psb_sspmat_type), intent(out) :: a
class(psb_sspmat_type), intent(in) :: b
end subroutine psb_s_transp_2mat
end interface
interface
subroutine psb_s_transc_1mat(a)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(inout) :: a
import :: psb_sspmat_type
class(psb_sspmat_type), intent(inout) :: a
end subroutine psb_s_transc_1mat
end interface
interface
subroutine psb_s_transc_2mat(a,b)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(out) :: a
class(psb_s_sparse_mat), intent(in) :: b
import :: psb_sspmat_type
class(psb_sspmat_type), intent(out) :: a
class(psb_sspmat_type), intent(in) :: b
end subroutine psb_s_transc_2mat
end interface
interface
subroutine psb_s_reinit(a,clear)
import :: psb_s_sparse_mat
class(psb_s_sparse_mat), intent(inout) :: a
import :: psb_sspmat_type
class(psb_sspmat_type), intent(inout) :: a
logical, intent(in), optional :: clear
end subroutine psb_s_reinit
@ -565,16 +565,16 @@ module psb_s_mat_mod
interface psb_csmm
subroutine psb_s_csmm(alpha,a,x,beta,y,info,trans)
import :: psb_s_sparse_mat, psb_spk_
class(psb_s_sparse_mat), intent(in) :: a
import :: psb_sspmat_type, psb_spk_
class(psb_sspmat_type), intent(in) :: a
real(psb_spk_), intent(in) :: alpha, beta, x(:,:)
real(psb_spk_), intent(inout) :: y(:,:)
integer, intent(out) :: info
character, optional, intent(in) :: trans
end subroutine psb_s_csmm
subroutine psb_s_csmv(alpha,a,x,beta,y,info,trans)
import :: psb_s_sparse_mat, psb_spk_
class(psb_s_sparse_mat), intent(in) :: a
import :: psb_sspmat_type, psb_spk_
class(psb_sspmat_type), intent(in) :: a
real(psb_spk_), intent(in) :: alpha, beta, x(:)
real(psb_spk_), intent(inout) :: y(:)
integer, intent(out) :: info
@ -584,8 +584,8 @@ module psb_s_mat_mod
interface psb_cssm
subroutine psb_s_cssm(alpha,a,x,beta,y,info,trans,scale,d)
import :: psb_s_sparse_mat, psb_spk_
class(psb_s_sparse_mat), intent(in) :: a
import :: psb_sspmat_type, psb_spk_
class(psb_sspmat_type), intent(in) :: a
real(psb_spk_), intent(in) :: alpha, beta, x(:,:)
real(psb_spk_), intent(inout) :: y(:,:)
integer, intent(out) :: info
@ -593,8 +593,8 @@ module psb_s_mat_mod
real(psb_spk_), intent(in), optional :: d(:)
end subroutine psb_s_cssm
subroutine psb_s_cssv(alpha,a,x,beta,y,info,trans,scale,d)
import :: psb_s_sparse_mat, psb_spk_
class(psb_s_sparse_mat), intent(in) :: a
import :: psb_sspmat_type, psb_spk_
class(psb_sspmat_type), intent(in) :: a
real(psb_spk_), intent(in) :: alpha, beta, x(:)
real(psb_spk_), intent(inout) :: y(:)
integer, intent(out) :: info
@ -605,16 +605,16 @@ module psb_s_mat_mod
interface
function psb_s_csnmi(a) result(res)
import :: psb_s_sparse_mat, psb_spk_
class(psb_s_sparse_mat), intent(in) :: a
import :: psb_sspmat_type, psb_spk_
class(psb_sspmat_type), intent(in) :: a
real(psb_spk_) :: res
end function psb_s_csnmi
end interface
interface
subroutine psb_s_get_diag(a,d,info)
import :: psb_s_sparse_mat, psb_spk_
class(psb_s_sparse_mat), intent(in) :: a
import :: psb_sspmat_type, psb_spk_
class(psb_sspmat_type), intent(in) :: a
real(psb_spk_), intent(out) :: d(:)
integer, intent(out) :: info
end subroutine psb_s_get_diag
@ -622,14 +622,14 @@ module psb_s_mat_mod
interface psb_scal
subroutine psb_s_scal(d,a,info)
import :: psb_s_sparse_mat, psb_spk_
class(psb_s_sparse_mat), intent(inout) :: a
import :: psb_sspmat_type, psb_spk_
class(psb_sspmat_type), intent(inout) :: a
real(psb_spk_), intent(in) :: d(:)
integer, intent(out) :: info
end subroutine psb_s_scal
subroutine psb_s_scals(d,a,info)
import :: psb_s_sparse_mat, psb_spk_
class(psb_s_sparse_mat), intent(inout) :: a
import :: psb_sspmat_type, psb_spk_
class(psb_sspmat_type), intent(inout) :: a
real(psb_spk_), intent(in) :: d
integer, intent(out) :: info
end subroutine psb_s_scals
@ -656,7 +656,7 @@ contains
function psb_s_sizeof(a) result(res)
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
integer(psb_long_int_k_) :: res
res = 0
@ -670,7 +670,7 @@ contains
function psb_s_get_fmt(a) result(res)
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
character(len=5) :: res
if (allocated(a%a)) then
@ -684,7 +684,7 @@ contains
function psb_s_get_dupl(a) result(res)
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
integer :: res
if (allocated(a%a)) then
@ -697,7 +697,7 @@ contains
function psb_s_get_state(a) result(res)
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
integer :: res
if (allocated(a%a)) then
@ -709,7 +709,7 @@ contains
function psb_s_get_nrows(a) result(res)
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
integer :: res
if (allocated(a%a)) then
@ -722,7 +722,7 @@ contains
function psb_s_get_ncols(a) result(res)
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
integer :: res
if (allocated(a%a)) then
@ -735,7 +735,7 @@ contains
function psb_s_is_triangle(a) result(res)
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -748,7 +748,7 @@ contains
function psb_s_is_unit(a) result(res)
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -761,7 +761,7 @@ contains
function psb_s_is_upper(a) result(res)
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -774,7 +774,7 @@ contains
function psb_s_is_lower(a) result(res)
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -787,7 +787,7 @@ contains
function psb_s_is_null(a) result(res)
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -800,7 +800,7 @@ contains
function psb_s_is_bld(a) result(res)
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -813,7 +813,7 @@ contains
function psb_s_is_upd(a) result(res)
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -826,7 +826,7 @@ contains
function psb_s_is_asb(a) result(res)
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -839,7 +839,7 @@ contains
function psb_s_is_sorted(a) result(res)
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -854,7 +854,7 @@ contains
function psb_s_get_nzeros(a) result(res)
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
integer :: res
res = 0
@ -867,7 +867,7 @@ contains
function psb_s_get_size(a) result(res)
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
integer :: res
@ -882,7 +882,7 @@ contains
function psb_s_get_nz_row(idx,a) result(res)
implicit none
integer, intent(in) :: idx
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
integer :: res
Integer :: err_act

@ -193,9 +193,9 @@ module psb_s_psblas_mod
interface psb_spnrmi
function psb_snrmi(a, desc_a,info)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_s_sparse_mat
use psb_mat_mod, only : psb_sspmat_type
real(psb_spk_) :: psb_snrmi
type(psb_s_sparse_mat), intent (in) :: a
type(psb_sspmat_type), intent (in) :: a
type(psb_desc_type), intent (in) :: desc_a
integer, intent(out) :: info
end function psb_snrmi
@ -205,8 +205,8 @@ module psb_s_psblas_mod
subroutine psb_sspmm(alpha, a, x, beta, y, desc_a, info,&
&trans, k, jx, jy,work,doswap)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_s_sparse_mat
type(psb_s_sparse_mat), intent(in) :: a
use psb_mat_mod, only : psb_sspmat_type
type(psb_sspmat_type), intent(in) :: a
real(psb_spk_), intent(inout) :: x(:,:)
real(psb_spk_), intent(inout) :: y(:,:)
real(psb_spk_), intent(in) :: alpha, beta
@ -220,8 +220,8 @@ module psb_s_psblas_mod
subroutine psb_sspmv(alpha, a, x, beta, y,&
& desc_a, info, trans, work,doswap)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_s_sparse_mat
type(psb_s_sparse_mat), intent(in) :: a
use psb_mat_mod, only : psb_sspmat_type
type(psb_sspmat_type), intent(in) :: a
real(psb_spk_), intent(inout) :: x(:)
real(psb_spk_), intent(inout) :: y(:)
real(psb_spk_), intent(in) :: alpha, beta
@ -238,8 +238,8 @@ module psb_s_psblas_mod
& desc_a, info, trans, scale, choice,&
& diag, n, jx, jy, work)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_s_sparse_mat
type(psb_s_sparse_mat), intent(in) :: t
use psb_mat_mod, only : psb_sspmat_type
type(psb_sspmat_type), intent(in) :: t
real(psb_spk_), intent(in) :: x(:,:)
real(psb_spk_), intent(inout) :: y(:,:)
real(psb_spk_), intent(in) :: alpha, beta
@ -255,8 +255,8 @@ module psb_s_psblas_mod
& desc_a, info, trans, scale, choice,&
& diag, work)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_s_sparse_mat
type(psb_s_sparse_mat), intent(in) :: t
use psb_mat_mod, only : psb_sspmat_type
type(psb_sspmat_type), intent(in) :: t
real(psb_spk_), intent(in) :: x(:)
real(psb_spk_), intent(inout) :: y(:)
real(psb_spk_), intent(in) :: alpha, beta

@ -70,9 +70,9 @@ Module psb_s_tools_mod
Subroutine psb_ssphalo(a,desc_a,blk,info,rowcnv,colcnv,&
& rowscale,colscale,outfmt,data)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_s_sparse_mat
Type(psb_s_sparse_mat),Intent(in) :: a
Type(psb_s_sparse_mat),Intent(inout) :: blk
use psb_mat_mod, only : psb_sspmat_type
Type(psb_sspmat_type),Intent(in) :: a
Type(psb_sspmat_type),Intent(inout) :: blk
Type(psb_desc_type),Intent(in),target :: desc_a
integer, intent(out) :: info
logical, optional, intent(in) :: rowcnv,colcnv,rowscale,colscale
@ -124,9 +124,9 @@ Module psb_s_tools_mod
interface psb_cdbldext
Subroutine psb_scdbldext(a,desc_a,novr,desc_ov,info,extype)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
Use psb_mat_mod, only : psb_s_sparse_mat
Use psb_mat_mod, only : psb_sspmat_type
integer, intent(in) :: novr
Type(psb_s_sparse_mat), Intent(in) :: a
Type(psb_sspmat_type), Intent(in) :: a
Type(psb_desc_type), Intent(in), target :: desc_a
Type(psb_desc_type), Intent(out) :: desc_ov
integer, intent(out) :: info
@ -137,9 +137,9 @@ Module psb_s_tools_mod
interface psb_spall
subroutine psb_sspalloc(a, desc_a, info, nnz)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_s_sparse_mat
use psb_mat_mod, only : psb_sspmat_type
type(psb_desc_type), intent(in) :: desc_a
type(psb_s_sparse_mat), intent(inout) :: a
type(psb_sspmat_type), intent(inout) :: a
integer, intent(out) :: info
integer, optional, intent(in) :: nnz
end subroutine psb_sspalloc
@ -148,8 +148,8 @@ Module psb_s_tools_mod
interface psb_spasb
subroutine psb_sspasb(a,desc_a, info, afmt, upd, dupl, mold)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_s_base_sparse_mat, psb_s_sparse_mat
type(psb_s_sparse_mat), intent (inout) :: a
use psb_mat_mod, only : psb_s_base_sparse_mat, psb_sspmat_type
type(psb_sspmat_type), intent (inout) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
integer,optional, intent(in) :: dupl, upd
@ -161,9 +161,9 @@ Module psb_s_tools_mod
interface psb_spfree
subroutine psb_sspfree(a, desc_a,info)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_s_sparse_mat
use psb_mat_mod, only : psb_sspmat_type
type(psb_desc_type), intent(in) :: desc_a
type(psb_s_sparse_mat), intent(inout) :: a
type(psb_sspmat_type), intent(inout) :: a
integer, intent(out) :: info
end subroutine psb_sspfree
end interface
@ -172,9 +172,9 @@ Module psb_s_tools_mod
interface psb_spins
subroutine psb_sspins(nz,ia,ja,val,a,desc_a,info,rebuild)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_s_sparse_mat
use psb_mat_mod, only : psb_sspmat_type
type(psb_desc_type), intent(inout) :: desc_a
type(psb_s_sparse_mat), intent(inout) :: a
type(psb_sspmat_type), intent(inout) :: a
integer, intent(in) :: nz,ia(:),ja(:)
real(psb_spk_), intent(in) :: val(:)
integer, intent(out) :: info
@ -182,10 +182,10 @@ Module psb_s_tools_mod
end subroutine psb_sspins
subroutine psb_sspins_2desc(nz,ia,ja,val,a,desc_ar,desc_ac,info)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_s_sparse_mat
use psb_mat_mod, only : psb_sspmat_type
type(psb_desc_type), intent(in) :: desc_ar
type(psb_desc_type), intent(inout) :: desc_ac
type(psb_s_sparse_mat), intent(inout) :: a
type(psb_sspmat_type), intent(inout) :: a
integer, intent(in) :: nz,ia(:),ja(:)
real(psb_spk_), intent(in) :: val(:)
integer, intent(out) :: info
@ -196,9 +196,9 @@ Module psb_s_tools_mod
interface psb_sprn
subroutine psb_ssprn(a, desc_a,info,clear)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_s_sparse_mat
use psb_mat_mod, only : psb_sspmat_type
type(psb_desc_type), intent(in) :: desc_a
type(psb_s_sparse_mat), intent(inout) :: a
type(psb_sspmat_type), intent(inout) :: a
integer, intent(out) :: info
logical, intent(in), optional :: clear
end subroutine psb_ssprn
@ -228,7 +228,7 @@ Module psb_s_tools_mod
!!$ use psb_base_tools_mod
!!$ use psb_s_mat_mod
!!$ implicit none
!!$ type(psb_s_sparse_mat), intent(out) :: a_map
!!$ type(psb_sspmat_type), intent(out) :: a_map
!!$ type(psb_desc_type), intent(out) :: cd_xt
!!$ type(psb_desc_type), intent(in) :: descin, descout
!!$
@ -259,7 +259,7 @@ Module psb_s_tools_mod
!!$ integer, intent(in) :: nz
!!$ integer, intent(in) :: ir(:),ic(:)
!!$ real(psb_spk_), intent(in) :: val(:)
!!$ type(psb_s_sparse_mat), intent(inout) :: a_map
!!$ type(psb_sspmat_type), intent(inout) :: a_map
!!$ type(psb_desc_type), intent(inout) :: cd_xt
!!$ type(psb_desc_type), intent(in) :: descin, descout
!!$ integer :: info
@ -273,7 +273,7 @@ Module psb_s_tools_mod
!!$ use psb_descriptor_type
!!$ use psb_serial_mod
!!$ implicit none
!!$ type(psb_s_sparse_mat), intent(inout) :: a_map
!!$ type(psb_sspmat_type), intent(inout) :: a_map
!!$ type(psb_desc_type), intent(inout) :: cd_xt
!!$ type(psb_desc_type), intent(in) :: descin, descout
!!$ character(len=*), optional, intent(in) :: afmt

@ -43,10 +43,10 @@ module psb_serial_mod
interface psb_symbmm
subroutine psb_ssymbmm(a,b,c,info)
use psb_mat_mod, only : psb_s_sparse_mat
use psb_mat_mod, only : psb_sspmat_type
implicit none
type(psb_s_sparse_mat), intent(in) :: a,b
type(psb_s_sparse_mat), intent(out) :: c
type(psb_sspmat_type), intent(in) :: a,b
type(psb_sspmat_type), intent(out) :: c
integer, intent(out) :: info
end subroutine psb_ssymbmm
subroutine psb_sbase_symbmm(a,b,c,info)
@ -57,10 +57,10 @@ module psb_serial_mod
integer, intent(out) :: info
end subroutine psb_sbase_symbmm
subroutine psb_dsymbmm(a,b,c,info)
use psb_mat_mod, only : psb_d_sparse_mat
use psb_mat_mod, only : psb_dspmat_type
implicit none
type(psb_d_sparse_mat), intent(in) :: a,b
type(psb_d_sparse_mat), intent(out) :: c
type(psb_dspmat_type), intent(in) :: a,b
type(psb_dspmat_type), intent(out) :: c
integer, intent(out) :: info
end subroutine psb_dsymbmm
subroutine psb_dbase_symbmm(a,b,c,info)
@ -71,10 +71,10 @@ module psb_serial_mod
integer, intent(out) :: info
end subroutine psb_dbase_symbmm
subroutine psb_csymbmm(a,b,c,info)
use psb_mat_mod, only : psb_c_sparse_mat
use psb_mat_mod, only : psb_cspmat_type
implicit none
type(psb_c_sparse_mat), intent(in) :: a,b
type(psb_c_sparse_mat), intent(out) :: c
type(psb_cspmat_type), intent(in) :: a,b
type(psb_cspmat_type), intent(out) :: c
integer, intent(out) :: info
end subroutine psb_csymbmm
subroutine psb_cbase_symbmm(a,b,c,info)
@ -85,10 +85,10 @@ module psb_serial_mod
integer, intent(out) :: info
end subroutine psb_cbase_symbmm
subroutine psb_zsymbmm(a,b,c,info)
use psb_mat_mod, only : psb_z_sparse_mat
use psb_mat_mod, only : psb_zspmat_type
implicit none
type(psb_z_sparse_mat), intent(in) :: a,b
type(psb_z_sparse_mat), intent(out) :: c
type(psb_zspmat_type), intent(in) :: a,b
type(psb_zspmat_type), intent(out) :: c
integer, intent(out) :: info
end subroutine psb_zsymbmm
subroutine psb_zbase_symbmm(a,b,c,info)
@ -102,10 +102,10 @@ module psb_serial_mod
interface psb_numbmm
subroutine psb_snumbmm(a,b,c)
use psb_mat_mod, only : psb_s_sparse_mat
use psb_mat_mod, only : psb_sspmat_type
implicit none
type(psb_s_sparse_mat), intent(in) :: a,b
type(psb_s_sparse_mat), intent(inout) :: c
type(psb_sspmat_type), intent(in) :: a,b
type(psb_sspmat_type), intent(inout) :: c
end subroutine psb_snumbmm
subroutine psb_sbase_numbmm(a,b,c)
use psb_mat_mod, only : psb_s_base_sparse_mat, psb_s_csr_sparse_mat
@ -114,10 +114,10 @@ module psb_serial_mod
type(psb_s_csr_sparse_mat), intent(inout) :: c
end subroutine psb_sbase_numbmm
subroutine psb_dnumbmm(a,b,c)
use psb_mat_mod, only : psb_d_sparse_mat
use psb_mat_mod, only : psb_dspmat_type
implicit none
type(psb_d_sparse_mat), intent(in) :: a,b
type(psb_d_sparse_mat), intent(inout) :: c
type(psb_dspmat_type), intent(in) :: a,b
type(psb_dspmat_type), intent(inout) :: c
end subroutine psb_dnumbmm
subroutine psb_dbase_numbmm(a,b,c)
use psb_mat_mod, only : psb_d_base_sparse_mat, psb_d_csr_sparse_mat
@ -126,10 +126,10 @@ module psb_serial_mod
type(psb_d_csr_sparse_mat), intent(inout) :: c
end subroutine psb_dbase_numbmm
subroutine psb_cnumbmm(a,b,c)
use psb_mat_mod, only : psb_c_sparse_mat
use psb_mat_mod, only : psb_cspmat_type
implicit none
type(psb_c_sparse_mat), intent(in) :: a,b
type(psb_c_sparse_mat), intent(inout) :: c
type(psb_cspmat_type), intent(in) :: a,b
type(psb_cspmat_type), intent(inout) :: c
end subroutine psb_cnumbmm
subroutine psb_cbase_numbmm(a,b,c)
use psb_mat_mod, only : psb_c_base_sparse_mat, psb_c_csr_sparse_mat
@ -138,10 +138,10 @@ module psb_serial_mod
type(psb_c_csr_sparse_mat), intent(inout) :: c
end subroutine psb_cbase_numbmm
subroutine psb_znumbmm(a,b,c)
use psb_mat_mod, only : psb_z_sparse_mat
use psb_mat_mod, only : psb_zspmat_type
implicit none
type(psb_z_sparse_mat), intent(in) :: a,b
type(psb_z_sparse_mat), intent(inout) :: c
type(psb_zspmat_type), intent(in) :: a,b
type(psb_zspmat_type), intent(inout) :: c
end subroutine psb_znumbmm
subroutine psb_zbase_numbmm(a,b,c)
use psb_mat_mod, only : psb_z_base_sparse_mat, psb_z_csr_sparse_mat
@ -153,12 +153,12 @@ module psb_serial_mod
interface psb_rwextd
subroutine psb_srwextd(nr,a,info,b,rowscale)
use psb_mat_mod, only : psb_s_sparse_mat
use psb_mat_mod, only : psb_sspmat_type
implicit none
integer, intent(in) :: nr
type(psb_s_sparse_mat), intent(inout) :: a
type(psb_sspmat_type), intent(inout) :: a
integer,intent(out) :: info
type(psb_s_sparse_mat), intent(in), optional :: b
type(psb_sspmat_type), intent(in), optional :: b
logical,intent(in), optional :: rowscale
end subroutine psb_srwextd
subroutine psb_sbase_rwextd(nr,a,info,b,rowscale)
@ -171,12 +171,12 @@ module psb_serial_mod
logical,intent(in), optional :: rowscale
end subroutine psb_sbase_rwextd
subroutine psb_drwextd(nr,a,info,b,rowscale)
use psb_mat_mod, only : psb_d_sparse_mat
use psb_mat_mod, only : psb_dspmat_type
implicit none
integer, intent(in) :: nr
type(psb_d_sparse_mat), intent(inout) :: a
type(psb_dspmat_type), intent(inout) :: a
integer,intent(out) :: info
type(psb_d_sparse_mat), intent(in), optional :: b
type(psb_dspmat_type), intent(in), optional :: b
logical,intent(in), optional :: rowscale
end subroutine psb_drwextd
subroutine psb_dbase_rwextd(nr,a,info,b,rowscale)
@ -189,12 +189,12 @@ module psb_serial_mod
logical,intent(in), optional :: rowscale
end subroutine psb_dbase_rwextd
subroutine psb_crwextd(nr,a,info,b,rowscale)
use psb_mat_mod, only : psb_c_sparse_mat
use psb_mat_mod, only : psb_cspmat_type
implicit none
integer, intent(in) :: nr
type(psb_c_sparse_mat), intent(inout) :: a
type(psb_cspmat_type), intent(inout) :: a
integer,intent(out) :: info
type(psb_c_sparse_mat), intent(in), optional :: b
type(psb_cspmat_type), intent(in), optional :: b
logical,intent(in), optional :: rowscale
end subroutine psb_crwextd
subroutine psb_cbase_rwextd(nr,a,info,b,rowscale)
@ -207,12 +207,12 @@ module psb_serial_mod
logical,intent(in), optional :: rowscale
end subroutine psb_cbase_rwextd
subroutine psb_zrwextd(nr,a,info,b,rowscale)
use psb_mat_mod, only : psb_z_sparse_mat
use psb_mat_mod, only : psb_zspmat_type
implicit none
integer, intent(in) :: nr
type(psb_z_sparse_mat), intent(inout) :: a
type(psb_zspmat_type), intent(inout) :: a
integer,intent(out) :: info
type(psb_z_sparse_mat), intent(in), optional :: b
type(psb_zspmat_type), intent(in), optional :: b
logical,intent(in), optional :: rowscale
end subroutine psb_zrwextd
subroutine psb_zbase_rwextd(nr,a,info,b,rowscale)

@ -99,7 +99,7 @@ module psb_z_linmap_mod
implicit none
type(psb_zlinmap_type) :: psb_z_linmap
type(psb_desc_type), target :: desc_X, desc_Y
type(psb_z_sparse_mat), intent(in) :: map_X2Y, map_Y2X
type(psb_zspmat_type), intent(in) :: map_X2Y, map_Y2X
integer, intent(in) :: map_kind
integer, intent(in), optional :: iaggr(:), naggr(:)
end function psb_z_linmap
@ -201,7 +201,7 @@ contains
implicit none
type(psb_zlinmap_type), intent(out) :: out_map
type(psb_desc_type), target :: desc_X, desc_Y
type(psb_z_sparse_mat), intent(in) :: map_X2Y, map_Y2X
type(psb_zspmat_type), intent(in) :: map_X2Y, map_Y2X
integer, intent(in) :: map_kind
integer, intent(in), optional :: iaggr(:), naggr(:)
out_map = psb_linmap(map_kind,desc_X,desc_Y,map_X2Y,map_Y2X,iaggr,naggr)

@ -48,7 +48,7 @@ module psb_z_mat_mod
use psb_z_csr_mat_mod, only : psb_z_csr_sparse_mat
use psb_z_csc_mat_mod, only : psb_z_csc_sparse_mat
type :: psb_z_sparse_mat
type :: psb_zspmat_type
class(psb_z_base_sparse_mat), allocatable :: a
@ -141,7 +141,7 @@ module psb_z_mat_mod
procedure, pass(a) :: z_cssm => psb_z_cssm
generic, public :: cssm => z_cssm, z_cssv
end type psb_z_sparse_mat
end type psb_zspmat_type
private :: psb_z_get_nrows, psb_z_get_ncols, psb_z_get_nzeros, psb_z_get_size, &
& psb_z_get_state, psb_z_get_dupl, psb_z_is_null, psb_z_is_bld, psb_z_is_upd, &
@ -169,100 +169,100 @@ module psb_z_mat_mod
interface
subroutine psb_z_set_nrows(m,a)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(inout) :: a
import :: psb_zspmat_type
class(psb_zspmat_type), intent(inout) :: a
integer, intent(in) :: m
end subroutine psb_z_set_nrows
end interface
interface
subroutine psb_z_set_ncols(n,a)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(inout) :: a
import :: psb_zspmat_type
class(psb_zspmat_type), intent(inout) :: a
integer, intent(in) :: n
end subroutine psb_z_set_ncols
end interface
interface
subroutine psb_z_set_state(n,a)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(inout) :: a
import :: psb_zspmat_type
class(psb_zspmat_type), intent(inout) :: a
integer, intent(in) :: n
end subroutine psb_z_set_state
end interface
interface
subroutine psb_z_set_dupl(n,a)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(inout) :: a
import :: psb_zspmat_type
class(psb_zspmat_type), intent(inout) :: a
integer, intent(in) :: n
end subroutine psb_z_set_dupl
end interface
interface
subroutine psb_z_set_null(a)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(inout) :: a
import :: psb_zspmat_type
class(psb_zspmat_type), intent(inout) :: a
end subroutine psb_z_set_null
end interface
interface
subroutine psb_z_set_bld(a)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(inout) :: a
import :: psb_zspmat_type
class(psb_zspmat_type), intent(inout) :: a
end subroutine psb_z_set_bld
end interface
interface
subroutine psb_z_set_upd(a)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(inout) :: a
import :: psb_zspmat_type
class(psb_zspmat_type), intent(inout) :: a
end subroutine psb_z_set_upd
end interface
interface
subroutine psb_z_set_asb(a)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(inout) :: a
import :: psb_zspmat_type
class(psb_zspmat_type), intent(inout) :: a
end subroutine psb_z_set_asb
end interface
interface
subroutine psb_z_set_sorted(a,val)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(inout) :: a
import :: psb_zspmat_type
class(psb_zspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
end subroutine psb_z_set_sorted
end interface
interface
subroutine psb_z_set_triangle(a,val)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(inout) :: a
import :: psb_zspmat_type
class(psb_zspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
end subroutine psb_z_set_triangle
end interface
interface
subroutine psb_z_set_unit(a,val)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(inout) :: a
import :: psb_zspmat_type
class(psb_zspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
end subroutine psb_z_set_unit
end interface
interface
subroutine psb_z_set_lower(a,val)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(inout) :: a
import :: psb_zspmat_type
class(psb_zspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
end subroutine psb_z_set_lower
end interface
interface
subroutine psb_z_set_upper(a,val)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(inout) :: a
import :: psb_zspmat_type
class(psb_zspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
end subroutine psb_z_set_upper
end interface
@ -270,9 +270,9 @@ module psb_z_mat_mod
interface
subroutine psb_z_sparse_print(iout,a,iv,eirs,eics,head,ivr,ivc)
import :: psb_z_sparse_mat
import :: psb_zspmat_type
integer, intent(in) :: iout
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
integer, intent(in), optional :: iv(:)
integer, intent(in), optional :: eirs,eics
character(len=*), optional :: head
@ -282,8 +282,8 @@ module psb_z_mat_mod
interface
subroutine psb_z_get_neigh(a,idx,neigh,n,info,lev)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(in) :: a
import :: psb_zspmat_type
class(psb_zspmat_type), intent(in) :: a
integer, intent(in) :: idx
integer, intent(out) :: n
integer, allocatable, intent(out) :: neigh(:)
@ -294,8 +294,8 @@ module psb_z_mat_mod
interface
subroutine psb_z_csall(nr,nc,a,info,nz)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(out) :: a
import :: psb_zspmat_type
class(psb_zspmat_type), intent(out) :: a
integer, intent(in) :: nr,nc
integer, intent(out) :: info
integer, intent(in), optional :: nz
@ -304,30 +304,30 @@ module psb_z_mat_mod
interface
subroutine psb_z_reallocate_nz(nz,a)
import :: psb_z_sparse_mat
import :: psb_zspmat_type
integer, intent(in) :: nz
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
end subroutine psb_z_reallocate_nz
end interface
interface
subroutine psb_z_free(a)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(inout) :: a
import :: psb_zspmat_type
class(psb_zspmat_type), intent(inout) :: a
end subroutine psb_z_free
end interface
interface
subroutine psb_z_trim(a)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(inout) :: a
import :: psb_zspmat_type
class(psb_zspmat_type), intent(inout) :: a
end subroutine psb_z_trim
end interface
interface
subroutine psb_z_csput(nz,ia,ja,val,a,imin,imax,jmin,jmax,info,gtl)
import :: psb_z_sparse_mat, psb_dpk_
class(psb_z_sparse_mat), intent(inout) :: a
import :: psb_zspmat_type, psb_dpk_
class(psb_zspmat_type), intent(inout) :: a
complex(psb_dpk_), intent(in) :: val(:)
integer, intent(in) :: nz, ia(:), ja(:), imin,imax,jmin,jmax
integer, intent(out) :: info
@ -338,8 +338,8 @@ module psb_z_mat_mod
interface
subroutine psb_z_csgetptn(imin,imax,a,nz,ia,ja,info,&
& jmin,jmax,iren,append,nzin,rscale,cscale)
import :: psb_z_sparse_mat, psb_dpk_
class(psb_z_sparse_mat), intent(in) :: a
import :: psb_zspmat_type, psb_dpk_
class(psb_zspmat_type), intent(in) :: a
integer, intent(in) :: imin,imax
integer, intent(out) :: nz
integer, allocatable, intent(inout) :: ia(:), ja(:)
@ -354,8 +354,8 @@ module psb_z_mat_mod
interface
subroutine psb_z_csgetrow(imin,imax,a,nz,ia,ja,val,info,&
& jmin,jmax,iren,append,nzin,rscale,cscale)
import :: psb_z_sparse_mat, psb_dpk_
class(psb_z_sparse_mat), intent(in) :: a
import :: psb_zspmat_type, psb_dpk_
class(psb_zspmat_type), intent(in) :: a
integer, intent(in) :: imin,imax
integer, intent(out) :: nz
integer, allocatable, intent(inout) :: ia(:), ja(:)
@ -371,9 +371,9 @@ module psb_z_mat_mod
interface
subroutine psb_z_csgetblk(imin,imax,a,b,info,&
& jmin,jmax,iren,append,rscale,cscale)
import :: psb_z_sparse_mat, psb_dpk_
class(psb_z_sparse_mat), intent(in) :: a
class(psb_z_sparse_mat), intent(out) :: b
import :: psb_zspmat_type, psb_dpk_
class(psb_zspmat_type), intent(in) :: a
class(psb_zspmat_type), intent(out) :: b
integer, intent(in) :: imin,imax
integer,intent(out) :: info
logical, intent(in), optional :: append
@ -386,9 +386,9 @@ module psb_z_mat_mod
interface
subroutine psb_z_csclip(a,b,info,&
& imin,imax,jmin,jmax,rscale,cscale)
import :: psb_z_sparse_mat, psb_dpk_
class(psb_z_sparse_mat), intent(in) :: a
class(psb_z_sparse_mat), intent(out) :: b
import :: psb_zspmat_type, psb_dpk_
class(psb_zspmat_type), intent(in) :: a
class(psb_zspmat_type), intent(out) :: b
integer,intent(out) :: info
integer, intent(in), optional :: imin,imax,jmin,jmax
logical, intent(in), optional :: rscale,cscale
@ -398,8 +398,8 @@ module psb_z_mat_mod
interface
subroutine psb_z_b_csclip(a,b,info,&
& imin,imax,jmin,jmax,rscale,cscale)
import :: psb_z_sparse_mat, psb_dpk_, psb_z_coo_sparse_mat
class(psb_z_sparse_mat), intent(in) :: a
import :: psb_zspmat_type, psb_dpk_, psb_z_coo_sparse_mat
class(psb_zspmat_type), intent(in) :: a
type(psb_z_coo_sparse_mat), intent(out) :: b
integer,intent(out) :: info
integer, intent(in), optional :: imin,imax,jmin,jmax
@ -409,9 +409,9 @@ module psb_z_mat_mod
interface
subroutine psb_z_cscnv(a,b,info,type,mold,upd,dupl)
import :: psb_z_sparse_mat, psb_dpk_, psb_z_base_sparse_mat
class(psb_z_sparse_mat), intent(in) :: a
class(psb_z_sparse_mat), intent(out) :: b
import :: psb_zspmat_type, psb_dpk_, psb_z_base_sparse_mat
class(psb_zspmat_type), intent(in) :: a
class(psb_zspmat_type), intent(out) :: b
integer, intent(out) :: info
integer,optional, intent(in) :: dupl, upd
character(len=*), optional, intent(in) :: type
@ -422,8 +422,8 @@ module psb_z_mat_mod
interface
subroutine psb_z_cscnv_ip(a,iinfo,type,mold,dupl)
import :: psb_z_sparse_mat, psb_dpk_, psb_z_base_sparse_mat
class(psb_z_sparse_mat), intent(inout) :: a
import :: psb_zspmat_type, psb_dpk_, psb_z_base_sparse_mat
class(psb_zspmat_type), intent(inout) :: a
integer, intent(out) :: iinfo
integer,optional, intent(in) :: dupl
character(len=*), optional, intent(in) :: type
@ -434,8 +434,8 @@ module psb_z_mat_mod
interface
subroutine psb_z_cscnv_base(a,b,info,dupl)
import :: psb_z_sparse_mat, psb_dpk_, psb_z_base_sparse_mat
class(psb_z_sparse_mat), intent(in) :: a
import :: psb_zspmat_type, psb_dpk_, psb_z_base_sparse_mat
class(psb_zspmat_type), intent(in) :: a
class(psb_z_base_sparse_mat), intent(out) :: b
integer, intent(out) :: info
integer,optional, intent(in) :: dupl
@ -444,106 +444,106 @@ module psb_z_mat_mod
interface
subroutine psb_z_clip_d(a,b,info)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(in) :: a
class(psb_z_sparse_mat), intent(out) :: b
import :: psb_zspmat_type
class(psb_zspmat_type), intent(in) :: a
class(psb_zspmat_type), intent(out) :: b
integer,intent(out) :: info
end subroutine psb_z_clip_d
end interface
interface
subroutine psb_z_clip_d_ip(a,info)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(inout) :: a
import :: psb_zspmat_type
class(psb_zspmat_type), intent(inout) :: a
integer,intent(out) :: info
end subroutine psb_z_clip_d_ip
end interface
interface
subroutine psb_z_mv_from(a,b)
import :: psb_z_sparse_mat, psb_dpk_, psb_z_base_sparse_mat
class(psb_z_sparse_mat), intent(out) :: a
import :: psb_zspmat_type, psb_dpk_, psb_z_base_sparse_mat
class(psb_zspmat_type), intent(out) :: a
class(psb_z_base_sparse_mat), intent(inout) :: b
end subroutine psb_z_mv_from
end interface
interface
subroutine psb_z_cp_from(a,b)
import :: psb_z_sparse_mat, psb_dpk_, psb_z_base_sparse_mat
class(psb_z_sparse_mat), intent(out) :: a
import :: psb_zspmat_type, psb_dpk_, psb_z_base_sparse_mat
class(psb_zspmat_type), intent(out) :: a
class(psb_z_base_sparse_mat), intent(inout), allocatable :: b
end subroutine psb_z_cp_from
end interface
interface
subroutine psb_z_mv_to(a,b)
import :: psb_z_sparse_mat, psb_dpk_, psb_z_base_sparse_mat
class(psb_z_sparse_mat), intent(inout) :: a
import :: psb_zspmat_type, psb_dpk_, psb_z_base_sparse_mat
class(psb_zspmat_type), intent(inout) :: a
class(psb_z_base_sparse_mat), intent(out) :: b
end subroutine psb_z_mv_to
end interface
interface
subroutine psb_z_cp_to(a,b)
import :: psb_z_sparse_mat, psb_dpk_, psb_z_base_sparse_mat
class(psb_z_sparse_mat), intent(in) :: a
import :: psb_zspmat_type, psb_dpk_, psb_z_base_sparse_mat
class(psb_zspmat_type), intent(in) :: a
class(psb_z_base_sparse_mat), intent(out) :: b
end subroutine psb_z_cp_to
end interface
interface psb_move_alloc
subroutine psb_z_sparse_mat_move(a,b,info)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_z_sparse_mat), intent(out) :: b
subroutine psb_zspmat_type_move(a,b,info)
import :: psb_zspmat_type
class(psb_zspmat_type), intent(inout) :: a
class(psb_zspmat_type), intent(out) :: b
integer, intent(out) :: info
end subroutine psb_z_sparse_mat_move
end subroutine psb_zspmat_type_move
end interface
interface psb_clone
subroutine psb_z_sparse_mat_clone(a,b,info)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(in) :: a
class(psb_z_sparse_mat), intent(out) :: b
subroutine psb_zspmat_type_clone(a,b,info)
import :: psb_zspmat_type
class(psb_zspmat_type), intent(in) :: a
class(psb_zspmat_type), intent(out) :: b
integer, intent(out) :: info
end subroutine psb_z_sparse_mat_clone
end subroutine psb_zspmat_type_clone
end interface
interface
subroutine psb_z_transp_1mat(a)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(inout) :: a
import :: psb_zspmat_type
class(psb_zspmat_type), intent(inout) :: a
end subroutine psb_z_transp_1mat
end interface
interface
subroutine psb_z_transp_2mat(a,b)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(out) :: a
class(psb_z_sparse_mat), intent(in) :: b
import :: psb_zspmat_type
class(psb_zspmat_type), intent(out) :: a
class(psb_zspmat_type), intent(in) :: b
end subroutine psb_z_transp_2mat
end interface
interface
subroutine psb_z_transc_1mat(a)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(inout) :: a
import :: psb_zspmat_type
class(psb_zspmat_type), intent(inout) :: a
end subroutine psb_z_transc_1mat
end interface
interface
subroutine psb_z_transc_2mat(a,b)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(out) :: a
class(psb_z_sparse_mat), intent(in) :: b
import :: psb_zspmat_type
class(psb_zspmat_type), intent(out) :: a
class(psb_zspmat_type), intent(in) :: b
end subroutine psb_z_transc_2mat
end interface
interface
subroutine psb_z_reinit(a,clear)
import :: psb_z_sparse_mat
class(psb_z_sparse_mat), intent(inout) :: a
import :: psb_zspmat_type
class(psb_zspmat_type), intent(inout) :: a
logical, intent(in), optional :: clear
end subroutine psb_z_reinit
@ -566,16 +566,16 @@ module psb_z_mat_mod
interface psb_csmm
subroutine psb_z_csmm(alpha,a,x,beta,y,info,trans)
import :: psb_z_sparse_mat, psb_dpk_
class(psb_z_sparse_mat), intent(in) :: a
import :: psb_zspmat_type, psb_dpk_
class(psb_zspmat_type), intent(in) :: a
complex(psb_dpk_), intent(in) :: alpha, beta, x(:,:)
complex(psb_dpk_), intent(inout) :: y(:,:)
integer, intent(out) :: info
character, optional, intent(in) :: trans
end subroutine psb_z_csmm
subroutine psb_z_csmv(alpha,a,x,beta,y,info,trans)
import :: psb_z_sparse_mat, psb_dpk_
class(psb_z_sparse_mat), intent(in) :: a
import :: psb_zspmat_type, psb_dpk_
class(psb_zspmat_type), intent(in) :: a
complex(psb_dpk_), intent(in) :: alpha, beta, x(:)
complex(psb_dpk_), intent(inout) :: y(:)
integer, intent(out) :: info
@ -585,8 +585,8 @@ module psb_z_mat_mod
interface psb_cssm
subroutine psb_z_cssm(alpha,a,x,beta,y,info,trans,scale,d)
import :: psb_z_sparse_mat, psb_dpk_
class(psb_z_sparse_mat), intent(in) :: a
import :: psb_zspmat_type, psb_dpk_
class(psb_zspmat_type), intent(in) :: a
complex(psb_dpk_), intent(in) :: alpha, beta, x(:,:)
complex(psb_dpk_), intent(inout) :: y(:,:)
integer, intent(out) :: info
@ -594,8 +594,8 @@ module psb_z_mat_mod
complex(psb_dpk_), intent(in), optional :: d(:)
end subroutine psb_z_cssm
subroutine psb_z_cssv(alpha,a,x,beta,y,info,trans,scale,d)
import :: psb_z_sparse_mat, psb_dpk_
class(psb_z_sparse_mat), intent(in) :: a
import :: psb_zspmat_type, psb_dpk_
class(psb_zspmat_type), intent(in) :: a
complex(psb_dpk_), intent(in) :: alpha, beta, x(:)
complex(psb_dpk_), intent(inout) :: y(:)
integer, intent(out) :: info
@ -606,16 +606,16 @@ module psb_z_mat_mod
interface
function psb_z_csnmi(a) result(res)
import :: psb_z_sparse_mat, psb_dpk_
class(psb_z_sparse_mat), intent(in) :: a
import :: psb_zspmat_type, psb_dpk_
class(psb_zspmat_type), intent(in) :: a
real(psb_dpk_) :: res
end function psb_z_csnmi
end interface
interface
subroutine psb_z_get_diag(a,d,info)
import :: psb_z_sparse_mat, psb_dpk_
class(psb_z_sparse_mat), intent(in) :: a
import :: psb_zspmat_type, psb_dpk_
class(psb_zspmat_type), intent(in) :: a
complex(psb_dpk_), intent(out) :: d(:)
integer, intent(out) :: info
end subroutine psb_z_get_diag
@ -623,14 +623,14 @@ module psb_z_mat_mod
interface psb_scal
subroutine psb_z_scal(d,a,info)
import :: psb_z_sparse_mat, psb_dpk_
class(psb_z_sparse_mat), intent(inout) :: a
import :: psb_zspmat_type, psb_dpk_
class(psb_zspmat_type), intent(inout) :: a
complex(psb_dpk_), intent(in) :: d(:)
integer, intent(out) :: info
end subroutine psb_z_scal
subroutine psb_z_scals(d,a,info)
import :: psb_z_sparse_mat, psb_dpk_
class(psb_z_sparse_mat), intent(inout) :: a
import :: psb_zspmat_type, psb_dpk_
class(psb_zspmat_type), intent(inout) :: a
complex(psb_dpk_), intent(in) :: d
integer, intent(out) :: info
end subroutine psb_z_scals
@ -657,7 +657,7 @@ contains
function psb_z_sizeof(a) result(res)
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
integer(psb_long_int_k_) :: res
res = 0
@ -670,7 +670,7 @@ contains
function psb_z_get_fmt(a) result(res)
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
character(len=5) :: res
if (allocated(a%a)) then
@ -684,7 +684,7 @@ contains
function psb_z_get_dupl(a) result(res)
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
integer :: res
if (allocated(a%a)) then
@ -697,7 +697,7 @@ contains
function psb_z_get_state(a) result(res)
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
integer :: res
if (allocated(a%a)) then
@ -709,7 +709,7 @@ contains
function psb_z_get_nrows(a) result(res)
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
integer :: res
if (allocated(a%a)) then
@ -722,7 +722,7 @@ contains
function psb_z_get_ncols(a) result(res)
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
integer :: res
if (allocated(a%a)) then
@ -735,7 +735,7 @@ contains
function psb_z_is_triangle(a) result(res)
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -748,7 +748,7 @@ contains
function psb_z_is_unit(a) result(res)
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -761,7 +761,7 @@ contains
function psb_z_is_upper(a) result(res)
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -774,7 +774,7 @@ contains
function psb_z_is_lower(a) result(res)
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -787,7 +787,7 @@ contains
function psb_z_is_null(a) result(res)
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -800,7 +800,7 @@ contains
function psb_z_is_bld(a) result(res)
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -813,7 +813,7 @@ contains
function psb_z_is_upd(a) result(res)
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -826,7 +826,7 @@ contains
function psb_z_is_asb(a) result(res)
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -839,7 +839,7 @@ contains
function psb_z_is_sorted(a) result(res)
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
logical :: res
if (allocated(a%a)) then
@ -854,7 +854,7 @@ contains
function psb_z_get_nzeros(a) result(res)
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
integer :: res
res = 0
@ -867,7 +867,7 @@ contains
function psb_z_get_size(a) result(res)
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
integer :: res
@ -882,7 +882,7 @@ contains
function psb_z_get_nz_row(idx,a) result(res)
implicit none
integer, intent(in) :: idx
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
integer :: res
Integer :: err_act

@ -193,9 +193,9 @@ module psb_z_psblas_mod
interface psb_spnrmi
function psb_znrmi(a, desc_a,info)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_z_sparse_mat
use psb_mat_mod, only : psb_zspmat_type
real(psb_dpk_) :: psb_znrmi
type(psb_z_sparse_mat), intent (in) :: a
type(psb_zspmat_type), intent (in) :: a
type(psb_desc_type), intent (in) :: desc_a
integer, intent(out) :: info
end function psb_znrmi
@ -205,8 +205,8 @@ module psb_z_psblas_mod
subroutine psb_zspmm(alpha, a, x, beta, y, desc_a, info,&
&trans, k, jx, jy,work,doswap)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_z_sparse_mat
type(psb_z_sparse_mat), intent(in) :: a
use psb_mat_mod, only : psb_zspmat_type
type(psb_zspmat_type), intent(in) :: a
complex(psb_dpk_), intent(inout) :: x(:,:)
complex(psb_dpk_), intent(inout) :: y(:,:)
complex(psb_dpk_), intent(in) :: alpha, beta
@ -220,8 +220,8 @@ module psb_z_psblas_mod
subroutine psb_zspmv(alpha, a, x, beta, y,&
& desc_a, info, trans, work,doswap)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_z_sparse_mat
type(psb_z_sparse_mat), intent(in) :: a
use psb_mat_mod, only : psb_zspmat_type
type(psb_zspmat_type), intent(in) :: a
complex(psb_dpk_), intent(inout) :: x(:)
complex(psb_dpk_), intent(inout) :: y(:)
complex(psb_dpk_), intent(in) :: alpha, beta
@ -238,8 +238,8 @@ module psb_z_psblas_mod
& desc_a, info, trans, scale, choice,&
& diag, n, jx, jy, work)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_z_sparse_mat
type(psb_z_sparse_mat), intent(in) :: t
use psb_mat_mod, only : psb_zspmat_type
type(psb_zspmat_type), intent(in) :: t
complex(psb_dpk_), intent(in) :: x(:,:)
complex(psb_dpk_), intent(inout) :: y(:,:)
complex(psb_dpk_), intent(in) :: alpha, beta
@ -255,8 +255,8 @@ module psb_z_psblas_mod
& desc_a, info, trans, scale, choice,&
& diag, work)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_z_sparse_mat
type(psb_z_sparse_mat), intent(in) :: t
use psb_mat_mod, only : psb_zspmat_type
type(psb_zspmat_type), intent(in) :: t
complex(psb_dpk_), intent(in) :: x(:)
complex(psb_dpk_), intent(inout) :: y(:)
complex(psb_dpk_), intent(in) :: alpha, beta

@ -69,9 +69,9 @@ Module psb_z_tools_mod
Subroutine psb_zsphalo(a,desc_a,blk,info,rowcnv,colcnv,&
& rowscale,colscale,outfmt,data)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_z_sparse_mat
Type(psb_z_sparse_mat),Intent(in) :: a
Type(psb_z_sparse_mat),Intent(inout) :: blk
use psb_mat_mod, only : psb_zspmat_type
Type(psb_zspmat_type),Intent(in) :: a
Type(psb_zspmat_type),Intent(inout) :: blk
Type(psb_desc_type),Intent(in) :: desc_a
integer, intent(out) :: info
logical, optional, intent(in) :: rowcnv,colcnv,rowscale,colscale
@ -124,9 +124,9 @@ Module psb_z_tools_mod
interface psb_cdbldext
Subroutine psb_zcdbldext(a,desc_a,novr,desc_ov,info,extype)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
Use psb_mat_mod, only : psb_z_sparse_mat
Use psb_mat_mod, only : psb_zspmat_type
integer, intent(in) :: novr
Type(psb_z_sparse_mat), Intent(in) :: a
Type(psb_zspmat_type), Intent(in) :: a
Type(psb_desc_type), Intent(in), target :: desc_a
Type(psb_desc_type), Intent(out) :: desc_ov
integer, intent(out) :: info
@ -137,9 +137,9 @@ Module psb_z_tools_mod
interface psb_spall
subroutine psb_zspalloc(a, desc_a, info, nnz)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_z_sparse_mat
use psb_mat_mod, only : psb_zspmat_type
type(psb_desc_type), intent(in) :: desc_a
type(psb_z_sparse_mat), intent(inout) :: a
type(psb_zspmat_type), intent(inout) :: a
integer, intent(out) :: info
integer, optional, intent(in) :: nnz
end subroutine psb_zspalloc
@ -148,8 +148,8 @@ Module psb_z_tools_mod
interface psb_spasb
subroutine psb_zspasb(a,desc_a, info, afmt, upd, dupl,mold)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_z_sparse_mat, psb_z_base_sparse_mat
type(psb_z_sparse_mat), intent (inout) :: a
use psb_mat_mod, only : psb_zspmat_type, psb_z_base_sparse_mat
type(psb_zspmat_type), intent (inout) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
integer,optional, intent(in) :: dupl, upd
@ -161,9 +161,9 @@ Module psb_z_tools_mod
interface psb_spfree
subroutine psb_zspfree(a, desc_a,info)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_z_sparse_mat
use psb_mat_mod, only : psb_zspmat_type
type(psb_desc_type), intent(in) :: desc_a
type(psb_z_sparse_mat), intent(inout) ::a
type(psb_zspmat_type), intent(inout) ::a
integer, intent(out) :: info
end subroutine psb_zspfree
end interface
@ -172,9 +172,9 @@ Module psb_z_tools_mod
interface psb_spins
subroutine psb_zspins(nz,ia,ja,val,a,desc_a,info,rebuild)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_z_sparse_mat
use psb_mat_mod, only : psb_zspmat_type
type(psb_desc_type), intent(inout) :: desc_a
type(psb_z_sparse_mat), intent(inout) :: a
type(psb_zspmat_type), intent(inout) :: a
integer, intent(in) :: nz,ia(:),ja(:)
complex(psb_dpk_), intent(in) :: val(:)
integer, intent(out) :: info
@ -182,10 +182,10 @@ Module psb_z_tools_mod
end subroutine psb_zspins
subroutine psb_zspins_2desc(nz,ia,ja,val,a,desc_ar,desc_ac,info)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_z_sparse_mat
use psb_mat_mod, only : psb_zspmat_type
type(psb_desc_type), intent(in) :: desc_ar
type(psb_desc_type), intent(inout) :: desc_ac
type(psb_z_sparse_mat), intent(inout) :: a
type(psb_zspmat_type), intent(inout) :: a
integer, intent(in) :: nz,ia(:),ja(:)
complex(psb_dpk_), intent(in) :: val(:)
integer, intent(out) :: info
@ -196,9 +196,9 @@ Module psb_z_tools_mod
interface psb_sprn
subroutine psb_zsprn(a, desc_a,info,clear)
use psb_descriptor_type, only : psb_desc_type, psb_spk_, psb_dpk_
use psb_mat_mod, only : psb_z_sparse_mat
use psb_mat_mod, only : psb_zspmat_type
type(psb_desc_type), intent(in) :: desc_a
type(psb_z_sparse_mat), intent(inout) :: a
type(psb_zspmat_type), intent(inout) :: a
integer, intent(out) :: info
logical, intent(in), optional :: clear
end subroutine psb_zsprn
@ -228,7 +228,7 @@ Module psb_z_tools_mod
!!$ use psb_penv_mod
!!$ use psb_error_mod
!!$ implicit none
!!$ type(psb_z_sparse_mat), intent(out) :: a_map
!!$ type(psb_zspmat_type), intent(out) :: a_map
!!$ type(psb_desc_type), intent(out) :: cd_xt
!!$ type(psb_desc_type), intent(in) :: descin, descout
!!$
@ -261,7 +261,7 @@ Module psb_z_tools_mod
!!$ integer, intent(in) :: nz
!!$ integer, intent(in) :: ir(:),ic(:)
!!$ complex(psb_dpk_), intent(in) :: val(:)
!!$ type(psb_z_sparse_mat), intent(inout) :: a_map
!!$ type(psb_zspmat_type), intent(inout) :: a_map
!!$ type(psb_desc_type), intent(inout) :: cd_xt
!!$ type(psb_desc_type), intent(in) :: descin, descout
!!$ integer :: info
@ -276,7 +276,7 @@ Module psb_z_tools_mod
!!$ use psb_descriptor_type
!!$ use psb_serial_mod
!!$ implicit none
!!$ type(psb_z_sparse_mat), intent(inout) :: a_map
!!$ type(psb_zspmat_type), intent(inout) :: a_map
!!$ type(psb_desc_type), intent(inout) :: cd_xt
!!$ type(psb_desc_type), intent(in) :: descin, descout
!!$ character(len=*), optional, intent(in) :: afmt

@ -45,7 +45,7 @@ function psb_cnrmi(a,desc_a,info)
use psb_sparse_mod, psb_protect_name => psb_cnrmi
implicit none
type(psb_c_sparse_mat), intent(in) :: a
type(psb_cspmat_type), intent(in) :: a
integer, intent(out) :: info
type(psb_desc_type), intent(in) :: desc_a
real(psb_spk_) :: psb_cnrmi

@ -71,7 +71,7 @@ subroutine psb_cspmm(alpha,a,x,beta,y,desc_a,info,&
complex(psb_spk_), intent(in) :: alpha, beta
complex(psb_spk_), intent(inout), target :: x(:,:)
complex(psb_spk_), intent(inout), target :: y(:,:)
type(psb_c_sparse_mat), intent(in) :: a
type(psb_cspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
complex(psb_spk_), optional, target, intent(inout) :: work(:)
@ -404,7 +404,7 @@ end subroutine psb_cspmm
!
! Arguments:
! alpha - complex The scalar alpha.
! a - type(psb_c_sparse_mat). The sparse matrix containing A.
! a - type(psb_cspmat_type). The sparse matrix containing A.
! x(:) - complex The input vector containing the entries of ( X ).
! beta - complex The scalar beta.
! y(:) - complex The input vector containing the entries of ( Y ).
@ -423,7 +423,7 @@ subroutine psb_cspmv(alpha,a,x,beta,y,desc_a,info,&
complex(psb_spk_), intent(in) :: alpha, beta
complex(psb_spk_), intent(inout), target :: x(:)
complex(psb_spk_), intent(inout), target :: y(:)
type(psb_c_sparse_mat), intent(in) :: a
type(psb_cspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
complex(psb_spk_), optional, target, intent(inout) :: work(:)

@ -57,7 +57,7 @@
!
! Arguments:
! alpha - complex. The scalar alpha.
! a - type(psb_c_sparse_mat). The sparse matrix containing A.
! a - type(psb_cspmat_type). The sparse matrix containing A.
! x(:,:) - complex The input vector containing the entries of ( X ).
! beta - complex The scalar beta.
! y(:,:) - complex The input vector containing the entries of ( Y ).
@ -82,7 +82,7 @@ subroutine psb_cspsm(alpha,a,x,beta,y,desc_a,info,&
complex(psb_spk_), intent(in) :: alpha, beta
complex(psb_spk_), intent(in), target :: x(:,:)
complex(psb_spk_), intent(inout), target :: y(:,:)
type (psb_c_sparse_mat), intent(in) :: a
type (psb_cspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
complex(psb_spk_), intent(in), optional, target :: diag(:)
@ -339,7 +339,7 @@ end subroutine psb_cspsm
!
! Arguments:
! alpha - complex. The scalar alpha.
! a - type(psb_c_sparse_mat). The sparse matrix containing A.
! a - type(psb_cspmat_type). The sparse matrix containing A.
! x(:) - complex The input vector containing the entries of ( X ).
! beta - complex The scalar beta.
! y(:) - complex The input vector containing the entries of ( Y ).
@ -361,7 +361,7 @@ subroutine psb_cspsv(alpha,a,x,beta,y,desc_a,info,&
complex(psb_spk_), intent(in) :: alpha, beta
complex(psb_spk_), intent(in), target :: x(:)
complex(psb_spk_), intent(inout), target :: y(:)
type(psb_c_sparse_mat), intent(in) :: a
type(psb_cspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
complex(psb_spk_), intent(in), optional, target :: diag(:)

@ -50,7 +50,7 @@ function psb_dnrmi(a,desc_a,info)
use psb_mat_mod
implicit none
type(psb_d_sparse_mat), intent(in) :: a
type(psb_dspmat_type), intent(in) :: a
integer, intent(out) :: info
type(psb_desc_type), intent(in) :: desc_a
real(psb_dpk_) :: psb_dnrmi

@ -71,7 +71,7 @@ subroutine psb_dspmm(alpha,a,x,beta,y,desc_a,info,&
real(psb_dpk_), intent(in) :: alpha, beta
real(psb_dpk_), intent(inout), target :: x(:,:)
real(psb_dpk_), intent(inout), target :: y(:,:)
type(psb_d_sparse_mat), intent(in) :: a
type(psb_dspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
real(psb_dpk_), optional, target, intent(inout) :: work(:)
@ -423,7 +423,7 @@ subroutine psb_dspmv(alpha,a,x,beta,y,desc_a,info,&
real(psb_dpk_), intent(in) :: alpha, beta
real(psb_dpk_), intent(inout), target :: x(:)
real(psb_dpk_), intent(inout), target :: y(:)
type(psb_d_sparse_mat), intent(in) :: a
type(psb_dspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
real(psb_dpk_), optional, target, intent(inout) :: work(:)

@ -52,7 +52,7 @@ function psb_dspnrm1(a,desc_a,info)
use psb_sparse_mod, psb_protect_name => psb_dspnrm1
implicit none
type(psb_d_sparse_mat), intent(in) :: a
type(psb_dspmat_type), intent(in) :: a
integer, intent(out) :: info
type(psb_desc_type), intent(in) :: desc_a
real(psb_dpk_) :: psb_dspnrm1

@ -83,7 +83,7 @@ subroutine psb_dspsm(alpha,a,x,beta,y,desc_a,info,&
real(psb_dpk_), intent(in) :: alpha, beta
real(psb_dpk_), intent(in), target :: x(:,:)
real(psb_dpk_), intent(inout), target :: y(:,:)
type(psb_d_sparse_mat), intent(in) :: a
type(psb_dspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
real(psb_dpk_), intent(in), optional, target :: diag(:)
@ -362,7 +362,7 @@ subroutine psb_dspsv(alpha,a,x,beta,y,desc_a,info,&
real(psb_dpk_), intent(in) :: alpha, beta
real(psb_dpk_), intent(in), target :: x(:)
real(psb_dpk_), intent(inout), target :: y(:)
type(psb_d_sparse_mat), intent(in) :: a
type(psb_dspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
real(psb_dpk_), intent(in), optional, target :: diag(:)

@ -50,7 +50,7 @@ function psb_snrmi(a,desc_a,info)
use psb_mat_mod
implicit none
type(psb_s_sparse_mat), intent(in) :: a
type(psb_sspmat_type), intent(in) :: a
integer, intent(out) :: info
type(psb_desc_type), intent(in) :: desc_a
real(psb_spk_) :: psb_snrmi

@ -71,7 +71,7 @@ subroutine psb_sspmm(alpha,a,x,beta,y,desc_a,info,&
real(psb_spk_), intent(in) :: alpha, beta
real(psb_spk_), intent(inout), target :: x(:,:)
real(psb_spk_), intent(inout), target :: y(:,:)
type(psb_s_sparse_mat), intent(in) :: a
type(psb_sspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
real(psb_spk_), optional, target, intent(inout) :: work(:)
@ -423,7 +423,7 @@ subroutine psb_sspmv(alpha,a,x,beta,y,desc_a,info,&
real(psb_spk_), intent(in) :: alpha, beta
real(psb_spk_), intent(inout), target :: x(:)
real(psb_spk_), intent(inout), target :: y(:)
type(psb_s_sparse_mat), intent(in) :: a
type(psb_sspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
real(psb_spk_), optional, target, intent(inout) :: work(:)

@ -83,7 +83,7 @@ subroutine psb_sspsm(alpha,a,x,beta,y,desc_a,info,&
real(psb_spk_), intent(in) :: alpha, beta
real(psb_spk_), intent(in), target :: x(:,:)
real(psb_spk_), intent(inout), target :: y(:,:)
type (psb_s_sparse_mat), intent(in) :: a
type (psb_sspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
real(psb_spk_), intent(in), optional, target :: diag(:)
@ -362,7 +362,7 @@ subroutine psb_sspsv(alpha,a,x,beta,y,desc_a,info,&
real(psb_spk_), intent(in) :: alpha, beta
real(psb_spk_), intent(in), target :: x(:)
real(psb_spk_), intent(inout), target :: y(:)
type(psb_s_sparse_mat), intent(in) :: a
type(psb_sspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
real(psb_spk_), intent(in), optional, target :: diag(:)

@ -37,7 +37,7 @@
! normi := max(abs(sum(A(i,j))))
!
! Arguments:
! a - type(psb_d_sparse_mat). The sparse matrix containing A.
! a - type(psb_dspmat_type). The sparse matrix containing A.
! desc_a - type(psb_desc_type). The communication descriptor.
! info - integer. Return code
!
@ -50,7 +50,7 @@ function psb_znrmi(a,desc_a,info)
use psb_mat_mod
implicit none
type(psb_z_sparse_mat), intent(in) :: a
type(psb_zspmat_type), intent(in) :: a
integer, intent(out) :: info
type(psb_desc_type), intent(in) :: desc_a
real(psb_dpk_) :: psb_znrmi

@ -49,7 +49,7 @@
!
! Arguments:
! alpha - complex The scalar alpha.
! a - type(psb_z_sparse_mat). The sparse matrix containing A.
! a - type(psb_zspmat_type). The sparse matrix containing A.
! x(:,:) - complex The input vector containing the entries of ( X ).
! beta - complex The scalar beta.
! y(:,:) - complex The input vector containing the entries of ( Y ).
@ -71,7 +71,7 @@ subroutine psb_zspmm(alpha,a,x,beta,y,desc_a,info,&
complex(psb_dpk_), intent(in) :: alpha, beta
complex(psb_dpk_), intent(inout), target :: x(:,:)
complex(psb_dpk_), intent(inout), target :: y(:,:)
type(psb_z_sparse_mat), intent(in) :: a
type(psb_zspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
complex(psb_dpk_), optional, target, intent(inout) :: work(:)
@ -404,7 +404,7 @@ end subroutine psb_zspmm
!
! Arguments:
! alpha - complex The scalar alpha.
! a - type(psb_z_sparse_mat). The sparse matrix containing A.
! a - type(psb_zspmat_type). The sparse matrix containing A.
! x(:) - complex The input vector containing the entries of ( X ).
! beta - complex The scalar beta.
! y(:) - complex The input vector containing the entries of ( Y ).
@ -423,7 +423,7 @@ subroutine psb_zspmv(alpha,a,x,beta,y,desc_a,info,&
complex(psb_dpk_), intent(in) :: alpha, beta
complex(psb_dpk_), intent(inout), target :: x(:)
complex(psb_dpk_), intent(inout), target :: y(:)
type(psb_z_sparse_mat), intent(in) :: a
type(psb_zspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
complex(psb_dpk_), optional, target, intent(inout) :: work(:)

@ -57,7 +57,7 @@
!
! Arguments:
! alpha - complex. The scalar alpha.
! a - type(psb_z_sparse_mat). The sparse matrix containing A.
! a - type(psb_zspmat_type). The sparse matrix containing A.
! x(:,:) - complex The input vector containing the entries of ( X ).
! beta - complex The scalar beta.
! y(:,:) - complex The input vector containing the entries of ( Y ).
@ -82,7 +82,7 @@ subroutine psb_zspsm(alpha,a,x,beta,y,desc_a,info,&
complex(psb_dpk_), intent(in) :: alpha, beta
complex(psb_dpk_), intent(in), target :: x(:,:)
complex(psb_dpk_), intent(inout), target :: y(:,:)
type (psb_z_sparse_mat), intent(in) :: a
type (psb_zspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
complex(psb_dpk_), intent(in), optional, target :: diag(:)
@ -339,7 +339,7 @@ end subroutine psb_zspsm
!
! Arguments:
! alpha - complex. The scalar alpha.
! a - type(psb_z_sparse_mat). The sparse matrix containing A.
! a - type(psb_zspmat_type). The sparse matrix containing A.
! x(:) - complex The input vector containing the entries of ( X ).
! beta - complex The scalar beta.
! y(:) - complex The input vector containing the entries of ( Y ).
@ -361,7 +361,7 @@ subroutine psb_zspsv(alpha,a,x,beta,y,desc_a,info,&
complex(psb_dpk_), intent(in) :: alpha, beta
complex(psb_dpk_), intent(in), target :: x(:)
complex(psb_dpk_), intent(inout), target :: y(:)
type(psb_z_sparse_mat), intent(in) :: a
type(psb_zspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
complex(psb_dpk_), intent(in), optional, target :: diag(:)

@ -16,7 +16,7 @@ subroutine psb_c_set_nrows(m,a)
use psb_c_mat_mod, psb_protect_name => psb_c_set_nrows
use psb_error_mod
implicit none
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
integer, intent(in) :: m
Integer :: err_act, info
character(len=20) :: name='set_nrows'
@ -50,7 +50,7 @@ subroutine psb_c_set_ncols(n,a)
use psb_c_mat_mod, psb_protect_name => psb_c_set_ncols
use psb_error_mod
implicit none
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
integer, intent(in) :: n
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -84,7 +84,7 @@ subroutine psb_c_set_state(n,a)
use psb_c_mat_mod, psb_protect_name => psb_c_set_state
use psb_error_mod
implicit none
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
integer, intent(in) :: n
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -118,7 +118,7 @@ subroutine psb_c_set_dupl(n,a)
use psb_c_mat_mod, psb_protect_name => psb_c_set_dupl
use psb_error_mod
implicit none
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
integer, intent(in) :: n
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -152,7 +152,7 @@ subroutine psb_c_set_null(a)
use psb_c_mat_mod, psb_protect_name => psb_c_set_null
use psb_error_mod
implicit none
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
logical, parameter :: debug=.false.
@ -185,7 +185,7 @@ subroutine psb_c_set_bld(a)
use psb_c_mat_mod, psb_protect_name => psb_c_set_bld
use psb_error_mod
implicit none
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
logical, parameter :: debug=.false.
@ -217,7 +217,7 @@ subroutine psb_c_set_upd(a)
use psb_c_mat_mod, psb_protect_name => psb_c_set_upd
use psb_error_mod
implicit none
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
logical, parameter :: debug=.false.
@ -250,7 +250,7 @@ subroutine psb_c_set_asb(a)
use psb_c_mat_mod, psb_protect_name => psb_c_set_asb
use psb_error_mod
implicit none
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
logical, parameter :: debug=.false.
@ -282,7 +282,7 @@ subroutine psb_c_set_sorted(a,val)
use psb_c_mat_mod, psb_protect_name => psb_c_set_sorted
use psb_error_mod
implicit none
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -315,7 +315,7 @@ subroutine psb_c_set_triangle(a,val)
use psb_c_mat_mod, psb_protect_name => psb_c_set_triangle
use psb_error_mod
implicit none
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -348,7 +348,7 @@ subroutine psb_c_set_unit(a,val)
use psb_c_mat_mod, psb_protect_name => psb_c_set_unit
use psb_error_mod
implicit none
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -381,7 +381,7 @@ subroutine psb_c_set_lower(a,val)
use psb_c_mat_mod, psb_protect_name => psb_c_set_lower
use psb_error_mod
implicit none
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -414,7 +414,7 @@ subroutine psb_c_set_upper(a,val)
use psb_c_mat_mod, psb_protect_name => psb_c_set_upper
use psb_error_mod
implicit none
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -463,7 +463,7 @@ subroutine psb_c_sparse_print(iout,a,iv,eirs,eics,head,ivr,ivc)
implicit none
integer, intent(in) :: iout
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
integer, intent(in), optional :: iv(:)
integer, intent(in), optional :: eirs,eics
character(len=*), optional :: head
@ -502,7 +502,7 @@ subroutine psb_c_get_neigh(a,idx,neigh,n,info,lev)
use psb_c_mat_mod, psb_protect_name => psb_c_get_neigh
use psb_error_mod
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
integer, intent(in) :: idx
integer, intent(out) :: n
integer, allocatable, intent(out) :: neigh(:)
@ -546,7 +546,7 @@ subroutine psb_c_csall(nr,nc,a,info,nz)
use psb_c_base_mat_mod
use psb_error_mod
implicit none
class(psb_c_sparse_mat), intent(out) :: a
class(psb_cspmat_type), intent(out) :: a
integer, intent(in) :: nr,nc
integer, intent(out) :: info
integer, intent(in), optional :: nz
@ -585,7 +585,7 @@ subroutine psb_c_reallocate_nz(nz,a)
use psb_error_mod
implicit none
integer, intent(in) :: nz
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='reallocate_nz'
logical, parameter :: debug=.false.
@ -617,7 +617,7 @@ subroutine psb_c_free(a)
use psb_c_mat_mod, psb_protect_name => psb_c_free
use psb_error_mod
implicit none
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
if (allocated(a%a)) then
call a%a%free()
@ -631,7 +631,7 @@ subroutine psb_c_trim(a)
use psb_c_mat_mod, psb_protect_name => psb_c_trim
use psb_error_mod
implicit none
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='trim'
logical, parameter :: debug=.false.
@ -664,7 +664,7 @@ subroutine psb_c_csput(nz,ia,ja,val,a,imin,imax,jmin,jmax,info,gtl)
use psb_c_base_mat_mod
use psb_error_mod
implicit none
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
complex(psb_spk_), intent(in) :: val(:)
integer, intent(in) :: nz, ia(:), ja(:), imin,imax,jmin,jmax
integer, intent(out) :: info
@ -709,7 +709,7 @@ subroutine psb_c_csgetptn(imin,imax,a,nz,ia,ja,info,&
use psb_c_mat_mod, psb_protect_name => psb_c_csgetptn
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
integer, intent(in) :: imin,imax
integer, intent(out) :: nz
integer, allocatable, intent(inout) :: ia(:), ja(:)
@ -759,7 +759,7 @@ subroutine psb_c_csgetrow(imin,imax,a,nz,ia,ja,val,info,&
use psb_c_mat_mod, psb_protect_name => psb_c_csgetrow
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
integer, intent(in) :: imin,imax
integer, intent(out) :: nz
integer, allocatable, intent(inout) :: ia(:), ja(:)
@ -812,8 +812,8 @@ subroutine psb_c_csgetblk(imin,imax,a,b,info,&
use psb_c_mat_mod, psb_protect_name => psb_c_csgetblk
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_c_sparse_mat), intent(out) :: b
class(psb_cspmat_type), intent(in) :: a
class(psb_cspmat_type), intent(out) :: b
integer, intent(in) :: imin,imax
integer,intent(out) :: info
logical, intent(in), optional :: append
@ -867,8 +867,8 @@ subroutine psb_c_csclip(a,b,info,&
use psb_c_mat_mod, psb_protect_name => psb_c_csclip
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_c_sparse_mat), intent(out) :: b
class(psb_cspmat_type), intent(in) :: a
class(psb_cspmat_type), intent(out) :: b
integer,intent(out) :: info
integer, intent(in), optional :: imin,imax,jmin,jmax
logical, intent(in), optional :: rscale,cscale
@ -915,7 +915,7 @@ subroutine psb_c_b_csclip(a,b,info,&
use psb_c_mat_mod, psb_protect_name => psb_c_b_csclip
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
type(psb_c_coo_sparse_mat), intent(out) :: b
integer,intent(out) :: info
integer, intent(in), optional :: imin,imax,jmin,jmax
@ -958,8 +958,8 @@ subroutine psb_c_cscnv(a,b,info,type,mold,upd,dupl)
use psb_string_mod
use psb_c_mat_mod, psb_protect_name => psb_c_cscnv
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_c_sparse_mat), intent(out) :: b
class(psb_cspmat_type), intent(in) :: a
class(psb_cspmat_type), intent(out) :: b
integer, intent(out) :: info
integer,optional, intent(in) :: dupl, upd
character(len=*), optional, intent(in) :: type
@ -1060,7 +1060,7 @@ subroutine psb_c_cscnv_ip(a,info,type,mold,dupl)
use psb_c_mat_mod, psb_protect_name => psb_c_cscnv_ip
implicit none
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
integer, intent(out) :: info
integer,optional, intent(in) :: dupl
character(len=*), optional, intent(in) :: type
@ -1159,7 +1159,7 @@ subroutine psb_c_cscnv_base(a,b,info,dupl)
use psb_string_mod
use psb_c_mat_mod, psb_protect_name => psb_c_cscnv_base
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
class(psb_c_base_sparse_mat), intent(out) :: b
integer, intent(out) :: info
integer,optional, intent(in) :: dupl
@ -1217,8 +1217,8 @@ subroutine psb_c_clip_d(a,b,info)
use psb_c_mat_mod, psb_protect_name => psb_c_clip_d
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_c_sparse_mat), intent(out) :: b
class(psb_cspmat_type), intent(in) :: a
class(psb_cspmat_type), intent(out) :: b
integer,intent(out) :: info
Integer :: err_act
@ -1280,7 +1280,7 @@ subroutine psb_c_clip_d_ip(a,info)
use psb_c_mat_mod, psb_protect_name => psb_c_clip_d_ip
implicit none
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
integer,intent(out) :: info
Integer :: err_act
@ -1338,7 +1338,7 @@ subroutine psb_c_mv_from(a,b)
use psb_string_mod
use psb_c_mat_mod, psb_protect_name => psb_c_mv_from
implicit none
class(psb_c_sparse_mat), intent(out) :: a
class(psb_cspmat_type), intent(out) :: a
class(psb_c_base_sparse_mat), intent(inout) :: b
integer :: info
@ -1359,7 +1359,7 @@ subroutine psb_c_cp_from(a,b)
use psb_string_mod
use psb_c_mat_mod, psb_protect_name => psb_c_cp_from
implicit none
class(psb_c_sparse_mat), intent(out) :: a
class(psb_cspmat_type), intent(out) :: a
class(psb_c_base_sparse_mat), intent(inout), allocatable :: b
Integer :: err_act, info
character(len=20) :: name='clone'
@ -1396,7 +1396,7 @@ subroutine psb_c_mv_to(a,b)
use psb_string_mod
use psb_c_mat_mod, psb_protect_name => psb_c_mv_to
implicit none
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
class(psb_c_base_sparse_mat), intent(out) :: b
integer :: info
@ -1411,7 +1411,7 @@ subroutine psb_c_cp_to(a,b)
use psb_string_mod
use psb_c_mat_mod, psb_protect_name => psb_c_cp_to
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
class(psb_c_base_sparse_mat), intent(out) :: b
integer :: info
@ -1422,13 +1422,13 @@ end subroutine psb_c_cp_to
subroutine psb_c_sparse_mat_move(a,b,info)
subroutine psb_cspmat_type_move(a,b,info)
use psb_error_mod
use psb_string_mod
use psb_c_mat_mod, psb_protect_name => psb_c_sparse_mat_move
use psb_c_mat_mod, psb_protect_name => psb_cspmat_type_move
implicit none
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_c_sparse_mat), intent(out) :: b
class(psb_cspmat_type), intent(inout) :: a
class(psb_cspmat_type), intent(out) :: b
integer, intent(out) :: info
Integer :: err_act
@ -1439,16 +1439,16 @@ subroutine psb_c_sparse_mat_move(a,b,info)
call move_alloc(a%a,b%a)
return
end subroutine psb_c_sparse_mat_move
end subroutine psb_cspmat_type_move
subroutine psb_c_sparse_mat_clone(a,b,info)
subroutine psb_cspmat_type_clone(a,b,info)
use psb_error_mod
use psb_string_mod
use psb_c_mat_mod, psb_protect_name => psb_c_sparse_mat_clone
use psb_c_mat_mod, psb_protect_name => psb_cspmat_type_clone
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_c_sparse_mat), intent(out) :: b
class(psb_cspmat_type), intent(in) :: a
class(psb_cspmat_type), intent(out) :: b
integer, intent(out) :: info
Integer :: err_act
@ -1479,7 +1479,7 @@ subroutine psb_c_sparse_mat_clone(a,b,info)
return
end if
end subroutine psb_c_sparse_mat_clone
end subroutine psb_cspmat_type_clone
@ -1488,7 +1488,7 @@ subroutine psb_c_transp_1mat(a)
use psb_string_mod
use psb_c_mat_mod, psb_protect_name => psb_c_transp_1mat
implicit none
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='transp'
@ -1524,8 +1524,8 @@ subroutine psb_c_transp_2mat(a,b)
use psb_string_mod
use psb_c_mat_mod, psb_protect_name => psb_c_transp_2mat
implicit none
class(psb_c_sparse_mat), intent(out) :: a
class(psb_c_sparse_mat), intent(in) :: b
class(psb_cspmat_type), intent(out) :: a
class(psb_cspmat_type), intent(in) :: b
Integer :: err_act, info
character(len=20) :: name='transp'
@ -1569,7 +1569,7 @@ subroutine psb_c_transc_1mat(a)
use psb_string_mod
use psb_c_mat_mod, psb_protect_name => psb_c_transc_1mat
implicit none
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='transc'
@ -1605,8 +1605,8 @@ subroutine psb_c_transc_2mat(a,b)
use psb_string_mod
use psb_c_mat_mod, psb_protect_name => psb_c_transc_2mat
implicit none
class(psb_c_sparse_mat), intent(out) :: a
class(psb_c_sparse_mat), intent(in) :: b
class(psb_cspmat_type), intent(out) :: a
class(psb_cspmat_type), intent(in) :: b
Integer :: err_act, info
character(len=20) :: name='transc'
@ -1652,7 +1652,7 @@ subroutine psb_c_reinit(a,clear)
use psb_error_mod
implicit none
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
logical, intent(in), optional :: clear
Integer :: err_act, info
character(len=20) :: name='reinit'
@ -1700,7 +1700,7 @@ subroutine psb_c_csmm(alpha,a,x,beta,y,info,trans)
use psb_error_mod
use psb_c_mat_mod, psb_protect_name => psb_c_csmm
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
complex(psb_spk_), intent(in) :: alpha, beta, x(:,:)
complex(psb_spk_), intent(inout) :: y(:,:)
integer, intent(out) :: info
@ -1738,7 +1738,7 @@ subroutine psb_c_csmv(alpha,a,x,beta,y,info,trans)
use psb_error_mod
use psb_c_mat_mod, psb_protect_name => psb_c_csmv
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
complex(psb_spk_), intent(in) :: alpha, beta, x(:)
complex(psb_spk_), intent(inout) :: y(:)
integer, intent(out) :: info
@ -1776,7 +1776,7 @@ subroutine psb_c_cssm(alpha,a,x,beta,y,info,trans,scale,d)
use psb_error_mod
use psb_c_mat_mod, psb_protect_name => psb_c_cssm
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
complex(psb_spk_), intent(in) :: alpha, beta, x(:,:)
complex(psb_spk_), intent(inout) :: y(:,:)
integer, intent(out) :: info
@ -1816,7 +1816,7 @@ subroutine psb_c_cssv(alpha,a,x,beta,y,info,trans,scale,d)
use psb_error_mod
use psb_c_mat_mod, psb_protect_name => psb_c_cssv
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
complex(psb_spk_), intent(in) :: alpha, beta, x(:)
complex(psb_spk_), intent(inout) :: y(:)
integer, intent(out) :: info
@ -1859,7 +1859,7 @@ function psb_c_csnmi(a) result(res)
use psb_error_mod
use psb_const_mod
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
real(psb_spk_) :: res
Integer :: err_act, info
@ -1892,7 +1892,7 @@ subroutine psb_c_get_diag(a,d,info)
use psb_error_mod
use psb_const_mod
implicit none
class(psb_c_sparse_mat), intent(in) :: a
class(psb_cspmat_type), intent(in) :: a
complex(psb_spk_), intent(out) :: d(:)
integer, intent(out) :: info
@ -1930,7 +1930,7 @@ subroutine psb_c_scal(d,a,info)
use psb_const_mod
use psb_c_mat_mod, psb_protect_name => psb_c_scal
implicit none
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
complex(psb_spk_), intent(in) :: d(:)
integer, intent(out) :: info
@ -1968,7 +1968,7 @@ subroutine psb_c_scals(d,a,info)
use psb_const_mod
use psb_c_mat_mod, psb_protect_name => psb_c_scals
implicit none
class(psb_c_sparse_mat), intent(inout) :: a
class(psb_cspmat_type), intent(inout) :: a
complex(psb_spk_), intent(in) :: d
integer, intent(out) :: info

@ -16,7 +16,7 @@ subroutine psb_d_set_nrows(m,a)
use psb_d_mat_mod, psb_protect_name => psb_d_set_nrows
use psb_error_mod
implicit none
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
integer, intent(in) :: m
Integer :: err_act, info
character(len=20) :: name='set_nrows'
@ -50,7 +50,7 @@ subroutine psb_d_set_ncols(n,a)
use psb_d_mat_mod, psb_protect_name => psb_d_set_ncols
use psb_error_mod
implicit none
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
integer, intent(in) :: n
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -84,7 +84,7 @@ subroutine psb_d_set_state(n,a)
use psb_d_mat_mod, psb_protect_name => psb_d_set_state
use psb_error_mod
implicit none
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
integer, intent(in) :: n
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -118,7 +118,7 @@ subroutine psb_d_set_dupl(n,a)
use psb_d_mat_mod, psb_protect_name => psb_d_set_dupl
use psb_error_mod
implicit none
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
integer, intent(in) :: n
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -152,7 +152,7 @@ subroutine psb_d_set_null(a)
use psb_d_mat_mod, psb_protect_name => psb_d_set_null
use psb_error_mod
implicit none
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
logical, parameter :: debug=.false.
@ -185,7 +185,7 @@ subroutine psb_d_set_bld(a)
use psb_d_mat_mod, psb_protect_name => psb_d_set_bld
use psb_error_mod
implicit none
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
logical, parameter :: debug=.false.
@ -217,7 +217,7 @@ subroutine psb_d_set_upd(a)
use psb_d_mat_mod, psb_protect_name => psb_d_set_upd
use psb_error_mod
implicit none
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
logical, parameter :: debug=.false.
@ -250,7 +250,7 @@ subroutine psb_d_set_asb(a)
use psb_d_mat_mod, psb_protect_name => psb_d_set_asb
use psb_error_mod
implicit none
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
logical, parameter :: debug=.false.
@ -282,7 +282,7 @@ subroutine psb_d_set_sorted(a,val)
use psb_d_mat_mod, psb_protect_name => psb_d_set_sorted
use psb_error_mod
implicit none
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -315,7 +315,7 @@ subroutine psb_d_set_triangle(a,val)
use psb_d_mat_mod, psb_protect_name => psb_d_set_triangle
use psb_error_mod
implicit none
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -348,7 +348,7 @@ subroutine psb_d_set_unit(a,val)
use psb_d_mat_mod, psb_protect_name => psb_d_set_unit
use psb_error_mod
implicit none
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -381,7 +381,7 @@ subroutine psb_d_set_lower(a,val)
use psb_d_mat_mod, psb_protect_name => psb_d_set_lower
use psb_error_mod
implicit none
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -414,7 +414,7 @@ subroutine psb_d_set_upper(a,val)
use psb_d_mat_mod, psb_protect_name => psb_d_set_upper
use psb_error_mod
implicit none
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -463,7 +463,7 @@ subroutine psb_d_sparse_print(iout,a,iv,eirs,eics,head,ivr,ivc)
implicit none
integer, intent(in) :: iout
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
integer, intent(in), optional :: iv(:)
integer, intent(in), optional :: eirs,eics
character(len=*), optional :: head
@ -502,7 +502,7 @@ subroutine psb_d_get_neigh(a,idx,neigh,n,info,lev)
use psb_d_mat_mod, psb_protect_name => psb_d_get_neigh
use psb_error_mod
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
integer, intent(in) :: idx
integer, intent(out) :: n
integer, allocatable, intent(out) :: neigh(:)
@ -546,7 +546,7 @@ subroutine psb_d_csall(nr,nc,a,info,nz)
use psb_d_base_mat_mod
use psb_error_mod
implicit none
class(psb_d_sparse_mat), intent(out) :: a
class(psb_dspmat_type), intent(out) :: a
integer, intent(in) :: nr,nc
integer, intent(out) :: info
integer, intent(in), optional :: nz
@ -585,7 +585,7 @@ subroutine psb_d_reallocate_nz(nz,a)
use psb_error_mod
implicit none
integer, intent(in) :: nz
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='reallocate_nz'
logical, parameter :: debug=.false.
@ -617,7 +617,7 @@ subroutine psb_d_free(a)
use psb_d_mat_mod, psb_protect_name => psb_d_free
use psb_error_mod
implicit none
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
if (allocated(a%a)) then
call a%a%free()
@ -631,7 +631,7 @@ subroutine psb_d_trim(a)
use psb_d_mat_mod, psb_protect_name => psb_d_trim
use psb_error_mod
implicit none
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='trim'
logical, parameter :: debug=.false.
@ -664,7 +664,7 @@ subroutine psb_d_csput(nz,ia,ja,val,a,imin,imax,jmin,jmax,info,gtl)
use psb_d_base_mat_mod
use psb_error_mod
implicit none
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
real(psb_dpk_), intent(in) :: val(:)
integer, intent(in) :: nz, ia(:), ja(:), imin,imax,jmin,jmax
integer, intent(out) :: info
@ -709,7 +709,7 @@ subroutine psb_d_csgetptn(imin,imax,a,nz,ia,ja,info,&
use psb_d_mat_mod, psb_protect_name => psb_d_csgetptn
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
integer, intent(in) :: imin,imax
integer, intent(out) :: nz
integer, allocatable, intent(inout) :: ia(:), ja(:)
@ -759,7 +759,7 @@ subroutine psb_d_csgetrow(imin,imax,a,nz,ia,ja,val,info,&
use psb_d_mat_mod, psb_protect_name => psb_d_csgetrow
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
integer, intent(in) :: imin,imax
integer, intent(out) :: nz
integer, allocatable, intent(inout) :: ia(:), ja(:)
@ -812,8 +812,8 @@ subroutine psb_d_csgetblk(imin,imax,a,b,info,&
use psb_d_mat_mod, psb_protect_name => psb_d_csgetblk
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_d_sparse_mat), intent(out) :: b
class(psb_dspmat_type), intent(in) :: a
class(psb_dspmat_type), intent(out) :: b
integer, intent(in) :: imin,imax
integer,intent(out) :: info
logical, intent(in), optional :: append
@ -867,8 +867,8 @@ subroutine psb_d_csclip(a,b,info,&
use psb_d_mat_mod, psb_protect_name => psb_d_csclip
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_d_sparse_mat), intent(out) :: b
class(psb_dspmat_type), intent(in) :: a
class(psb_dspmat_type), intent(out) :: b
integer,intent(out) :: info
integer, intent(in), optional :: imin,imax,jmin,jmax
logical, intent(in), optional :: rscale,cscale
@ -915,7 +915,7 @@ subroutine psb_d_b_csclip(a,b,info,&
use psb_d_mat_mod, psb_protect_name => psb_d_b_csclip
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
type(psb_d_coo_sparse_mat), intent(out) :: b
integer,intent(out) :: info
integer, intent(in), optional :: imin,imax,jmin,jmax
@ -958,8 +958,8 @@ subroutine psb_d_cscnv(a,b,info,type,mold,upd,dupl)
use psb_string_mod
use psb_d_mat_mod, psb_protect_name => psb_d_cscnv
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_d_sparse_mat), intent(out) :: b
class(psb_dspmat_type), intent(in) :: a
class(psb_dspmat_type), intent(out) :: b
integer, intent(out) :: info
integer,optional, intent(in) :: dupl, upd
character(len=*), optional, intent(in) :: type
@ -1060,7 +1060,7 @@ subroutine psb_d_cscnv_ip(a,info,type,mold,dupl)
use psb_d_mat_mod, psb_protect_name => psb_d_cscnv_ip
implicit none
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
integer, intent(out) :: info
integer,optional, intent(in) :: dupl
character(len=*), optional, intent(in) :: type
@ -1159,7 +1159,7 @@ subroutine psb_d_cscnv_base(a,b,info,dupl)
use psb_string_mod
use psb_d_mat_mod, psb_protect_name => psb_d_cscnv_base
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
class(psb_d_base_sparse_mat), intent(out) :: b
integer, intent(out) :: info
integer,optional, intent(in) :: dupl
@ -1217,8 +1217,8 @@ subroutine psb_d_clip_d(a,b,info)
use psb_d_mat_mod, psb_protect_name => psb_d_clip_d
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_d_sparse_mat), intent(out) :: b
class(psb_dspmat_type), intent(in) :: a
class(psb_dspmat_type), intent(out) :: b
integer,intent(out) :: info
Integer :: err_act
@ -1280,7 +1280,7 @@ subroutine psb_d_clip_d_ip(a,info)
use psb_d_mat_mod, psb_protect_name => psb_d_clip_d_ip
implicit none
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
integer,intent(out) :: info
Integer :: err_act
@ -1338,7 +1338,7 @@ subroutine psb_d_mv_from(a,b)
use psb_string_mod
use psb_d_mat_mod, psb_protect_name => psb_d_mv_from
implicit none
class(psb_d_sparse_mat), intent(out) :: a
class(psb_dspmat_type), intent(out) :: a
class(psb_d_base_sparse_mat), intent(inout) :: b
integer :: info
@ -1359,7 +1359,7 @@ subroutine psb_d_cp_from(a,b)
use psb_string_mod
use psb_d_mat_mod, psb_protect_name => psb_d_cp_from
implicit none
class(psb_d_sparse_mat), intent(out) :: a
class(psb_dspmat_type), intent(out) :: a
class(psb_d_base_sparse_mat), intent(inout), allocatable :: b
Integer :: err_act, info
character(len=20) :: name='clone'
@ -1395,7 +1395,7 @@ subroutine psb_d_mv_to(a,b)
use psb_string_mod
use psb_d_mat_mod, psb_protect_name => psb_d_mv_to
implicit none
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
class(psb_d_base_sparse_mat), intent(out) :: b
integer :: info
@ -1410,7 +1410,7 @@ subroutine psb_d_cp_to(a,b)
use psb_string_mod
use psb_d_mat_mod, psb_protect_name => psb_d_cp_to
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
class(psb_d_base_sparse_mat), intent(out) :: b
integer :: info
@ -1421,13 +1421,13 @@ end subroutine psb_d_cp_to
subroutine psb_d_sparse_mat_move(a,b,info)
subroutine psb_dspmat_type_move(a,b,info)
use psb_error_mod
use psb_string_mod
use psb_d_mat_mod, psb_protect_name => psb_d_sparse_mat_move
use psb_d_mat_mod, psb_protect_name => psb_dspmat_type_move
implicit none
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_d_sparse_mat), intent(out) :: b
class(psb_dspmat_type), intent(inout) :: a
class(psb_dspmat_type), intent(out) :: b
integer, intent(out) :: info
Integer :: err_act
@ -1438,16 +1438,16 @@ subroutine psb_d_sparse_mat_move(a,b,info)
call move_alloc(a%a,b%a)
return
end subroutine psb_d_sparse_mat_move
end subroutine psb_dspmat_type_move
subroutine psb_d_sparse_mat_clone(a,b,info)
subroutine psb_dspmat_type_clone(a,b,info)
use psb_error_mod
use psb_string_mod
use psb_d_mat_mod, psb_protect_name => psb_d_sparse_mat_clone
use psb_d_mat_mod, psb_protect_name => psb_dspmat_type_clone
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_d_sparse_mat), intent(out) :: b
class(psb_dspmat_type), intent(in) :: a
class(psb_dspmat_type), intent(out) :: b
integer, intent(out) :: info
Integer :: err_act
@ -1477,7 +1477,7 @@ subroutine psb_d_sparse_mat_clone(a,b,info)
return
end if
end subroutine psb_d_sparse_mat_clone
end subroutine psb_dspmat_type_clone
@ -1486,7 +1486,7 @@ subroutine psb_d_transp_1mat(a)
use psb_string_mod
use psb_d_mat_mod, psb_protect_name => psb_d_transp_1mat
implicit none
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='transp'
@ -1522,8 +1522,8 @@ subroutine psb_d_transp_2mat(a,b)
use psb_string_mod
use psb_d_mat_mod, psb_protect_name => psb_d_transp_2mat
implicit none
class(psb_d_sparse_mat), intent(out) :: a
class(psb_d_sparse_mat), intent(in) :: b
class(psb_dspmat_type), intent(out) :: a
class(psb_dspmat_type), intent(in) :: b
Integer :: err_act, info
character(len=20) :: name='transp'
@ -1567,7 +1567,7 @@ subroutine psb_d_transc_1mat(a)
use psb_string_mod
use psb_d_mat_mod, psb_protect_name => psb_d_transc_1mat
implicit none
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='transc'
@ -1603,8 +1603,8 @@ subroutine psb_d_transc_2mat(a,b)
use psb_string_mod
use psb_d_mat_mod, psb_protect_name => psb_d_transc_2mat
implicit none
class(psb_d_sparse_mat), intent(out) :: a
class(psb_d_sparse_mat), intent(in) :: b
class(psb_dspmat_type), intent(out) :: a
class(psb_dspmat_type), intent(in) :: b
Integer :: err_act, info
character(len=20) :: name='transc'
@ -1650,7 +1650,7 @@ subroutine psb_d_reinit(a,clear)
use psb_error_mod
implicit none
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
logical, intent(in), optional :: clear
Integer :: err_act, info
character(len=20) :: name='reinit'
@ -1698,7 +1698,7 @@ subroutine psb_d_csmm(alpha,a,x,beta,y,info,trans)
use psb_error_mod
use psb_d_mat_mod, psb_protect_name => psb_d_csmm
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
real(psb_dpk_), intent(in) :: alpha, beta, x(:,:)
real(psb_dpk_), intent(inout) :: y(:,:)
integer, intent(out) :: info
@ -1736,7 +1736,7 @@ subroutine psb_d_csmv(alpha,a,x,beta,y,info,trans)
use psb_error_mod
use psb_d_mat_mod, psb_protect_name => psb_d_csmv
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
real(psb_dpk_), intent(in) :: alpha, beta, x(:)
real(psb_dpk_), intent(inout) :: y(:)
integer, intent(out) :: info
@ -1774,7 +1774,7 @@ subroutine psb_d_cssm(alpha,a,x,beta,y,info,trans,scale,d)
use psb_error_mod
use psb_d_mat_mod, psb_protect_name => psb_d_cssm
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
real(psb_dpk_), intent(in) :: alpha, beta, x(:,:)
real(psb_dpk_), intent(inout) :: y(:,:)
integer, intent(out) :: info
@ -1814,7 +1814,7 @@ subroutine psb_d_cssv(alpha,a,x,beta,y,info,trans,scale,d)
use psb_error_mod
use psb_d_mat_mod, psb_protect_name => psb_d_cssv
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
real(psb_dpk_), intent(in) :: alpha, beta, x(:)
real(psb_dpk_), intent(inout) :: y(:)
integer, intent(out) :: info
@ -1857,7 +1857,7 @@ function psb_d_csnmi(a) result(res)
use psb_error_mod
use psb_const_mod
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
real(psb_dpk_) :: res
Integer :: err_act, info
@ -1890,7 +1890,7 @@ function psb_d_csnm1(a) result(res)
use psb_error_mod
use psb_const_mod
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
real(psb_dpk_) :: res
Integer :: err_act, info
@ -1923,7 +1923,7 @@ subroutine psb_d_rowsum(d,a,info)
use psb_error_mod
use psb_const_mod
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
real(psb_dpk_), intent(out) :: d(:)
integer, intent(out) :: info
@ -1960,7 +1960,7 @@ subroutine psb_d_arwsum(d,a,info)
use psb_error_mod
use psb_const_mod
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
real(psb_dpk_), intent(out) :: d(:)
integer, intent(out) :: info
@ -1997,7 +1997,7 @@ subroutine psb_d_colsum(d,a,info)
use psb_error_mod
use psb_const_mod
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
real(psb_dpk_), intent(out) :: d(:)
integer, intent(out) :: info
@ -2034,7 +2034,7 @@ subroutine psb_d_aclsum(d,a,info)
use psb_error_mod
use psb_const_mod
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
real(psb_dpk_), intent(out) :: d(:)
integer, intent(out) :: info
@ -2071,7 +2071,7 @@ subroutine psb_d_get_diag(a,d,info)
use psb_error_mod
use psb_const_mod
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_dspmat_type), intent(in) :: a
real(psb_dpk_), intent(out) :: d(:)
integer, intent(out) :: info
@ -2109,7 +2109,7 @@ subroutine psb_d_scal(d,a,info)
use psb_const_mod
use psb_d_mat_mod, psb_protect_name => psb_d_scal
implicit none
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
real(psb_dpk_), intent(in) :: d(:)
integer, intent(out) :: info
@ -2147,7 +2147,7 @@ subroutine psb_d_scals(d,a,info)
use psb_const_mod
use psb_d_mat_mod, psb_protect_name => psb_d_scals
implicit none
class(psb_d_sparse_mat), intent(inout) :: a
class(psb_dspmat_type), intent(inout) :: a
real(psb_dpk_), intent(in) :: d
integer, intent(out) :: info

@ -16,7 +16,7 @@ subroutine psb_s_set_nrows(m,a)
use psb_s_mat_mod, psb_protect_name => psb_s_set_nrows
use psb_error_mod
implicit none
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
integer, intent(in) :: m
Integer :: err_act, info
character(len=20) :: name='set_nrows'
@ -50,7 +50,7 @@ subroutine psb_s_set_ncols(n,a)
use psb_s_mat_mod, psb_protect_name => psb_s_set_ncols
use psb_error_mod
implicit none
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
integer, intent(in) :: n
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -84,7 +84,7 @@ subroutine psb_s_set_state(n,a)
use psb_s_mat_mod, psb_protect_name => psb_s_set_state
use psb_error_mod
implicit none
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
integer, intent(in) :: n
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -118,7 +118,7 @@ subroutine psb_s_set_dupl(n,a)
use psb_s_mat_mod, psb_protect_name => psb_s_set_dupl
use psb_error_mod
implicit none
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
integer, intent(in) :: n
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -152,7 +152,7 @@ subroutine psb_s_set_null(a)
use psb_s_mat_mod, psb_protect_name => psb_s_set_null
use psb_error_mod
implicit none
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
logical, parameter :: debug=.false.
@ -185,7 +185,7 @@ subroutine psb_s_set_bld(a)
use psb_s_mat_mod, psb_protect_name => psb_s_set_bld
use psb_error_mod
implicit none
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
logical, parameter :: debug=.false.
@ -217,7 +217,7 @@ subroutine psb_s_set_upd(a)
use psb_s_mat_mod, psb_protect_name => psb_s_set_upd
use psb_error_mod
implicit none
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
logical, parameter :: debug=.false.
@ -250,7 +250,7 @@ subroutine psb_s_set_asb(a)
use psb_s_mat_mod, psb_protect_name => psb_s_set_asb
use psb_error_mod
implicit none
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
logical, parameter :: debug=.false.
@ -282,7 +282,7 @@ subroutine psb_s_set_sorted(a,val)
use psb_s_mat_mod, psb_protect_name => psb_s_set_sorted
use psb_error_mod
implicit none
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -315,7 +315,7 @@ subroutine psb_s_set_triangle(a,val)
use psb_s_mat_mod, psb_protect_name => psb_s_set_triangle
use psb_error_mod
implicit none
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -348,7 +348,7 @@ subroutine psb_s_set_unit(a,val)
use psb_s_mat_mod, psb_protect_name => psb_s_set_unit
use psb_error_mod
implicit none
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -381,7 +381,7 @@ subroutine psb_s_set_lower(a,val)
use psb_s_mat_mod, psb_protect_name => psb_s_set_lower
use psb_error_mod
implicit none
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -414,7 +414,7 @@ subroutine psb_s_set_upper(a,val)
use psb_s_mat_mod, psb_protect_name => psb_s_set_upper
use psb_error_mod
implicit none
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -463,7 +463,7 @@ subroutine psb_s_sparse_print(iout,a,iv,eirs,eics,head,ivr,ivc)
implicit none
integer, intent(in) :: iout
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
integer, intent(in), optional :: iv(:)
integer, intent(in), optional :: eirs,eics
character(len=*), optional :: head
@ -502,7 +502,7 @@ subroutine psb_s_get_neigh(a,idx,neigh,n,info,lev)
use psb_s_mat_mod, psb_protect_name => psb_s_get_neigh
use psb_error_mod
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
integer, intent(in) :: idx
integer, intent(out) :: n
integer, allocatable, intent(out) :: neigh(:)
@ -546,7 +546,7 @@ subroutine psb_s_csall(nr,nc,a,info,nz)
use psb_s_base_mat_mod
use psb_error_mod
implicit none
class(psb_s_sparse_mat), intent(out) :: a
class(psb_sspmat_type), intent(out) :: a
integer, intent(in) :: nr,nc
integer, intent(out) :: info
integer, intent(in), optional :: nz
@ -585,7 +585,7 @@ subroutine psb_s_reallocate_nz(nz,a)
use psb_error_mod
implicit none
integer, intent(in) :: nz
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='reallocate_nz'
logical, parameter :: debug=.false.
@ -617,7 +617,7 @@ subroutine psb_s_free(a)
use psb_s_mat_mod, psb_protect_name => psb_s_free
use psb_error_mod
implicit none
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
if (allocated(a%a)) then
call a%a%free()
@ -631,7 +631,7 @@ subroutine psb_s_trim(a)
use psb_s_mat_mod, psb_protect_name => psb_s_trim
use psb_error_mod
implicit none
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='trim'
logical, parameter :: debug=.false.
@ -664,7 +664,7 @@ subroutine psb_s_csput(nz,ia,ja,val,a,imin,imax,jmin,jmax,info,gtl)
use psb_s_base_mat_mod
use psb_error_mod
implicit none
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
real(psb_spk_), intent(in) :: val(:)
integer, intent(in) :: nz, ia(:), ja(:), imin,imax,jmin,jmax
integer, intent(out) :: info
@ -709,7 +709,7 @@ subroutine psb_s_csgetptn(imin,imax,a,nz,ia,ja,info,&
use psb_s_mat_mod, psb_protect_name => psb_s_csgetptn
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
integer, intent(in) :: imin,imax
integer, intent(out) :: nz
integer, allocatable, intent(inout) :: ia(:), ja(:)
@ -759,7 +759,7 @@ subroutine psb_s_csgetrow(imin,imax,a,nz,ia,ja,val,info,&
use psb_s_mat_mod, psb_protect_name => psb_s_csgetrow
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
integer, intent(in) :: imin,imax
integer, intent(out) :: nz
integer, allocatable, intent(inout) :: ia(:), ja(:)
@ -812,8 +812,8 @@ subroutine psb_s_csgetblk(imin,imax,a,b,info,&
use psb_s_mat_mod, psb_protect_name => psb_s_csgetblk
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_s_sparse_mat), intent(out) :: b
class(psb_sspmat_type), intent(in) :: a
class(psb_sspmat_type), intent(out) :: b
integer, intent(in) :: imin,imax
integer,intent(out) :: info
logical, intent(in), optional :: append
@ -867,8 +867,8 @@ subroutine psb_s_csclip(a,b,info,&
use psb_s_mat_mod, psb_protect_name => psb_s_csclip
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_s_sparse_mat), intent(out) :: b
class(psb_sspmat_type), intent(in) :: a
class(psb_sspmat_type), intent(out) :: b
integer,intent(out) :: info
integer, intent(in), optional :: imin,imax,jmin,jmax
logical, intent(in), optional :: rscale,cscale
@ -915,7 +915,7 @@ subroutine psb_s_b_csclip(a,b,info,&
use psb_s_mat_mod, psb_protect_name => psb_s_b_csclip
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
type(psb_s_coo_sparse_mat), intent(out) :: b
integer,intent(out) :: info
integer, intent(in), optional :: imin,imax,jmin,jmax
@ -958,8 +958,8 @@ subroutine psb_s_cscnv(a,b,info,type,mold,upd,dupl)
use psb_string_mod
use psb_s_mat_mod, psb_protect_name => psb_s_cscnv
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_s_sparse_mat), intent(out) :: b
class(psb_sspmat_type), intent(in) :: a
class(psb_sspmat_type), intent(out) :: b
integer, intent(out) :: info
integer,optional, intent(in) :: dupl, upd
character(len=*), optional, intent(in) :: type
@ -1060,7 +1060,7 @@ subroutine psb_s_cscnv_ip(a,info,type,mold,dupl)
use psb_s_mat_mod, psb_protect_name => psb_s_cscnv_ip
implicit none
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
integer, intent(out) :: info
integer,optional, intent(in) :: dupl
character(len=*), optional, intent(in) :: type
@ -1159,7 +1159,7 @@ subroutine psb_s_cscnv_base(a,b,info,dupl)
use psb_string_mod
use psb_s_mat_mod, psb_protect_name => psb_s_cscnv_base
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
class(psb_s_base_sparse_mat), intent(out) :: b
integer, intent(out) :: info
integer,optional, intent(in) :: dupl
@ -1217,8 +1217,8 @@ subroutine psb_s_clip_d(a,b,info)
use psb_s_mat_mod, psb_protect_name => psb_s_clip_d
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_s_sparse_mat), intent(out) :: b
class(psb_sspmat_type), intent(in) :: a
class(psb_sspmat_type), intent(out) :: b
integer,intent(out) :: info
Integer :: err_act
@ -1280,7 +1280,7 @@ subroutine psb_s_clip_d_ip(a,info)
use psb_s_mat_mod, psb_protect_name => psb_s_clip_d_ip
implicit none
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
integer,intent(out) :: info
Integer :: err_act
@ -1338,7 +1338,7 @@ subroutine psb_s_mv_from(a,b)
use psb_string_mod
use psb_s_mat_mod, psb_protect_name => psb_s_mv_from
implicit none
class(psb_s_sparse_mat), intent(out) :: a
class(psb_sspmat_type), intent(out) :: a
class(psb_s_base_sparse_mat), intent(inout) :: b
integer :: info
@ -1359,7 +1359,7 @@ subroutine psb_s_cp_from(a,b)
use psb_string_mod
use psb_s_mat_mod, psb_protect_name => psb_s_cp_from
implicit none
class(psb_s_sparse_mat), intent(out) :: a
class(psb_sspmat_type), intent(out) :: a
class(psb_s_base_sparse_mat), intent(inout), allocatable :: b
Integer :: err_act, info
character(len=20) :: name='clone'
@ -1395,7 +1395,7 @@ subroutine psb_s_mv_to(a,b)
use psb_string_mod
use psb_s_mat_mod, psb_protect_name => psb_s_mv_to
implicit none
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
class(psb_s_base_sparse_mat), intent(out) :: b
integer :: info
@ -1410,7 +1410,7 @@ subroutine psb_s_cp_to(a,b)
use psb_string_mod
use psb_s_mat_mod, psb_protect_name => psb_s_cp_to
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
class(psb_s_base_sparse_mat), intent(out) :: b
integer :: info
@ -1421,13 +1421,13 @@ end subroutine psb_s_cp_to
subroutine psb_s_sparse_mat_move(a,b,info)
subroutine psb_sspmat_type_move(a,b,info)
use psb_error_mod
use psb_string_mod
use psb_s_mat_mod, psb_protect_name => psb_s_sparse_mat_move
use psb_s_mat_mod, psb_protect_name => psb_sspmat_type_move
implicit none
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_s_sparse_mat), intent(out) :: b
class(psb_sspmat_type), intent(inout) :: a
class(psb_sspmat_type), intent(out) :: b
integer, intent(out) :: info
Integer :: err_act
@ -1438,16 +1438,16 @@ subroutine psb_s_sparse_mat_move(a,b,info)
call move_alloc(a%a,b%a)
return
end subroutine psb_s_sparse_mat_move
end subroutine psb_sspmat_type_move
subroutine psb_s_sparse_mat_clone(a,b,info)
subroutine psb_sspmat_type_clone(a,b,info)
use psb_error_mod
use psb_string_mod
use psb_s_mat_mod, psb_protect_name => psb_s_sparse_mat_clone
use psb_s_mat_mod, psb_protect_name => psb_sspmat_type_clone
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_s_sparse_mat), intent(out) :: b
class(psb_sspmat_type), intent(in) :: a
class(psb_sspmat_type), intent(out) :: b
integer, intent(out) :: info
Integer :: err_act
@ -1478,7 +1478,7 @@ subroutine psb_s_sparse_mat_clone(a,b,info)
return
end if
end subroutine psb_s_sparse_mat_clone
end subroutine psb_sspmat_type_clone
@ -1487,7 +1487,7 @@ subroutine psb_s_transp_1mat(a)
use psb_string_mod
use psb_s_mat_mod, psb_protect_name => psb_s_transp_1mat
implicit none
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='transp'
@ -1523,8 +1523,8 @@ subroutine psb_s_transp_2mat(a,b)
use psb_string_mod
use psb_s_mat_mod, psb_protect_name => psb_s_transp_2mat
implicit none
class(psb_s_sparse_mat), intent(out) :: a
class(psb_s_sparse_mat), intent(in) :: b
class(psb_sspmat_type), intent(out) :: a
class(psb_sspmat_type), intent(in) :: b
Integer :: err_act, info
character(len=20) :: name='transp'
@ -1568,7 +1568,7 @@ subroutine psb_s_transc_1mat(a)
use psb_string_mod
use psb_s_mat_mod, psb_protect_name => psb_s_transc_1mat
implicit none
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='transc'
@ -1604,8 +1604,8 @@ subroutine psb_s_transc_2mat(a,b)
use psb_string_mod
use psb_s_mat_mod, psb_protect_name => psb_s_transc_2mat
implicit none
class(psb_s_sparse_mat), intent(out) :: a
class(psb_s_sparse_mat), intent(in) :: b
class(psb_sspmat_type), intent(out) :: a
class(psb_sspmat_type), intent(in) :: b
Integer :: err_act, info
character(len=20) :: name='transc'
@ -1651,7 +1651,7 @@ subroutine psb_s_reinit(a,clear)
use psb_error_mod
implicit none
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
logical, intent(in), optional :: clear
Integer :: err_act, info
character(len=20) :: name='reinit'
@ -1699,7 +1699,7 @@ subroutine psb_s_csmm(alpha,a,x,beta,y,info,trans)
use psb_error_mod
use psb_s_mat_mod, psb_protect_name => psb_s_csmm
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
real(psb_spk_), intent(in) :: alpha, beta, x(:,:)
real(psb_spk_), intent(inout) :: y(:,:)
integer, intent(out) :: info
@ -1737,7 +1737,7 @@ subroutine psb_s_csmv(alpha,a,x,beta,y,info,trans)
use psb_error_mod
use psb_s_mat_mod, psb_protect_name => psb_s_csmv
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
real(psb_spk_), intent(in) :: alpha, beta, x(:)
real(psb_spk_), intent(inout) :: y(:)
integer, intent(out) :: info
@ -1775,7 +1775,7 @@ subroutine psb_s_cssm(alpha,a,x,beta,y,info,trans,scale,d)
use psb_error_mod
use psb_s_mat_mod, psb_protect_name => psb_s_cssm
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
real(psb_spk_), intent(in) :: alpha, beta, x(:,:)
real(psb_spk_), intent(inout) :: y(:,:)
integer, intent(out) :: info
@ -1815,7 +1815,7 @@ subroutine psb_s_cssv(alpha,a,x,beta,y,info,trans,scale,d)
use psb_error_mod
use psb_s_mat_mod, psb_protect_name => psb_s_cssv
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
real(psb_spk_), intent(in) :: alpha, beta, x(:)
real(psb_spk_), intent(inout) :: y(:)
integer, intent(out) :: info
@ -1858,7 +1858,7 @@ function psb_s_csnmi(a) result(res)
use psb_error_mod
use psb_const_mod
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
real(psb_spk_) :: res
Integer :: err_act, info
@ -1891,7 +1891,7 @@ subroutine psb_s_get_diag(a,d,info)
use psb_error_mod
use psb_const_mod
implicit none
class(psb_s_sparse_mat), intent(in) :: a
class(psb_sspmat_type), intent(in) :: a
real(psb_spk_), intent(out) :: d(:)
integer, intent(out) :: info
@ -1929,7 +1929,7 @@ subroutine psb_s_scal(d,a,info)
use psb_const_mod
use psb_s_mat_mod, psb_protect_name => psb_s_scal
implicit none
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
real(psb_spk_), intent(in) :: d(:)
integer, intent(out) :: info
@ -1967,7 +1967,7 @@ subroutine psb_s_scals(d,a,info)
use psb_const_mod
use psb_s_mat_mod, psb_protect_name => psb_s_scals
implicit none
class(psb_s_sparse_mat), intent(inout) :: a
class(psb_sspmat_type), intent(inout) :: a
real(psb_spk_), intent(in) :: d
integer, intent(out) :: info

@ -16,7 +16,7 @@ subroutine psb_z_set_nrows(m,a)
use psb_z_mat_mod, psb_protect_name => psb_z_set_nrows
use psb_error_mod
implicit none
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
integer, intent(in) :: m
Integer :: err_act, info
character(len=20) :: name='set_nrows'
@ -50,7 +50,7 @@ subroutine psb_z_set_ncols(n,a)
use psb_z_mat_mod, psb_protect_name => psb_z_set_ncols
use psb_error_mod
implicit none
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
integer, intent(in) :: n
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -84,7 +84,7 @@ subroutine psb_z_set_state(n,a)
use psb_z_mat_mod, psb_protect_name => psb_z_set_state
use psb_error_mod
implicit none
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
integer, intent(in) :: n
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -118,7 +118,7 @@ subroutine psb_z_set_dupl(n,a)
use psb_z_mat_mod, psb_protect_name => psb_z_set_dupl
use psb_error_mod
implicit none
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
integer, intent(in) :: n
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -152,7 +152,7 @@ subroutine psb_z_set_null(a)
use psb_z_mat_mod, psb_protect_name => psb_z_set_null
use psb_error_mod
implicit none
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
logical, parameter :: debug=.false.
@ -185,7 +185,7 @@ subroutine psb_z_set_bld(a)
use psb_z_mat_mod, psb_protect_name => psb_z_set_bld
use psb_error_mod
implicit none
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
logical, parameter :: debug=.false.
@ -217,7 +217,7 @@ subroutine psb_z_set_upd(a)
use psb_z_mat_mod, psb_protect_name => psb_z_set_upd
use psb_error_mod
implicit none
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
logical, parameter :: debug=.false.
@ -250,7 +250,7 @@ subroutine psb_z_set_asb(a)
use psb_z_mat_mod, psb_protect_name => psb_z_set_asb
use psb_error_mod
implicit none
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
logical, parameter :: debug=.false.
@ -282,7 +282,7 @@ subroutine psb_z_set_sorted(a,val)
use psb_z_mat_mod, psb_protect_name => psb_z_set_sorted
use psb_error_mod
implicit none
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -315,7 +315,7 @@ subroutine psb_z_set_triangle(a,val)
use psb_z_mat_mod, psb_protect_name => psb_z_set_triangle
use psb_error_mod
implicit none
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -348,7 +348,7 @@ subroutine psb_z_set_unit(a,val)
use psb_z_mat_mod, psb_protect_name => psb_z_set_unit
use psb_error_mod
implicit none
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -381,7 +381,7 @@ subroutine psb_z_set_lower(a,val)
use psb_z_mat_mod, psb_protect_name => psb_z_set_lower
use psb_error_mod
implicit none
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -414,7 +414,7 @@ subroutine psb_z_set_upper(a,val)
use psb_z_mat_mod, psb_protect_name => psb_z_set_upper
use psb_error_mod
implicit none
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
logical, intent(in), optional :: val
Integer :: err_act, info
character(len=20) :: name='get_nzeros'
@ -463,7 +463,7 @@ subroutine psb_z_sparse_print(iout,a,iv,eirs,eics,head,ivr,ivc)
implicit none
integer, intent(in) :: iout
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
integer, intent(in), optional :: iv(:)
integer, intent(in), optional :: eirs,eics
character(len=*), optional :: head
@ -502,7 +502,7 @@ subroutine psb_z_get_neigh(a,idx,neigh,n,info,lev)
use psb_z_mat_mod, psb_protect_name => psb_z_get_neigh
use psb_error_mod
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
integer, intent(in) :: idx
integer, intent(out) :: n
integer, allocatable, intent(out) :: neigh(:)
@ -546,7 +546,7 @@ subroutine psb_z_csall(nr,nc,a,info,nz)
use psb_z_base_mat_mod
use psb_error_mod
implicit none
class(psb_z_sparse_mat), intent(out) :: a
class(psb_zspmat_type), intent(out) :: a
integer, intent(in) :: nr,nc
integer, intent(out) :: info
integer, intent(in), optional :: nz
@ -585,7 +585,7 @@ subroutine psb_z_reallocate_nz(nz,a)
use psb_error_mod
implicit none
integer, intent(in) :: nz
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='reallocate_nz'
logical, parameter :: debug=.false.
@ -617,7 +617,7 @@ subroutine psb_z_free(a)
use psb_z_mat_mod, psb_protect_name => psb_z_free
use psb_error_mod
implicit none
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
if (allocated(a%a)) then
call a%a%free()
@ -631,7 +631,7 @@ subroutine psb_z_trim(a)
use psb_z_mat_mod, psb_protect_name => psb_z_trim
use psb_error_mod
implicit none
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='trim'
logical, parameter :: debug=.false.
@ -664,7 +664,7 @@ subroutine psb_z_csput(nz,ia,ja,val,a,imin,imax,jmin,jmax,info,gtl)
use psb_z_base_mat_mod
use psb_error_mod
implicit none
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
complex(psb_dpk_), intent(in) :: val(:)
integer, intent(in) :: nz, ia(:), ja(:), imin,imax,jmin,jmax
integer, intent(out) :: info
@ -709,7 +709,7 @@ subroutine psb_z_csgetptn(imin,imax,a,nz,ia,ja,info,&
use psb_z_mat_mod, psb_protect_name => psb_z_csgetptn
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
integer, intent(in) :: imin,imax
integer, intent(out) :: nz
integer, allocatable, intent(inout) :: ia(:), ja(:)
@ -759,7 +759,7 @@ subroutine psb_z_csgetrow(imin,imax,a,nz,ia,ja,val,info,&
use psb_z_mat_mod, psb_protect_name => psb_z_csgetrow
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
integer, intent(in) :: imin,imax
integer, intent(out) :: nz
integer, allocatable, intent(inout) :: ia(:), ja(:)
@ -812,8 +812,8 @@ subroutine psb_z_csgetblk(imin,imax,a,b,info,&
use psb_z_mat_mod, psb_protect_name => psb_z_csgetblk
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_z_sparse_mat), intent(out) :: b
class(psb_zspmat_type), intent(in) :: a
class(psb_zspmat_type), intent(out) :: b
integer, intent(in) :: imin,imax
integer,intent(out) :: info
logical, intent(in), optional :: append
@ -867,8 +867,8 @@ subroutine psb_z_csclip(a,b,info,&
use psb_z_mat_mod, psb_protect_name => psb_z_csclip
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_z_sparse_mat), intent(out) :: b
class(psb_zspmat_type), intent(in) :: a
class(psb_zspmat_type), intent(out) :: b
integer,intent(out) :: info
integer, intent(in), optional :: imin,imax,jmin,jmax
logical, intent(in), optional :: rscale,cscale
@ -915,7 +915,7 @@ subroutine psb_z_b_csclip(a,b,info,&
use psb_z_mat_mod, psb_protect_name => psb_z_b_csclip
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
type(psb_z_coo_sparse_mat), intent(out) :: b
integer,intent(out) :: info
integer, intent(in), optional :: imin,imax,jmin,jmax
@ -958,8 +958,8 @@ subroutine psb_z_cscnv(a,b,info,type,mold,upd,dupl)
use psb_string_mod
use psb_z_mat_mod, psb_protect_name => psb_z_cscnv
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_z_sparse_mat), intent(out) :: b
class(psb_zspmat_type), intent(in) :: a
class(psb_zspmat_type), intent(out) :: b
integer, intent(out) :: info
integer,optional, intent(in) :: dupl, upd
character(len=*), optional, intent(in) :: type
@ -1060,7 +1060,7 @@ subroutine psb_z_cscnv_ip(a,info,type,mold,dupl)
use psb_z_mat_mod, psb_protect_name => psb_z_cscnv_ip
implicit none
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
integer, intent(out) :: info
integer,optional, intent(in) :: dupl
character(len=*), optional, intent(in) :: type
@ -1159,7 +1159,7 @@ subroutine psb_z_cscnv_base(a,b,info,dupl)
use psb_string_mod
use psb_z_mat_mod, psb_protect_name => psb_z_cscnv_base
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
class(psb_z_base_sparse_mat), intent(out) :: b
integer, intent(out) :: info
integer,optional, intent(in) :: dupl
@ -1217,8 +1217,8 @@ subroutine psb_z_clip_d(a,b,info)
use psb_z_mat_mod, psb_protect_name => psb_z_clip_d
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_z_sparse_mat), intent(out) :: b
class(psb_zspmat_type), intent(in) :: a
class(psb_zspmat_type), intent(out) :: b
integer,intent(out) :: info
Integer :: err_act
@ -1280,7 +1280,7 @@ subroutine psb_z_clip_d_ip(a,info)
use psb_z_mat_mod, psb_protect_name => psb_z_clip_d_ip
implicit none
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
integer,intent(out) :: info
Integer :: err_act
@ -1338,7 +1338,7 @@ subroutine psb_z_mv_from(a,b)
use psb_string_mod
use psb_z_mat_mod, psb_protect_name => psb_z_mv_from
implicit none
class(psb_z_sparse_mat), intent(out) :: a
class(psb_zspmat_type), intent(out) :: a
class(psb_z_base_sparse_mat), intent(inout) :: b
integer :: info
@ -1359,7 +1359,7 @@ subroutine psb_z_cp_from(a,b)
use psb_string_mod
use psb_z_mat_mod, psb_protect_name => psb_z_cp_from
implicit none
class(psb_z_sparse_mat), intent(out) :: a
class(psb_zspmat_type), intent(out) :: a
class(psb_z_base_sparse_mat), intent(inout), allocatable :: b
Integer :: err_act, info
character(len=20) :: name='clone'
@ -1395,7 +1395,7 @@ subroutine psb_z_mv_to(a,b)
use psb_string_mod
use psb_z_mat_mod, psb_protect_name => psb_z_mv_to
implicit none
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
class(psb_z_base_sparse_mat), intent(out) :: b
integer :: info
@ -1410,7 +1410,7 @@ subroutine psb_z_cp_to(a,b)
use psb_string_mod
use psb_z_mat_mod, psb_protect_name => psb_z_cp_to
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
class(psb_z_base_sparse_mat), intent(out) :: b
integer :: info
@ -1421,13 +1421,13 @@ end subroutine psb_z_cp_to
subroutine psb_z_sparse_mat_move(a,b,info)
subroutine psb_zspmat_type_move(a,b,info)
use psb_error_mod
use psb_string_mod
use psb_z_mat_mod, psb_protect_name => psb_z_sparse_mat_move
use psb_z_mat_mod, psb_protect_name => psb_zspmat_type_move
implicit none
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_z_sparse_mat), intent(out) :: b
class(psb_zspmat_type), intent(inout) :: a
class(psb_zspmat_type), intent(out) :: b
integer, intent(out) :: info
Integer :: err_act
@ -1438,16 +1438,16 @@ subroutine psb_z_sparse_mat_move(a,b,info)
call move_alloc(a%a,b%a)
return
end subroutine psb_z_sparse_mat_move
end subroutine psb_zspmat_type_move
subroutine psb_z_sparse_mat_clone(a,b,info)
subroutine psb_zspmat_type_clone(a,b,info)
use psb_error_mod
use psb_string_mod
use psb_z_mat_mod, psb_protect_name => psb_z_sparse_mat_clone
use psb_z_mat_mod, psb_protect_name => psb_zspmat_type_clone
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_z_sparse_mat), intent(out) :: b
class(psb_zspmat_type), intent(in) :: a
class(psb_zspmat_type), intent(out) :: b
integer, intent(out) :: info
Integer :: err_act
@ -1477,7 +1477,7 @@ subroutine psb_z_sparse_mat_clone(a,b,info)
return
end if
end subroutine psb_z_sparse_mat_clone
end subroutine psb_zspmat_type_clone
@ -1486,7 +1486,7 @@ subroutine psb_z_transp_1mat(a)
use psb_string_mod
use psb_z_mat_mod, psb_protect_name => psb_z_transp_1mat
implicit none
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='transp'
@ -1522,8 +1522,8 @@ subroutine psb_z_transp_2mat(a,b)
use psb_string_mod
use psb_z_mat_mod, psb_protect_name => psb_z_transp_2mat
implicit none
class(psb_z_sparse_mat), intent(out) :: a
class(psb_z_sparse_mat), intent(in) :: b
class(psb_zspmat_type), intent(out) :: a
class(psb_zspmat_type), intent(in) :: b
Integer :: err_act, info
character(len=20) :: name='transp'
@ -1567,7 +1567,7 @@ subroutine psb_z_transc_1mat(a)
use psb_string_mod
use psb_z_mat_mod, psb_protect_name => psb_z_transc_1mat
implicit none
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
Integer :: err_act, info
character(len=20) :: name='transc'
@ -1603,8 +1603,8 @@ subroutine psb_z_transc_2mat(a,b)
use psb_string_mod
use psb_z_mat_mod, psb_protect_name => psb_z_transc_2mat
implicit none
class(psb_z_sparse_mat), intent(out) :: a
class(psb_z_sparse_mat), intent(in) :: b
class(psb_zspmat_type), intent(out) :: a
class(psb_zspmat_type), intent(in) :: b
Integer :: err_act, info
character(len=20) :: name='transc'
@ -1650,7 +1650,7 @@ subroutine psb_z_reinit(a,clear)
use psb_error_mod
implicit none
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
logical, intent(in), optional :: clear
Integer :: err_act, info
character(len=20) :: name='reinit'
@ -1698,7 +1698,7 @@ subroutine psb_z_csmm(alpha,a,x,beta,y,info,trans)
use psb_error_mod
use psb_z_mat_mod, psb_protect_name => psb_z_csmm
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
complex(psb_dpk_), intent(in) :: alpha, beta, x(:,:)
complex(psb_dpk_), intent(inout) :: y(:,:)
integer, intent(out) :: info
@ -1736,7 +1736,7 @@ subroutine psb_z_csmv(alpha,a,x,beta,y,info,trans)
use psb_error_mod
use psb_z_mat_mod, psb_protect_name => psb_z_csmv
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
complex(psb_dpk_), intent(in) :: alpha, beta, x(:)
complex(psb_dpk_), intent(inout) :: y(:)
integer, intent(out) :: info
@ -1774,7 +1774,7 @@ subroutine psb_z_cssm(alpha,a,x,beta,y,info,trans,scale,d)
use psb_error_mod
use psb_z_mat_mod, psb_protect_name => psb_z_cssm
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
complex(psb_dpk_), intent(in) :: alpha, beta, x(:,:)
complex(psb_dpk_), intent(inout) :: y(:,:)
integer, intent(out) :: info
@ -1814,7 +1814,7 @@ subroutine psb_z_cssv(alpha,a,x,beta,y,info,trans,scale,d)
use psb_error_mod
use psb_z_mat_mod, psb_protect_name => psb_z_cssv
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
complex(psb_dpk_), intent(in) :: alpha, beta, x(:)
complex(psb_dpk_), intent(inout) :: y(:)
integer, intent(out) :: info
@ -1857,7 +1857,7 @@ function psb_z_csnmi(a) result(res)
use psb_error_mod
use psb_const_mod
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
real(psb_dpk_) :: res
Integer :: err_act, info
@ -1890,7 +1890,7 @@ subroutine psb_z_get_diag(a,d,info)
use psb_error_mod
use psb_const_mod
implicit none
class(psb_z_sparse_mat), intent(in) :: a
class(psb_zspmat_type), intent(in) :: a
complex(psb_dpk_), intent(out) :: d(:)
integer, intent(out) :: info
@ -1928,7 +1928,7 @@ subroutine psb_z_scal(d,a,info)
use psb_const_mod
use psb_z_mat_mod, psb_protect_name => psb_z_scal
implicit none
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
complex(psb_dpk_), intent(in) :: d(:)
integer, intent(out) :: info
@ -1966,7 +1966,7 @@ subroutine psb_z_scals(d,a,info)
use psb_const_mod
use psb_z_mat_mod, psb_protect_name => psb_z_scals
implicit none
class(psb_z_sparse_mat), intent(inout) :: a
class(psb_zspmat_type), intent(inout) :: a
complex(psb_dpk_), intent(in) :: d
integer, intent(out) :: info

@ -44,8 +44,8 @@ subroutine psb_cnumbmm(a,b,c)
use psb_sparse_mod, psb_protect_name => psb_cnumbmm
implicit none
type(psb_c_sparse_mat), intent(in) :: a,b
type(psb_c_sparse_mat), intent(inout) :: c
type(psb_cspmat_type), intent(in) :: a,b
type(psb_cspmat_type), intent(inout) :: c
integer :: info
integer :: err_act
character(len=*), parameter :: name='psb_numbmm'

@ -44,9 +44,9 @@ subroutine psb_crwextd(nr,a,info,b,rowscale)
! Extend matrix A up to NR rows with empty ones (i.e.: all zeroes)
integer, intent(in) :: nr
type(psb_c_sparse_mat), intent(inout) :: a
type(psb_cspmat_type), intent(inout) :: a
integer,intent(out) :: info
type(psb_c_sparse_mat), intent(in), optional :: b
type(psb_cspmat_type), intent(in), optional :: b
logical,intent(in), optional :: rowscale
integer :: i,j,ja,jb,err_act,nza,nzb

@ -43,8 +43,8 @@ subroutine psb_csymbmm(a,b,c,info)
use psb_sparse_mod, psb_protect_name => psb_csymbmm
implicit none
type(psb_c_sparse_mat), intent(in) :: a,b
type(psb_c_sparse_mat), intent(out) :: c
type(psb_cspmat_type), intent(in) :: a,b
type(psb_cspmat_type), intent(out) :: c
integer, intent(out) :: info
type(psb_c_csr_sparse_mat), allocatable :: ccsr
integer :: err_act

@ -44,8 +44,8 @@ subroutine psb_dnumbmm(a,b,c)
use psb_sparse_mod, psb_protect_name => psb_dnumbmm
implicit none
type(psb_d_sparse_mat), intent(in) :: a,b
type(psb_d_sparse_mat), intent(inout) :: c
type(psb_dspmat_type), intent(in) :: a,b
type(psb_dspmat_type), intent(inout) :: c
integer :: info
integer :: err_act
character(len=*), parameter :: name='psb_numbmm'

@ -44,9 +44,9 @@ subroutine psb_drwextd(nr,a,info,b,rowscale)
! Extend matrix A up to NR rows with empty ones (i.e.: all zeroes)
integer, intent(in) :: nr
type(psb_d_sparse_mat), intent(inout) :: a
type(psb_dspmat_type), intent(inout) :: a
integer,intent(out) :: info
type(psb_d_sparse_mat), intent(in), optional :: b
type(psb_dspmat_type), intent(in), optional :: b
logical,intent(in), optional :: rowscale
integer :: i,j,ja,jb,err_act,nza,nzb

@ -43,8 +43,8 @@ subroutine psb_dsymbmm(a,b,c,info)
use psb_sparse_mod, psb_protect_name => psb_dsymbmm
implicit none
type(psb_d_sparse_mat), intent(in) :: a,b
type(psb_d_sparse_mat), intent(out) :: c
type(psb_dspmat_type), intent(in) :: a,b
type(psb_dspmat_type), intent(out) :: c
integer, intent(out) :: info
type(psb_d_csr_sparse_mat), allocatable :: ccsr
integer :: err_act

@ -44,8 +44,8 @@ subroutine psb_snumbmm(a,b,c)
use psb_sparse_mod, psb_protect_name => psb_snumbmm
implicit none
type(psb_s_sparse_mat), intent(in) :: a,b
type(psb_s_sparse_mat), intent(inout) :: c
type(psb_sspmat_type), intent(in) :: a,b
type(psb_sspmat_type), intent(inout) :: c
integer :: info
integer :: err_act
character(len=*), parameter :: name='psb_numbmm'

@ -44,9 +44,9 @@ subroutine psb_srwextd(nr,a,info,b,rowscale)
! Extend matrix A up to NR rows with empty ones (i.e.: all zeroes)
integer, intent(in) :: nr
type(psb_s_sparse_mat), intent(inout) :: a
type(psb_sspmat_type), intent(inout) :: a
integer,intent(out) :: info
type(psb_s_sparse_mat), intent(in), optional :: b
type(psb_sspmat_type), intent(in), optional :: b
logical,intent(in), optional :: rowscale
integer :: i,j,ja,jb,err_act,nza,nzb

@ -43,8 +43,8 @@ subroutine psb_ssymbmm(a,b,c,info)
use psb_sparse_mod, psb_protect_name => psb_ssymbmm
implicit none
type(psb_s_sparse_mat), intent(in) :: a,b
type(psb_s_sparse_mat), intent(out) :: c
type(psb_sspmat_type), intent(in) :: a,b
type(psb_sspmat_type), intent(out) :: c
integer, intent(out) :: info
type(psb_s_csr_sparse_mat), allocatable :: ccsr
integer :: err_act

@ -44,8 +44,8 @@ subroutine psb_znumbmm(a,b,c)
use psb_sparse_mod, psb_protect_name => psb_znumbmm
implicit none
type(psb_z_sparse_mat), intent(in) :: a,b
type(psb_z_sparse_mat), intent(inout) :: c
type(psb_zspmat_type), intent(in) :: a,b
type(psb_zspmat_type), intent(inout) :: c
integer :: info
integer :: err_act
character(len=*), parameter :: name='psb_numbmm'

@ -44,9 +44,9 @@ subroutine psb_zrwextd(nr,a,info,b,rowscale)
! Extend matrix A up to NR rows with empty ones (i.e.: all zeroes)
integer, intent(in) :: nr
type(psb_z_sparse_mat), intent(inout) :: a
type(psb_zspmat_type), intent(inout) :: a
integer,intent(out) :: info
type(psb_z_sparse_mat), intent(in), optional :: b
type(psb_zspmat_type), intent(in), optional :: b
logical,intent(in), optional :: rowscale
integer :: i,j,ja,jb,err_act,nza,nzb

@ -43,8 +43,8 @@ subroutine psb_zsymbmm(a,b,c,info)
use psb_sparse_mod, psb_protect_name => psb_zsymbmm
implicit none
type(psb_z_sparse_mat), intent(in) :: a,b
type(psb_z_sparse_mat), intent(out) :: c
type(psb_zspmat_type), intent(in) :: a,b
type(psb_zspmat_type), intent(out) :: c
integer, intent(out) :: info
type(psb_z_csr_sparse_mat), allocatable :: ccsr
integer :: err_act

@ -37,7 +37,7 @@
! specified on input.
!
! Arguments:
! a - type(psb_c_sparse_mat). The input sparse matrix.
! a - type(psb_cspmat_type). The input sparse matrix.
! desc_a - type(psb_desc_type). The input communication descriptor.
! novr - integer. The number of overlap levels.
! desc_ov - type(psb_desc_type). The auxiliary output communication
@ -74,7 +74,7 @@ Subroutine psb_ccdbldext(a,desc_a,novr,desc_ov,info, extype)
! .. Array Arguments ..
integer, intent(in) :: novr
Type(psb_c_sparse_mat), Intent(in) :: a
Type(psb_cspmat_type), Intent(in) :: a
Type(psb_desc_type), Intent(in), target :: desc_a
Type(psb_desc_type), Intent(out) :: desc_ov
integer, intent(out) :: info

@ -35,7 +35,7 @@
! Allocate sparse matrix structure for psblas routines.
!
! Arguments:
! a - type(psb_c_sparse_mat). The sparse matrix to be allocated.
! a - type(psb_cspmat_type). The sparse matrix to be allocated.
! desc_a - type(psb_desc_type). The communication descriptor to be updated.
! info - integer. Return code.
! nnz - integer(optional). The number of nonzeroes in the matrix.
@ -47,7 +47,7 @@ subroutine psb_cspalloc(a, desc_a, info, nnz)
!....parameters...
type(psb_desc_type), intent(in) :: desc_a
type(psb_c_sparse_mat), intent(inout) :: a
type(psb_cspmat_type), intent(inout) :: a
integer, intent(out) :: info
integer, optional, intent(in) :: nnz

@ -35,7 +35,7 @@
! Assemble sparse matrix
!
! Arguments:
! a - type(psb_c_sparse_mat). The sparse matrix to be assembled
! a - type(psb_cspmat_type). The sparse matrix to be assembled
! desc_a - type(psb_desc_type). The communication descriptor.
! info - integer. return code.
! afmt - character(optional) The desired output storage format.
@ -55,7 +55,7 @@ subroutine psb_cspasb(a,desc_a, info, afmt, upd, dupl,mold)
!...Parameters....
type(psb_c_sparse_mat), intent (inout) :: a
type(psb_cspmat_type), intent (inout) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
integer,optional, intent(in) :: dupl, upd

@ -35,7 +35,7 @@
! Frees a sparse matrix structure.
!
! Arguments:
! a - type(psb_c_sparse_mat). The sparse matrix to be freed.
! a - type(psb_cspmat_type). The sparse matrix to be freed.
! desc_a - type(psb_desc_type). The communication descriptor.
! info - integer. return code.
!
@ -45,7 +45,7 @@ subroutine psb_cspfree(a, desc_a,info)
!....parameters...
type(psb_desc_type), intent(in) :: desc_a
type(psb_c_sparse_mat), intent(inout) :: a
type(psb_cspmat_type), intent(inout) :: a
integer, intent(out) :: info
!...locals....
integer :: ictxt, err_act

@ -38,9 +38,9 @@
!
!
! Arguments:
! a - type(psb_c_sparse_mat) The local part of input matrix A
! a - type(psb_cspmat_type) The local part of input matrix A
! desc_a - type(psb_desc_type). The communication descriptor.
! blck - type(psb_c_sparse_mat) The local part of output matrix BLCK
! blck - type(psb_cspmat_type) The local part of output matrix BLCK
! info - integer. Return code
! rowcnv - logical Should row/col indices be converted
! colcnv - logical to/from global numbering when sent/received?
@ -68,8 +68,8 @@ Subroutine psb_csphalo(a,desc_a,blk,info,rowcnv,colcnv,&
include 'mpif.h'
#endif
Type(psb_c_sparse_mat),Intent(in) :: a
Type(psb_c_sparse_mat),Intent(inout) :: blk
Type(psb_cspmat_type),Intent(in) :: a
Type(psb_cspmat_type),Intent(inout) :: blk
Type(psb_desc_type),Intent(in), target :: desc_a
integer, intent(out) :: info
logical, optional, intent(in) :: rowcnv,colcnv,rowscale,colscale

@ -42,7 +42,7 @@
! ia(:) - integer The row indices of the coefficients.
! ja(:) - integer The column indices of the coefficients.
! val(:) - complex The values of the coefficients to be inserted.
! a - type(psb_d_sparse_mat). The sparse destination matrix.
! a - type(psb_dspmat_type). The sparse destination matrix.
! desc_a - type(psb_desc_type). The communication descriptor.
! info - integer. Error code
! rebuild - logical Allows to reopen a matrix under
@ -55,7 +55,7 @@ subroutine psb_cspins(nz,ia,ja,val,a,desc_a,info,rebuild)
!....parameters...
type(psb_desc_type), intent(inout) :: desc_a
type(psb_c_sparse_mat), intent(inout) :: a
type(psb_cspmat_type), intent(inout) :: a
integer, intent(in) :: nz,ia(:),ja(:)
complex(psb_spk_), intent(in) :: val(:)
integer, intent(out) :: info
@ -239,7 +239,7 @@ subroutine psb_cspins_2desc(nz,ia,ja,val,a,desc_ar,desc_ac,info)
!....parameters...
type(psb_desc_type), intent(in) :: desc_ar
type(psb_desc_type), intent(inout) :: desc_ac
type(psb_c_sparse_mat), intent(inout) :: a
type(psb_cspmat_type), intent(inout) :: a
integer, intent(in) :: nz,ia(:),ja(:)
complex(psb_spk_), intent(in) :: val(:)
integer, intent(out) :: info

@ -36,7 +36,7 @@
! is in the update state.
!
! Arguments:
! a - type(psb_c_sparse_mat). The sparse matrix to be reinitiated.
! a - type(psb_cspmat_type). The sparse matrix to be reinitiated.
! desc_a - type(psb_desc_type). The communication descriptor.
! info - integer. Return code.
! clear - logical, optional Whether the coefficients should be zeroed
@ -48,7 +48,7 @@ Subroutine psb_csprn(a, desc_a,info,clear)
!....Parameters...
Type(psb_desc_type), intent(in) :: desc_a
Type(psb_c_sparse_mat), intent(inout) :: a
Type(psb_cspmat_type), intent(inout) :: a
integer, intent(out) :: info
logical, intent(in), optional :: clear

@ -37,7 +37,7 @@
! specified on input.
!
! Arguments:
! a - type(psb_d_sparse_mat). The input sparse matrix.
! a - type(psb_dspmat_type). The input sparse matrix.
! desc_a - type(psb_desc_type). The input communication descriptor.
! novr - integer. The number of overlap levels.
! desc_ov - type(psb_desc_type). The auxiliary output communication
@ -74,7 +74,7 @@ Subroutine psb_dcdbldext(a,desc_a,novr,desc_ov,info, extype)
! .. Array Arguments ..
integer, intent(in) :: novr
Type(psb_d_sparse_mat), Intent(in) :: a
Type(psb_dspmat_type), Intent(in) :: a
Type(psb_desc_type), Intent(in), target :: desc_a
Type(psb_desc_type), Intent(out) :: desc_ov
integer, intent(out) :: info

@ -35,7 +35,7 @@
! Allocate sparse matrix structure for psblas routines.
!
! Arguments:
! a - type(psb_d_sparse_mat). The sparse matrix to be allocated.
! a - type(psb_dspmat_type). The sparse matrix to be allocated.
! desc_a - type(psb_desc_type). The communication descriptor to be updated.
! info - integer. Return code.
! nnz - integer(optional). The number of nonzeroes in the matrix.
@ -47,7 +47,7 @@ subroutine psb_dspalloc(a, desc_a, info, nnz)
!....parameters...
type(psb_desc_type), intent(in) :: desc_a
type(psb_d_sparse_mat), intent(inout) :: a
type(psb_dspmat_type), intent(inout) :: a
integer, intent(out) :: info
integer, optional, intent(in) :: nnz

@ -35,7 +35,7 @@
! Assemble sparse matrix
!
! Arguments:
! a - type(psb_d_sparse_mat). The sparse matrix to be allocated.
! a - type(psb_dspmat_type). The sparse matrix to be allocated.
! desc_a - type(psb_desc_type). The communication descriptor.
! info - integer. return code.
! afmt - character(optional) The desired output storage format.
@ -55,7 +55,7 @@ subroutine psb_dspasb(a,desc_a, info, afmt, upd, dupl, mold)
!...Parameters....
type(psb_d_sparse_mat), intent (inout) :: a
type(psb_dspmat_type), intent (inout) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
integer,optional, intent(in) :: dupl, upd

@ -35,7 +35,7 @@
! Frees a sparse matrix structure.
!
! Arguments:
! a - type(psb_d_sparse_mat). The sparse matrix to be freed.
! a - type(psb_dspmat_type). The sparse matrix to be freed.
! desc_a - type(psb_desc_type). The communication descriptor.
! info - integer. return code.
!
@ -45,7 +45,7 @@ subroutine psb_dspfree(a, desc_a,info)
!....parameters...
type(psb_desc_type), intent(in) :: desc_a
type(psb_d_sparse_mat), intent(inout) :: a
type(psb_dspmat_type), intent(inout) :: a
integer, intent(out) :: info
!...locals....
integer :: ictxt,err_act

@ -68,8 +68,8 @@ Subroutine psb_dsphalo(a,desc_a,blk,info,rowcnv,colcnv,&
include 'mpif.h'
#endif
type(psb_d_sparse_mat),intent(in) :: a
type(psb_d_sparse_mat),intent(inout) :: blk
type(psb_dspmat_type),intent(in) :: a
type(psb_dspmat_type),intent(inout) :: blk
type(psb_desc_type),intent(in), target :: desc_a
integer, intent(out) :: info
logical, optional, intent(in) :: rowcnv,colcnv,rowscale,colscale

@ -42,7 +42,7 @@
! ia(:) - integer The row indices of the coefficients.
! ja(:) - integer The column indices of the coefficients.
! val(:) - real The values of the coefficients to be inserted.
! a - type(psb_d_sparse_mat). The sparse destination matrix.
! a - type(psb_dspmat_type). The sparse destination matrix.
! desc_a - type(psb_desc_type). The communication descriptor.
! info - integer. Error code
! rebuild - logical Allows to reopen a matrix under
@ -54,7 +54,7 @@ subroutine psb_dspins(nz,ia,ja,val,a,desc_a,info,rebuild)
!....parameters...
type(psb_desc_type), intent(inout) :: desc_a
type(psb_d_sparse_mat), intent(inout) :: a
type(psb_dspmat_type), intent(inout) :: a
integer, intent(in) :: nz,ia(:),ja(:)
real(psb_dpk_), intent(in) :: val(:)
integer, intent(out) :: info
@ -237,7 +237,7 @@ subroutine psb_dspins_2desc(nz,ia,ja,val,a,desc_ar,desc_ac,info)
!....parameters...
type(psb_desc_type), intent(in) :: desc_ar
type(psb_desc_type), intent(inout) :: desc_ac
type(psb_d_sparse_mat), intent(inout) :: a
type(psb_dspmat_type), intent(inout) :: a
integer, intent(in) :: nz,ia(:),ja(:)
real(kind=psb_dpk_), intent(in) :: val(:)
integer, intent(out) :: info

@ -36,7 +36,7 @@
! is in the update state.
!
! Arguments:
! a - type(psb_d_sparse_mat). The sparse matrix to be reinitiated.
! a - type(psb_dspmat_type). The sparse matrix to be reinitiated.
! desc_a - type(psb_desc_type). The communication descriptor.
! info - integer. Return code.
! clear - logical, optional Whether the coefficients should be zeroed
@ -47,7 +47,7 @@ Subroutine psb_dsprn(a, desc_a,info,clear)
!....Parameters...
Type(psb_desc_type), intent(in) :: desc_a
Type(psb_d_sparse_mat), intent(inout) :: a
Type(psb_dspmat_type), intent(inout) :: a
integer, intent(out) :: info
logical, intent(in), optional :: clear

@ -37,7 +37,7 @@ function psb_c_linmap(map_kind,desc_X, desc_Y, map_X2Y, map_Y2X,iaggr,naggr) res
implicit none
type(psb_clinmap_type) :: this
type(psb_desc_type), target :: desc_X, desc_Y
type(psb_c_sparse_mat), intent(in) :: map_X2Y, map_Y2X
type(psb_cspmat_type), intent(in) :: map_X2Y, map_Y2X
integer, intent(in) :: map_kind
integer, intent(in), optional :: iaggr(:), naggr(:)
!
@ -113,7 +113,7 @@ function psb_d_linmap(map_kind,desc_X, desc_Y, map_X2Y, map_Y2X,iaggr,naggr) res
implicit none
type(psb_dlinmap_type) :: this
type(psb_desc_type), target :: desc_X, desc_Y
type(psb_d_sparse_mat), intent(in) :: map_X2Y, map_Y2X
type(psb_dspmat_type), intent(in) :: map_X2Y, map_Y2X
integer, intent(in) :: map_kind
integer, intent(in), optional :: iaggr(:), naggr(:)
!
@ -195,7 +195,7 @@ function psb_s_linmap(map_kind,desc_X, desc_Y, map_X2Y, map_Y2X,iaggr,naggr) res
implicit none
type(psb_slinmap_type) :: this
type(psb_desc_type), target :: desc_X, desc_Y
type(psb_s_sparse_mat), intent(in) :: map_X2Y, map_Y2X
type(psb_sspmat_type), intent(in) :: map_X2Y, map_Y2X
integer, intent(in) :: map_kind
integer, intent(in), optional :: iaggr(:), naggr(:)
!
@ -274,7 +274,7 @@ function psb_z_linmap(map_kind,desc_X, desc_Y, map_X2Y, map_Y2X,iaggr,naggr) res
implicit none
type(psb_zlinmap_type) :: this
type(psb_desc_type), target :: desc_X, desc_Y
type(psb_z_sparse_mat), intent(in) :: map_X2Y, map_Y2X
type(psb_zspmat_type), intent(in) :: map_X2Y, map_Y2X
integer, intent(in) :: map_kind
integer, intent(in), optional :: iaggr(:), naggr(:)
!

@ -73,7 +73,7 @@ Subroutine psb_scdbldext(a,desc_a,novr,desc_ov,info, extype)
! .. Array Arguments ..
integer, intent(in) :: novr
Type(psb_s_sparse_mat), Intent(in) :: a
Type(psb_sspmat_type), Intent(in) :: a
Type(psb_desc_type), Intent(in), target :: desc_a
Type(psb_desc_type), Intent(out) :: desc_ov
integer, intent(out) :: info

@ -35,7 +35,7 @@
! Allocate sparse matrix structure for psblas routines.
!
! Arguments:
! a - type(psb_s_sparse_mat). The sparse matrix to be allocated.
! a - type(psb_sspmat_type). The sparse matrix to be allocated.
! desc_a - type(psb_desc_type). The communication descriptor to be updated.
! info - integer. Return code.
! nnz - integer(optional). The number of nonzeroes in the matrix.
@ -47,7 +47,7 @@ subroutine psb_sspalloc(a, desc_a, info, nnz)
!....parameters...
type(psb_desc_type), intent(in) :: desc_a
type(psb_s_sparse_mat), intent(inout) :: a
type(psb_sspmat_type), intent(inout) :: a
integer, intent(out) :: info
integer, optional, intent(in) :: nnz

@ -35,7 +35,7 @@
! Assemble sparse matrix
!
! Arguments:
! a - type(psb_s_sparse_mat). The sparse matrix to be allocated.
! a - type(psb_sspmat_type). The sparse matrix to be allocated.
! desc_a - type(psb_desc_type). The communication descriptor.
! info - integer. return code.
! afmt - character(optional) The desired output storage format.
@ -55,7 +55,7 @@ subroutine psb_sspasb(a,desc_a, info, afmt, upd, dupl, mold)
!...Parameters....
type(psb_s_sparse_mat), intent (inout) :: a
type(psb_sspmat_type), intent (inout) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
integer,optional, intent(in) :: dupl, upd

@ -45,7 +45,7 @@ subroutine psb_sspfree(a, desc_a,info)
!....parameters...
type(psb_desc_type), intent(in) :: desc_a
type(psb_s_sparse_mat), intent(inout) :: a
type(psb_sspmat_type), intent(inout) :: a
integer, intent(out) :: info
!...locals....
integer :: ictxt,err_act

@ -68,8 +68,8 @@ Subroutine psb_ssphalo(a,desc_a,blk,info,rowcnv,colcnv,&
include 'mpif.h'
#endif
Type(psb_s_sparse_mat),Intent(in) :: a
Type(psb_s_sparse_mat),Intent(inout) :: blk
Type(psb_sspmat_type),Intent(in) :: a
Type(psb_sspmat_type),Intent(inout) :: blk
Type(psb_desc_type),Intent(in), target :: desc_a
integer, intent(out) :: info
logical, optional, intent(in) :: rowcnv,colcnv,rowscale,colscale

@ -42,7 +42,7 @@
! ia(:) - integer The row indices of the coefficients.
! ja(:) - integer The column indices of the coefficients.
! val(:) - real The values of the coefficients to be inserted.
! a - type(psb_s_sparse_mat). The sparse destination matrix.
! a - type(psb_sspmat_type). The sparse destination matrix.
! desc_a - type(psb_desc_type). The communication descriptor.
! info - integer. Error code
! rebuild - logical Allows to reopen a matrix under
@ -54,7 +54,7 @@ subroutine psb_sspins(nz,ia,ja,val,a,desc_a,info,rebuild)
!....parameters...
type(psb_desc_type), intent(inout) :: desc_a
type(psb_s_sparse_mat), intent(inout) :: a
type(psb_sspmat_type), intent(inout) :: a
integer, intent(in) :: nz,ia(:),ja(:)
real(psb_spk_), intent(in) :: val(:)
integer, intent(out) :: info
@ -237,7 +237,7 @@ subroutine psb_sspins_2desc(nz,ia,ja,val,a,desc_ar,desc_ac,info)
!....parameters...
type(psb_desc_type), intent(in) :: desc_ar
type(psb_desc_type), intent(inout) :: desc_ac
type(psb_s_sparse_mat), intent(inout) :: a
type(psb_sspmat_type), intent(inout) :: a
integer, intent(in) :: nz,ia(:),ja(:)
real(kind=psb_spk_), intent(in) :: val(:)
integer, intent(out) :: info

@ -36,7 +36,7 @@
! is in the update state.
!
! Arguments:
! a - type(psb_s_sparse_mat). The sparse matrix to be reinitiated.
! a - type(psb_sspmat_type). The sparse matrix to be reinitiated.
! desc_a - type(psb_desc_type). The communication descriptor.
! info - integer. Return code.
! clear - logical, optional Whether the coefficients should be zeroed
@ -47,7 +47,7 @@ Subroutine psb_ssprn(a, desc_a,info,clear)
!....Parameters...
Type(psb_desc_type), intent(in) :: desc_a
Type(psb_s_sparse_mat), intent(inout) :: a
Type(psb_sspmat_type), intent(inout) :: a
integer, intent(out) :: info
logical, intent(in), optional :: clear

@ -37,7 +37,7 @@
! specified on input.
!
! Arguments:
! a - type(psb_z_sparse_mat). The input sparse matrix.
! a - type(psb_zspmat_type). The input sparse matrix.
! desc_a - type(psb_desc_type). The input communication descriptor.
! novr - integer. The number of overlap levels.
! desc_ov - type(psb_desc_type). The auxiliary output communication
@ -73,7 +73,7 @@ Subroutine psb_zcdbldext(a,desc_a,novr,desc_ov,info, extype)
! .. Array Arguments ..
integer, intent(in) :: novr
Type(psb_z_sparse_mat), Intent(in) :: a
Type(psb_zspmat_type), Intent(in) :: a
Type(psb_desc_type), Intent(in), target :: desc_a
Type(psb_desc_type), Intent(out) :: desc_ov
integer, intent(out) :: info

@ -35,7 +35,7 @@
! Allocate sparse matrix structure for psblas routines.
!
! Arguments:
! a - type(psb_z_sparse_mat). The sparse matrix to be allocated.
! a - type(psb_zspmat_type). The sparse matrix to be allocated.
! desc_a - type(psb_desc_type). The communication descriptor to be updated.
! info - integer. Return code.
! nnz - integer(optional). The number of nonzeroes in the matrix.
@ -47,7 +47,7 @@ subroutine psb_zspalloc(a, desc_a, info, nnz)
!....parameters...
type(psb_desc_type), intent(in) :: desc_a
type(psb_z_sparse_mat), intent(inout) :: a
type(psb_zspmat_type), intent(inout) :: a
integer, intent(out) :: info
integer, optional, intent(in) :: nnz

@ -35,7 +35,7 @@
! Assemble sparse matrix
!
! Arguments:
! a - type(psb_z_sparse_mat). The sparse matrix to be assembled
! a - type(psb_zspmat_type). The sparse matrix to be assembled
! desc_a - type(psb_desc_type). The communication descriptor.
! info - integer. return code.
! afmt - character(optional) The desired output storage format.
@ -55,7 +55,7 @@ subroutine psb_zspasb(a,desc_a, info, afmt, upd, dupl, mold)
!...Parameters....
type(psb_z_sparse_mat), intent (inout) :: a
type(psb_zspmat_type), intent (inout) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
integer,optional, intent(in) :: dupl, upd

@ -35,7 +35,7 @@
! Frees a sparse matrix structure.
!
! Arguments:
! a - type(psb_z_sparse_mat). The sparse matrix to be freed.
! a - type(psb_zspmat_type). The sparse matrix to be freed.
! desc_a - type(psb_desc_type). The communication descriptor.
! info - integer. return code.
!
@ -45,7 +45,7 @@ subroutine psb_zspfree(a, desc_a,info)
!....parameters...
type(psb_desc_type), intent(in) :: desc_a
type(psb_z_sparse_mat), intent(inout) :: a
type(psb_zspmat_type), intent(inout) :: a
integer, intent(out) :: info
!...locals....
integer :: ictxt, err_act

@ -38,9 +38,9 @@
!
!
! Arguments:
! a - type(psb_z_sparse_mat) The local part of input matrix A
! a - type(psb_zspmat_type) The local part of input matrix A
! desc_a - type(psb_desc_type). The communication descriptor.
! blck - type(psb_z_sparse_mat) The local part of output matrix BLCK
! blck - type(psb_zspmat_type) The local part of output matrix BLCK
! info - integer. Return code
! rowcnv - logical Should row/col indices be converted
! colcnv - logical to/from global numbering when sent/received?
@ -67,8 +67,8 @@ Subroutine psb_zsphalo(a,desc_a,blk,info,rowcnv,colcnv,&
include 'mpif.h'
#endif
Type(psb_z_sparse_mat),Intent(in) :: a
Type(psb_z_sparse_mat),Intent(inout) :: blk
Type(psb_zspmat_type),Intent(in) :: a
Type(psb_zspmat_type),Intent(inout) :: blk
Type(psb_desc_type),Intent(in), target :: desc_a
integer, intent(out) :: info
logical, optional, intent(in) :: rowcnv,colcnv,rowscale,colscale

@ -42,7 +42,7 @@
! ia(:) - integer The row indices of the coefficients.
! ja(:) - integer The column indices of the coefficients.
! val(:) - complex The values of the coefficients to be inserted.
! a - type(psb_d_sparse_mat). The sparse destination matrix.
! a - type(psb_dspmat_type). The sparse destination matrix.
! desc_a - type(psb_desc_type). The communication descriptor.
! info - integer. Error code
! rebuild - logical Allows to reopen a matrix under
@ -54,7 +54,7 @@ subroutine psb_zspins(nz,ia,ja,val,a,desc_a,info,rebuild)
!....parameters...
type(psb_desc_type), intent(inout) :: desc_a
type(psb_z_sparse_mat), intent(inout) :: a
type(psb_zspmat_type), intent(inout) :: a
integer, intent(in) :: nz,ia(:),ja(:)
complex(psb_dpk_), intent(in) :: val(:)
integer, intent(out) :: info
@ -237,7 +237,7 @@ subroutine psb_zspins_2desc(nz,ia,ja,val,a,desc_ar,desc_ac,info)
!....parameters...
type(psb_desc_type), intent(in) :: desc_ar
type(psb_desc_type), intent(inout) :: desc_ac
type(psb_z_sparse_mat), intent(inout) :: a
type(psb_zspmat_type), intent(inout) :: a
integer, intent(in) :: nz,ia(:),ja(:)
complex(psb_dpk_), intent(in) :: val(:)
integer, intent(out) :: info

@ -36,7 +36,7 @@
! is in the update state.
!
! Arguments:
! a - type(psb_z_sparse_mat). The sparse matrix to be reinitiated.
! a - type(psb_zspmat_type). The sparse matrix to be reinitiated.
! desc_a - type(psb_desc_type). The communication descriptor.
! info - integer. Return code.
! clear - logical, optional Whether the coefficients should be zeroed
@ -48,7 +48,7 @@ Subroutine psb_zsprn(a, desc_a,info,clear)
!....Parameters...
Type(psb_desc_type), intent(in) :: desc_a
Type(psb_z_sparse_mat), intent(inout) :: a
Type(psb_zspmat_type), intent(inout) :: a
integer, intent(out) :: info
logical, intent(in), optional :: clear

@ -52,7 +52,7 @@ contains
implicit none
character(len=*), intent(in) :: methdname
integer, intent(in) :: stopc, trace, itmax
type(psb_c_sparse_mat), intent(in) :: a
type(psb_cspmat_type), intent(in) :: a
complex(psb_spk_), intent(in) :: b(:)
real(psb_spk_), intent(in) :: eps
type(psb_desc_type), intent(in) :: desc_a

@ -62,7 +62,7 @@
!
! Arguments:
!
! a - type(psb_c_sparse_mat) Input: sparse matrix containing A.
! a - type(psb_cspmat_type) Input: sparse matrix containing A.
! prec - class(psb_cprec_type) Input: preconditioner
! b(:) - complex Input: vector containing the
! right hand side B
@ -101,7 +101,7 @@ subroutine psb_cbicg(a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,istop)
implicit none
!!$ parameters
type(psb_c_sparse_mat), intent(in) :: a
type(psb_cspmat_type), intent(in) :: a
class(psb_cprec_type), intent(in) :: prec
type(psb_desc_type), intent(in) :: desc_a
complex(psb_spk_), intent(in) :: b(:)

@ -63,7 +63,7 @@
!
! Arguments:
!
! a - type(psb_c_sparse_mat) Input: sparse matrix containing A.
! a - type(psb_cspmat_type) Input: sparse matrix containing A.
! prec - class(psb_cprec_type) Input: preconditioner
! b(:) - complex Input: vector containing the
! right hand side B
@ -103,7 +103,7 @@ subroutine psb_ccg(a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,istop)
implicit none
!!$ Parameters
Type(psb_c_sparse_mat), Intent(in) :: a
Type(psb_cspmat_type), Intent(in) :: a
class(psb_cprec_type), Intent(in) :: prec
Type(psb_desc_type), Intent(in) :: desc_a
complex(psb_spk_), Intent(in) :: b(:)

@ -61,7 +61,7 @@
!
! Arguments:
!
! a - type(psb_c_sparse_mat) Input: sparse matrix containing A.
! a - type(psb_cspmat_type) Input: sparse matrix containing A.
! prec - class(psb_cprec_type) Input: preconditioner
! b - complex,dimension(:) Input: vector containing the
! right hand side B
@ -100,7 +100,7 @@ Subroutine psb_ccgs(a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,istop)
implicit none
!!$ parameters
Type(psb_c_sparse_mat), Intent(in) :: a
Type(psb_cspmat_type), Intent(in) :: a
Type(psb_desc_type), Intent(in) :: desc_a
class(psb_cprec_type), Intent(in) :: prec
Complex(psb_spk_), Intent(in) :: b(:)

@ -62,7 +62,7 @@
!
! Arguments:
!
! a - type(psb_c_sparse_mat) Input: sparse matrix containing A.
! a - type(psb_cspmat_type) Input: sparse matrix containing A.
! prec - class(psb_cprec_type) Input: preconditioner
! b - complex,dimension(:) Input: vector containing the
! right hand side B
@ -100,7 +100,7 @@ subroutine psb_ccgstab(a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,istop)
use psb_krylov_mod
Implicit None
!!$ parameters
Type(psb_c_sparse_mat), Intent(in) :: a
Type(psb_cspmat_type), Intent(in) :: a
class(psb_cprec_type), Intent(in) :: prec
Type(psb_desc_type), Intent(in) :: desc_a
Complex(psb_spk_), Intent(in) :: b(:)

@ -69,7 +69,7 @@
!
! Arguments:
!
! a - type(psb_c_sparse_mat) Input: sparse matrix containing A.
! a - type(psb_cspmat_type) Input: sparse matrix containing A.
! prec - class(psb_cprec_type) Input: preconditioner
! b(:) - complex Input: vector containing the
! right hand side B
@ -111,7 +111,7 @@ Subroutine psb_ccgstabl(a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,irst,is
implicit none
!!$ parameters
Type(psb_c_sparse_mat), Intent(in) :: a
Type(psb_cspmat_type), Intent(in) :: a
class(psb_cprec_type), Intent(in) :: prec
Type(psb_desc_type), Intent(in) :: desc_a
complex(psb_spk_), Intent(in) :: b(:)

@ -49,7 +49,7 @@
! BICGSTABL
! RGMRES
!
! a - type(psb_c_sparse_mat) Input: sparse matrix containing A.
! a - type(psb_cspmat_type) Input: sparse matrix containing A.
! prec - class(psb_cprec_type) Input: preconditioner
! b - complex,dimension(:) Input: vector containing the
! right hand side B
@ -84,7 +84,7 @@ Subroutine psb_ckrylov(method,a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,i
use psb_prec_mod,only : psb_sprec_type, psb_dprec_type, psb_cprec_type, psb_zprec_type
use psb_krylov_mod, psb_protect_name => psb_ckrylov
character(len=*) :: method
Type(psb_c_sparse_mat), Intent(in) :: a
Type(psb_cspmat_type), Intent(in) :: a
Type(psb_desc_type), Intent(in) :: desc_a
class(psb_cprec_type), intent(in) :: prec
complex(psb_spk_), Intent(in) :: b(:)
@ -97,9 +97,9 @@ Subroutine psb_ckrylov(method,a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,i
interface
subroutine psb_ccg(a,prec,b,x,eps,&
& desc_a,info,itmax,iter,err,itrace,istop)
use psb_sparse_mod, only : psb_desc_type, psb_c_sparse_mat, psb_spk_
use psb_sparse_mod, only : psb_desc_type, psb_cspmat_type, psb_spk_
use psb_prec_mod, only : psb_cprec_type
type(psb_c_sparse_mat), intent(in) :: a
type(psb_cspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
complex(psb_spk_), intent(in) :: b(:)
complex(psb_spk_), intent(inout) :: x(:)
@ -112,9 +112,9 @@ Subroutine psb_ckrylov(method,a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,i
end subroutine psb_ccg
subroutine psb_cbicg(a,prec,b,x,eps,&
& desc_a,info,itmax,iter,err,itrace,istop)
use psb_sparse_mod, only : psb_desc_type, psb_c_sparse_mat, psb_spk_
use psb_sparse_mod, only : psb_desc_type, psb_cspmat_type, psb_spk_
use psb_prec_mod, only : psb_cprec_type
type(psb_c_sparse_mat), intent(in) :: a
type(psb_cspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
complex(psb_spk_), intent(in) :: b(:)
complex(psb_spk_), intent(inout) :: x(:)
@ -127,9 +127,9 @@ Subroutine psb_ckrylov(method,a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,i
end subroutine psb_cbicg
subroutine psb_ccgstab(a,prec,b,x,eps,&
& desc_a,info,itmax,iter,err,itrace,istop)
use psb_sparse_mod, only : psb_desc_type, psb_c_sparse_mat, psb_spk_
use psb_sparse_mod, only : psb_desc_type, psb_cspmat_type, psb_spk_
use psb_prec_mod, only : psb_cprec_type
type(psb_c_sparse_mat), intent(in) :: a
type(psb_cspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
complex(psb_spk_), intent(in) :: b(:)
complex(psb_spk_), intent(inout) :: x(:)
@ -142,9 +142,9 @@ Subroutine psb_ckrylov(method,a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,i
end subroutine psb_ccgstab
Subroutine psb_ccgstabl(a,prec,b,x,eps,desc_a,info,&
&itmax,iter,err,itrace,irst,istop)
use psb_sparse_mod, only : psb_desc_type, psb_c_sparse_mat, psb_spk_
use psb_sparse_mod, only : psb_desc_type, psb_cspmat_type, psb_spk_
use psb_prec_mod, only : psb_cprec_type
Type(psb_c_sparse_mat), Intent(in) :: a
Type(psb_cspmat_type), Intent(in) :: a
Type(psb_desc_type), Intent(in) :: desc_a
class(psb_cprec_type), intent(in) :: prec
complex(psb_spk_), Intent(in) :: b(:)
@ -157,9 +157,9 @@ Subroutine psb_ckrylov(method,a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,i
end subroutine psb_ccgstabl
Subroutine psb_crgmres(a,prec,b,x,eps,desc_a,info,&
&itmax,iter,err,itrace,irst,istop)
use psb_sparse_mod, only : psb_desc_type, psb_c_sparse_mat, psb_spk_
use psb_sparse_mod, only : psb_desc_type, psb_cspmat_type, psb_spk_
use psb_prec_mod, only : psb_cprec_type
Type(psb_c_sparse_mat), Intent(in) :: a
Type(psb_cspmat_type), Intent(in) :: a
Type(psb_desc_type), Intent(in) :: desc_a
class(psb_cprec_type), intent(in) :: prec
complex(psb_spk_), Intent(in) :: b(:)
@ -172,9 +172,9 @@ Subroutine psb_ckrylov(method,a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,i
end subroutine psb_crgmres
subroutine psb_ccgs(a,prec,b,x,eps,&
& desc_a,info,itmax,iter,err,itrace,istop)
use psb_sparse_mod, only : psb_desc_type, psb_c_sparse_mat, psb_spk_
use psb_sparse_mod, only : psb_desc_type, psb_cspmat_type, psb_spk_
use psb_prec_mod, only : psb_cprec_type
type(psb_c_sparse_mat), intent(in) :: a
type(psb_cspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
complex(psb_spk_), intent(in) :: b(:)
complex(psb_spk_), intent(inout) :: x(:)

@ -73,7 +73,7 @@
!
! Arguments:
!
! a - type(psb_c_sparse_mat) Input: sparse matrix containing A.
! a - type(psb_cspmat_type) Input: sparse matrix containing A.
! prec - class(psb_cprec_type) Input: preconditioner
! b - complex,dimension(:) Input: vector containing the
! right hand side B
@ -113,7 +113,7 @@ Subroutine psb_crgmres(a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,irst,ist
implicit none
!!$ Parameters
Type(psb_c_sparse_mat), Intent(in) :: a
Type(psb_cspmat_type), Intent(in) :: a
class(psb_cprec_type), Intent(in) :: prec
Type(psb_desc_type), Intent(in) :: desc_a
complex(psb_spk_), Intent(in) :: b(:)

@ -54,7 +54,7 @@ contains
implicit none
character(len=*), intent(in) :: methdname
integer, intent(in) :: stopc, trace,itmax
type(psb_d_sparse_mat), intent(in) :: a
type(psb_dspmat_type), intent(in) :: a
real(psb_dpk_), intent(in) :: b(:), eps
type(psb_desc_type), intent(in) :: desc_a
type(psb_itconv_type) :: stopdat

@ -62,7 +62,7 @@
!
! Arguments:
!
! a - type(psb_d_sparse_mat) Input: sparse matrix containing A.
! a - type(psb_dspmat_type) Input: sparse matrix containing A.
! prec - class(psb_dprec_type) Input: preconditioner
! b - real,dimension(:) Input: vector containing the
! right hand side B
@ -100,7 +100,7 @@ subroutine psb_dbicg(a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,istop)
use psb_inner_krylov_mod
use psb_krylov_mod
implicit none
type(psb_d_sparse_mat), intent(in) :: a
type(psb_dspmat_type), intent(in) :: a
class(psb_dprec_type), intent(in) :: prec
type(psb_desc_type), intent(in) :: desc_a

@ -63,7 +63,7 @@
!
! Arguments:
!
! a - type(psb_d_sparse_mat) Input: sparse matrix containing A.
! a - type(psb_dspmat_type) Input: sparse matrix containing A.
! prec - class(psb_dprec_type) Input: preconditioner
! b - real,dimension(:) Input: vector containing the
! right hand side B
@ -101,7 +101,7 @@ subroutine psb_dcg(a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,istop,cond)
use psb_inner_krylov_mod
use psb_krylov_mod
implicit none
type(psb_d_sparse_mat), intent(in) :: a
type(psb_dspmat_type), intent(in) :: a

@ -62,7 +62,7 @@
!
! Arguments:
!
! a - type(psb_d_sparse_mat) Input: sparse matrix containing A.
! a - type(psb_dspmat_type) Input: sparse matrix containing A.
! prec - class(psb_dprec_type) Input: preconditioner
! b - real,dimension(:) Input: vector containing the
! right hand side B
@ -100,7 +100,7 @@ Subroutine psb_dcgs(a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,istop)
use psb_inner_krylov_mod
use psb_krylov_mod
implicit none
type(psb_d_sparse_mat), intent(in) :: a
type(psb_dspmat_type), intent(in) :: a
Type(psb_desc_type), Intent(in) :: desc_a

@ -62,7 +62,7 @@
!
! Arguments:
!
! a - type(psb_d_sparse_mat) Input: sparse matrix containing A.
! a - type(psb_dspmat_type) Input: sparse matrix containing A.
! prec - class(psb_dprec_type) Input: preconditioner
! b - real,dimension(:) Input: vector containing the
! right hand side B
@ -100,7 +100,7 @@ Subroutine psb_dcgstab(a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,istop)
use psb_inner_krylov_mod
use psb_krylov_mod
implicit none
type(psb_d_sparse_mat), intent(in) :: a
type(psb_dspmat_type), intent(in) :: a
class(psb_dprec_type), Intent(in) :: prec

@ -69,7 +69,7 @@
!
! Arguments:
!
! a - type(psb_d_sparse_mat) Input: sparse matrix containing A.
! a - type(psb_dspmat_type) Input: sparse matrix containing A.
! prec - class(psb_dprec_type) Input: preconditioner
! b - real,dimension(:) Input: vector containing the
! right hand side B
@ -109,7 +109,7 @@ Subroutine psb_dcgstabl(a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,irst,is
use psb_inner_krylov_mod
use psb_krylov_mod
implicit none
type(psb_d_sparse_mat), intent(in) :: a
type(psb_dspmat_type), intent(in) :: a
class(psb_dprec_type), Intent(in) :: prec

@ -47,7 +47,7 @@
! BICGSTABL
! RGMRES
!
! a - type(psb_d_sparse_mat) Input: sparse matrix containing A.
! a - type(psb_dspmat_type) Input: sparse matrix containing A.
! prec - class(psb_dprec_type) Input: preconditioner
! b - real,dimension(:) Input: vector containing the
! right hand side B
@ -84,7 +84,7 @@ Subroutine psb_dkrylov(method,a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,i
use psb_krylov_mod, psb_protect_name => psb_dkrylov
character(len=*) :: method
Type(psb_d_sparse_mat), Intent(in) :: a
Type(psb_dspmat_type), Intent(in) :: a
Type(psb_desc_type), Intent(in) :: desc_a
class(psb_dprec_type), intent(in) :: prec
Real(psb_dpk_), Intent(in) :: b(:)
@ -98,9 +98,9 @@ Subroutine psb_dkrylov(method,a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,i
interface
subroutine psb_dcg(a,prec,b,x,eps,&
& desc_a,info,itmax,iter,err,itrace,istop,cond)
use psb_sparse_mod, only : psb_desc_type, psb_d_sparse_mat, psb_dpk_
use psb_sparse_mod, only : psb_desc_type, psb_dspmat_type, psb_dpk_
use psb_prec_mod, only : psb_dprec_type
type(psb_d_sparse_mat), intent(in) :: a
type(psb_dspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
real(psb_dpk_), intent(in) :: b(:)
real(psb_dpk_), intent(inout) :: x(:)
@ -113,9 +113,9 @@ Subroutine psb_dkrylov(method,a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,i
end subroutine psb_dcg
subroutine psb_dbicg(a,prec,b,x,eps,&
& desc_a,info,itmax,iter,err,itrace,istop)
use psb_sparse_mod, only : psb_desc_type, psb_d_sparse_mat, psb_dpk_
use psb_sparse_mod, only : psb_desc_type, psb_dspmat_type, psb_dpk_
use psb_prec_mod, only : psb_dprec_type
type(psb_d_sparse_mat), intent(in) :: a
type(psb_dspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
real(psb_dpk_), intent(in) :: b(:)
real(psb_dpk_), intent(inout) :: x(:)
@ -128,9 +128,9 @@ Subroutine psb_dkrylov(method,a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,i
end subroutine psb_dbicg
subroutine psb_dcgstab(a,prec,b,x,eps,&
& desc_a,info,itmax,iter,err,itrace,istop)
use psb_sparse_mod, only : psb_desc_type, psb_d_sparse_mat, psb_dpk_
use psb_sparse_mod, only : psb_desc_type, psb_dspmat_type, psb_dpk_
use psb_prec_mod, only : psb_dprec_type
type(psb_d_sparse_mat), intent(in) :: a
type(psb_dspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
real(psb_dpk_), intent(in) :: b(:)
real(psb_dpk_), intent(inout) :: x(:)
@ -143,9 +143,9 @@ Subroutine psb_dkrylov(method,a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,i
end subroutine psb_dcgstab
Subroutine psb_dcgstabl(a,prec,b,x,eps,desc_a,info,&
&itmax,iter,err, itrace,irst,istop)
use psb_sparse_mod, only : psb_desc_type, psb_d_sparse_mat, psb_dpk_
use psb_sparse_mod, only : psb_desc_type, psb_dspmat_type, psb_dpk_
use psb_prec_mod, only : psb_dprec_type
Type(psb_d_sparse_mat), Intent(in) :: a
Type(psb_dspmat_type), Intent(in) :: a
Type(psb_desc_type), Intent(in) :: desc_a
class(psb_dprec_type), intent(in) :: prec
Real(psb_dpk_), Intent(in) :: b(:)
@ -158,9 +158,9 @@ Subroutine psb_dkrylov(method,a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,i
end subroutine psb_dcgstabl
Subroutine psb_drgmres(a,prec,b,x,eps,desc_a,info,&
&itmax,iter,err,itrace,irst,istop)
use psb_sparse_mod, only : psb_desc_type, psb_d_sparse_mat, psb_dpk_
use psb_sparse_mod, only : psb_desc_type, psb_dspmat_type, psb_dpk_
use psb_prec_mod, only : psb_dprec_type
Type(psb_d_sparse_mat), Intent(in) :: a
Type(psb_dspmat_type), Intent(in) :: a
Type(psb_desc_type), Intent(in) :: desc_a
class(psb_dprec_type), intent(in) :: prec
Real(psb_dpk_), Intent(in) :: b(:)
@ -173,9 +173,9 @@ Subroutine psb_dkrylov(method,a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,i
end subroutine psb_drgmres
subroutine psb_dcgs(a,prec,b,x,eps,desc_a,info,&
&itmax,iter,err,itrace,istop)
use psb_sparse_mod, only : psb_desc_type, psb_d_sparse_mat, psb_dpk_
use psb_sparse_mod, only : psb_desc_type, psb_dspmat_type, psb_dpk_
use psb_prec_mod, only : psb_dprec_type
type(psb_d_sparse_mat), intent(in) :: a
type(psb_dspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
class(psb_dprec_type), intent(in) :: prec
real(psb_dpk_), intent(in) :: b(:)

@ -73,7 +73,7 @@
!
! Arguments:
!
! a - type(psb_d_sparse_mat) Input: sparse matrix containing A.
! a - type(psb_dspmat_type) Input: sparse matrix containing A.
! prec - class(psb_dprec_type) Input: preconditioner
! b - real,dimension(:) Input: vector containing the
! right hand side B
@ -112,7 +112,7 @@ subroutine psb_drgmres(a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,irst,ist
use psb_inner_krylov_mod
use psb_krylov_mod
implicit none
type(psb_d_sparse_mat), intent(in) :: a
type(psb_dspmat_type), intent(in) :: a
class(psb_dprec_type), Intent(in) :: prec

@ -41,11 +41,11 @@ Module psb_krylov_mod
interface psb_krylov
Subroutine psb_skrylov(method,a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,irst,istop,cond)
use psb_sparse_mod, only : psb_desc_type, psb_s_sparse_mat, psb_spk_
use psb_sparse_mod, only : psb_desc_type, psb_sspmat_type, psb_spk_
use psb_prec_mod,only : psb_sprec_type, psb_dprec_type, psb_cprec_type, psb_zprec_type
character(len=*) :: method
Type(psb_s_sparse_mat), Intent(in) :: a
Type(psb_sspmat_type), Intent(in) :: a
Type(psb_desc_type), Intent(in) :: desc_a
class(psb_sprec_type), intent(in) :: prec
Real(psb_spk_), Intent(in) :: b(:)
@ -57,10 +57,10 @@ Module psb_krylov_mod
Real(psb_spk_), Optional, Intent(out) :: err,cond
end Subroutine psb_skrylov
Subroutine psb_ckrylov(method,a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,irst,istop)
use psb_sparse_mod, only : psb_desc_type, psb_c_sparse_mat, psb_spk_
use psb_sparse_mod, only : psb_desc_type, psb_cspmat_type, psb_spk_
use psb_prec_mod,only : psb_sprec_type, psb_dprec_type, psb_cprec_type, psb_zprec_type
character(len=*) :: method
Type(psb_c_sparse_mat), Intent(in) :: a
Type(psb_cspmat_type), Intent(in) :: a
Type(psb_desc_type), Intent(in) :: desc_a
class(psb_cprec_type), intent(in) :: prec
complex(psb_spk_), Intent(in) :: b(:)
@ -73,11 +73,11 @@ Module psb_krylov_mod
end Subroutine psb_ckrylov
Subroutine psb_dkrylov(method,a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,irst,istop,cond)
use psb_sparse_mod, only : psb_desc_type, psb_d_sparse_mat, psb_dpk_
use psb_sparse_mod, only : psb_desc_type, psb_dspmat_type, psb_dpk_
use psb_prec_mod,only : psb_sprec_type, psb_dprec_type, psb_cprec_type, psb_zprec_type
character(len=*) :: method
Type(psb_d_sparse_mat), Intent(in) :: a
Type(psb_dspmat_type), Intent(in) :: a
Type(psb_desc_type), Intent(in) :: desc_a
class(psb_dprec_type), intent(in) :: prec
Real(psb_dpk_), Intent(in) :: b(:)
@ -90,10 +90,10 @@ Module psb_krylov_mod
end Subroutine psb_dkrylov
Subroutine psb_zkrylov(method,a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,irst,istop)
use psb_sparse_mod, only : psb_desc_type, psb_z_sparse_mat, psb_dpk_
use psb_sparse_mod, only : psb_desc_type, psb_zspmat_type, psb_dpk_
use psb_prec_mod,only : psb_sprec_type, psb_dprec_type, psb_cprec_type, psb_zprec_type
character(len=*) :: method
Type(psb_z_sparse_mat), Intent(in) :: a
Type(psb_zspmat_type), Intent(in) :: a
Type(psb_desc_type), Intent(in) :: desc_a
class(psb_zprec_type), intent(in) :: prec
complex(psb_dpk_), Intent(in) :: b(:)

@ -54,7 +54,7 @@ contains
implicit none
character(len=*), intent(in) :: methdname
integer, intent(in) :: stopc, trace,itmax
type(psb_s_sparse_mat), intent(in) :: a
type(psb_sspmat_type), intent(in) :: a
real(psb_spk_), intent(in) :: b(:), eps
type(psb_desc_type), intent(in) :: desc_a
type(psb_itconv_type) :: stopdat

@ -62,7 +62,7 @@
!
! Arguments:
!
! a - type(psb_s_sparse_mat) Input: sparse matrix containing A.
! a - type(psb_sspmat_type) Input: sparse matrix containing A.
! prec - class(psb_sprec_type) Input: preconditioner
! b - real,dimension(:) Input: vector containing the
! right hand side B
@ -102,7 +102,7 @@ subroutine psb_sbicg(a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,istop)
implicit none
!!$ parameters
type(psb_s_sparse_mat), intent(in) :: a
type(psb_sspmat_type), intent(in) :: a
class(psb_sprec_type), intent(in) :: prec
type(psb_desc_type), intent(in) :: desc_a
real(psb_spk_), intent(in) :: b(:)

@ -63,7 +63,7 @@
!
! Arguments:
!
! a - type(psb_s_sparse_mat) Input: sparse matrix containing A.
! a - type(psb_sspmat_type) Input: sparse matrix containing A.
! prec - class(psb_sprec_type) Input: preconditioner
! b - real,dimension(:) Input: vector containing the
! right hand side B
@ -103,7 +103,7 @@ subroutine psb_scg(a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,istop,cond)
implicit none
!!$ Parameters
Type(psb_s_sparse_mat), Intent(in) :: a
Type(psb_sspmat_type), Intent(in) :: a
class(psb_sprec_type), Intent(in) :: prec
Type(psb_desc_type), Intent(in) :: desc_a
Real(psb_spk_), Intent(in) :: b(:)

@ -62,7 +62,7 @@
!
! Arguments:
!
! a - type(psb_s_sparse_mat) Input: sparse matrix containing A.
! a - type(psb_sspmat_type) Input: sparse matrix containing A.
! prec - class(psb_sprec_type) Input: preconditioner
! b - real,dimension(:) Input: vector containing the
! right hand side B
@ -102,7 +102,7 @@ Subroutine psb_scgs(a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,istop)
implicit none
!!$ parameters
Type(psb_s_sparse_mat), Intent(in) :: a
Type(psb_sspmat_type), Intent(in) :: a
Type(psb_desc_type), Intent(in) :: desc_a
class(psb_sprec_type), Intent(in) :: prec
Real(psb_spk_), Intent(in) :: b(:)

@ -62,7 +62,7 @@
!
! Arguments:
!
! a - type(psb_s_sparse_mat) Input: sparse matrix containing A.
! a - type(psb_sspmat_type) Input: sparse matrix containing A.
! prec - class(psb_sprec_type) Input: preconditioner
! b - real,dimension(:) Input: vector containing the
! right hand side B
@ -101,7 +101,7 @@ Subroutine psb_scgstab(a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,istop)
use psb_krylov_mod
Implicit None
!!$ parameters
Type(psb_s_sparse_mat), Intent(in) :: a
Type(psb_sspmat_type), Intent(in) :: a
class(psb_sprec_type), Intent(in) :: prec
Type(psb_desc_type), Intent(in) :: desc_a
Real(psb_spk_), Intent(in) :: b(:)

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save