diff --git a/mlprec/impl/aggregator/mld_c_dec_aggregator_mat_asb.f90 b/mlprec/impl/aggregator/mld_c_dec_aggregator_mat_asb.f90 index d7ee9dd9..7194c993 100644 --- a/mlprec/impl/aggregator/mld_c_dec_aggregator_mat_asb.f90 +++ b/mlprec/impl/aggregator/mld_c_dec_aggregator_mat_asb.f90 @@ -140,17 +140,17 @@ subroutine mld_c_dec_aggregator_mat_asb(ag,parms,a,desc_a,ilaggr,nlaggr,ac,op_p type(mld_sml_parms), intent(inout) :: parms type(psb_cspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a - integer(psb_ipk_), intent(inout) :: ilaggr(:), nlaggr(:) - type(psb_cspmat_type), intent(inout) :: op_prol - type(psb_cspmat_type), intent(out) :: ac,op_restr + integer(psb_lpk_), intent(inout) :: ilaggr(:), nlaggr(:) + type(psb_lcspmat_type), intent(inout) :: op_prol + type(psb_lcspmat_type), intent(out) :: ac,op_restr integer(psb_ipk_), intent(out) :: info ! Local variables character(len=20) :: name integer(psb_mpk_) :: ictxt, np, me - type(psb_c_coo_sparse_mat) :: acoo, bcoo - type(psb_c_csr_sparse_mat) :: acsr1 - integer(psb_ipk_) :: nzl,ntaggr + type(psb_lc_coo_sparse_mat) :: acoo, bcoo + type(psb_lc_csr_sparse_mat) :: acsr1 + integer(psb_lpk_) :: nzl,ntaggr integer(psb_ipk_) :: err_act integer(psb_ipk_) :: debug_level, debug_unit diff --git a/mlprec/impl/aggregator/mld_c_soc1_map_bld.f90 b/mlprec/impl/aggregator/mld_c_soc1_map_bld.f90 index 95edbf28..e05fbebb 100644 --- a/mlprec/impl/aggregator/mld_c_soc1_map_bld.f90 +++ b/mlprec/impl/aggregator/mld_c_soc1_map_bld.f90 @@ -80,12 +80,13 @@ subroutine mld_c_soc1_map_bld(iorder,theta,a,desc_a,nlaggr,ilaggr,info) type(psb_cspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a real(psb_spk_), intent(in) :: theta - integer(psb_ipk_), allocatable, intent(out) :: ilaggr(:),nlaggr(:) + integer(psb_lpk_), allocatable, intent(out) :: ilaggr(:),nlaggr(:) integer(psb_ipk_), intent(out) :: info ! Local variables - integer(psb_ipk_), allocatable :: ils(:), neigh(:), irow(:), icol(:),& - & ideg(:), idxs(:), tmpaggr(:) + integer(psb_ipk_), allocatable :: ils(:), neigh(:), irow(:), icol(:),& + & ideg(:), idxs(:) + integer(psb_lpk_), allocatable :: tmpaggr(:) complex(psb_spk_), allocatable :: val(:), diag(:) integer(psb_ipk_) :: icnt,nlp,k,n,ia,isz,nr, naggr,i,j,m, nz, ilg, ii, ip type(psb_c_csr_sparse_mat) :: acsr diff --git a/mlprec/impl/aggregator/mld_c_soc2_map_bld.f90 b/mlprec/impl/aggregator/mld_c_soc2_map_bld.f90 index 65c5481f..8617af87 100644 --- a/mlprec/impl/aggregator/mld_c_soc2_map_bld.f90 +++ b/mlprec/impl/aggregator/mld_c_soc2_map_bld.f90 @@ -79,12 +79,13 @@ subroutine mld_c_soc2_map_bld(iorder,theta,a,desc_a,nlaggr,ilaggr,info) type(psb_cspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a real(psb_spk_), intent(in) :: theta - integer(psb_ipk_), allocatable, intent(out) :: ilaggr(:),nlaggr(:) + integer(psb_lpk_), allocatable, intent(out) :: ilaggr(:),nlaggr(:) integer(psb_ipk_), intent(out) :: info ! Local variables integer(psb_ipk_), allocatable :: ils(:), neigh(:), irow(:), icol(:),& - & ideg(:), idxs(:), tmpaggr(:) + & ideg(:), idxs(:) + integer(psb_lpk_), allocatable :: tmpaggr(:) complex(psb_spk_), allocatable :: val(:), diag(:) integer(psb_ipk_) :: icnt,nlp,k,n,ia,isz,nr,nc,naggr,i,j,m, nz, ilg, ii, ip, ip1,nzcnt type(psb_c_csr_sparse_mat) :: acsr, muij, s_neigh diff --git a/mlprec/impl/aggregator/mld_d_dec_aggregator_mat_asb.f90 b/mlprec/impl/aggregator/mld_d_dec_aggregator_mat_asb.f90 index 86a553c7..925dccde 100644 --- a/mlprec/impl/aggregator/mld_d_dec_aggregator_mat_asb.f90 +++ b/mlprec/impl/aggregator/mld_d_dec_aggregator_mat_asb.f90 @@ -140,17 +140,17 @@ subroutine mld_d_dec_aggregator_mat_asb(ag,parms,a,desc_a,ilaggr,nlaggr,ac,op_p type(mld_dml_parms), intent(inout) :: parms type(psb_dspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a - integer(psb_ipk_), intent(inout) :: ilaggr(:), nlaggr(:) - type(psb_dspmat_type), intent(inout) :: op_prol - type(psb_dspmat_type), intent(out) :: ac,op_restr + integer(psb_lpk_), intent(inout) :: ilaggr(:), nlaggr(:) + type(psb_ldspmat_type), intent(inout) :: op_prol + type(psb_ldspmat_type), intent(out) :: ac,op_restr integer(psb_ipk_), intent(out) :: info ! Local variables character(len=20) :: name integer(psb_mpk_) :: ictxt, np, me - type(psb_d_coo_sparse_mat) :: acoo, bcoo - type(psb_d_csr_sparse_mat) :: acsr1 - integer(psb_ipk_) :: nzl,ntaggr + type(psb_ld_coo_sparse_mat) :: acoo, bcoo + type(psb_ld_csr_sparse_mat) :: acsr1 + integer(psb_lpk_) :: nzl,ntaggr integer(psb_ipk_) :: err_act integer(psb_ipk_) :: debug_level, debug_unit diff --git a/mlprec/impl/aggregator/mld_d_soc1_map_bld.f90 b/mlprec/impl/aggregator/mld_d_soc1_map_bld.f90 index bc8f0ffe..4caddb32 100644 --- a/mlprec/impl/aggregator/mld_d_soc1_map_bld.f90 +++ b/mlprec/impl/aggregator/mld_d_soc1_map_bld.f90 @@ -80,12 +80,13 @@ subroutine mld_d_soc1_map_bld(iorder,theta,a,desc_a,nlaggr,ilaggr,info) type(psb_dspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a real(psb_dpk_), intent(in) :: theta - integer(psb_ipk_), allocatable, intent(out) :: ilaggr(:),nlaggr(:) + integer(psb_lpk_), allocatable, intent(out) :: ilaggr(:),nlaggr(:) integer(psb_ipk_), intent(out) :: info ! Local variables - integer(psb_ipk_), allocatable :: ils(:), neigh(:), irow(:), icol(:),& - & ideg(:), idxs(:), tmpaggr(:) + integer(psb_ipk_), allocatable :: ils(:), neigh(:), irow(:), icol(:),& + & ideg(:), idxs(:) + integer(psb_lpk_), allocatable :: tmpaggr(:) real(psb_dpk_), allocatable :: val(:), diag(:) integer(psb_ipk_) :: icnt,nlp,k,n,ia,isz,nr, naggr,i,j,m, nz, ilg, ii, ip type(psb_d_csr_sparse_mat) :: acsr diff --git a/mlprec/impl/aggregator/mld_d_soc2_map_bld.f90 b/mlprec/impl/aggregator/mld_d_soc2_map_bld.f90 index 923cc206..1a26222c 100644 --- a/mlprec/impl/aggregator/mld_d_soc2_map_bld.f90 +++ b/mlprec/impl/aggregator/mld_d_soc2_map_bld.f90 @@ -79,12 +79,13 @@ subroutine mld_d_soc2_map_bld(iorder,theta,a,desc_a,nlaggr,ilaggr,info) type(psb_dspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a real(psb_dpk_), intent(in) :: theta - integer(psb_ipk_), allocatable, intent(out) :: ilaggr(:),nlaggr(:) + integer(psb_lpk_), allocatable, intent(out) :: ilaggr(:),nlaggr(:) integer(psb_ipk_), intent(out) :: info ! Local variables integer(psb_ipk_), allocatable :: ils(:), neigh(:), irow(:), icol(:),& - & ideg(:), idxs(:), tmpaggr(:) + & ideg(:), idxs(:) + integer(psb_lpk_), allocatable :: tmpaggr(:) real(psb_dpk_), allocatable :: val(:), diag(:) integer(psb_ipk_) :: icnt,nlp,k,n,ia,isz,nr,nc,naggr,i,j,m, nz, ilg, ii, ip, ip1,nzcnt type(psb_d_csr_sparse_mat) :: acsr, muij, s_neigh diff --git a/mlprec/impl/aggregator/mld_s_dec_aggregator_mat_asb.f90 b/mlprec/impl/aggregator/mld_s_dec_aggregator_mat_asb.f90 index 002e6b6c..7f9fb61e 100644 --- a/mlprec/impl/aggregator/mld_s_dec_aggregator_mat_asb.f90 +++ b/mlprec/impl/aggregator/mld_s_dec_aggregator_mat_asb.f90 @@ -140,17 +140,17 @@ subroutine mld_s_dec_aggregator_mat_asb(ag,parms,a,desc_a,ilaggr,nlaggr,ac,op_p type(mld_sml_parms), intent(inout) :: parms type(psb_sspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a - integer(psb_ipk_), intent(inout) :: ilaggr(:), nlaggr(:) - type(psb_sspmat_type), intent(inout) :: op_prol - type(psb_sspmat_type), intent(out) :: ac,op_restr + integer(psb_lpk_), intent(inout) :: ilaggr(:), nlaggr(:) + type(psb_lsspmat_type), intent(inout) :: op_prol + type(psb_lsspmat_type), intent(out) :: ac,op_restr integer(psb_ipk_), intent(out) :: info ! Local variables character(len=20) :: name integer(psb_mpk_) :: ictxt, np, me - type(psb_s_coo_sparse_mat) :: acoo, bcoo - type(psb_s_csr_sparse_mat) :: acsr1 - integer(psb_ipk_) :: nzl,ntaggr + type(psb_ls_coo_sparse_mat) :: acoo, bcoo + type(psb_ls_csr_sparse_mat) :: acsr1 + integer(psb_lpk_) :: nzl,ntaggr integer(psb_ipk_) :: err_act integer(psb_ipk_) :: debug_level, debug_unit diff --git a/mlprec/impl/aggregator/mld_s_soc1_map_bld.f90 b/mlprec/impl/aggregator/mld_s_soc1_map_bld.f90 index 2834cea7..999a3b68 100644 --- a/mlprec/impl/aggregator/mld_s_soc1_map_bld.f90 +++ b/mlprec/impl/aggregator/mld_s_soc1_map_bld.f90 @@ -80,12 +80,13 @@ subroutine mld_s_soc1_map_bld(iorder,theta,a,desc_a,nlaggr,ilaggr,info) type(psb_sspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a real(psb_spk_), intent(in) :: theta - integer(psb_ipk_), allocatable, intent(out) :: ilaggr(:),nlaggr(:) + integer(psb_lpk_), allocatable, intent(out) :: ilaggr(:),nlaggr(:) integer(psb_ipk_), intent(out) :: info ! Local variables - integer(psb_ipk_), allocatable :: ils(:), neigh(:), irow(:), icol(:),& - & ideg(:), idxs(:), tmpaggr(:) + integer(psb_ipk_), allocatable :: ils(:), neigh(:), irow(:), icol(:),& + & ideg(:), idxs(:) + integer(psb_lpk_), allocatable :: tmpaggr(:) real(psb_spk_), allocatable :: val(:), diag(:) integer(psb_ipk_) :: icnt,nlp,k,n,ia,isz,nr, naggr,i,j,m, nz, ilg, ii, ip type(psb_s_csr_sparse_mat) :: acsr diff --git a/mlprec/impl/aggregator/mld_s_soc2_map_bld.f90 b/mlprec/impl/aggregator/mld_s_soc2_map_bld.f90 index 8f4862e3..58268e10 100644 --- a/mlprec/impl/aggregator/mld_s_soc2_map_bld.f90 +++ b/mlprec/impl/aggregator/mld_s_soc2_map_bld.f90 @@ -79,12 +79,13 @@ subroutine mld_s_soc2_map_bld(iorder,theta,a,desc_a,nlaggr,ilaggr,info) type(psb_sspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a real(psb_spk_), intent(in) :: theta - integer(psb_ipk_), allocatable, intent(out) :: ilaggr(:),nlaggr(:) + integer(psb_lpk_), allocatable, intent(out) :: ilaggr(:),nlaggr(:) integer(psb_ipk_), intent(out) :: info ! Local variables integer(psb_ipk_), allocatable :: ils(:), neigh(:), irow(:), icol(:),& - & ideg(:), idxs(:), tmpaggr(:) + & ideg(:), idxs(:) + integer(psb_lpk_), allocatable :: tmpaggr(:) real(psb_spk_), allocatable :: val(:), diag(:) integer(psb_ipk_) :: icnt,nlp,k,n,ia,isz,nr,nc,naggr,i,j,m, nz, ilg, ii, ip, ip1,nzcnt type(psb_s_csr_sparse_mat) :: acsr, muij, s_neigh diff --git a/mlprec/impl/aggregator/mld_z_dec_aggregator_mat_asb.f90 b/mlprec/impl/aggregator/mld_z_dec_aggregator_mat_asb.f90 index 388948e6..3dc53964 100644 --- a/mlprec/impl/aggregator/mld_z_dec_aggregator_mat_asb.f90 +++ b/mlprec/impl/aggregator/mld_z_dec_aggregator_mat_asb.f90 @@ -140,17 +140,17 @@ subroutine mld_z_dec_aggregator_mat_asb(ag,parms,a,desc_a,ilaggr,nlaggr,ac,op_p type(mld_dml_parms), intent(inout) :: parms type(psb_zspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a - integer(psb_ipk_), intent(inout) :: ilaggr(:), nlaggr(:) - type(psb_zspmat_type), intent(inout) :: op_prol - type(psb_zspmat_type), intent(out) :: ac,op_restr + integer(psb_lpk_), intent(inout) :: ilaggr(:), nlaggr(:) + type(psb_lzspmat_type), intent(inout) :: op_prol + type(psb_lzspmat_type), intent(out) :: ac,op_restr integer(psb_ipk_), intent(out) :: info ! Local variables character(len=20) :: name integer(psb_mpk_) :: ictxt, np, me - type(psb_z_coo_sparse_mat) :: acoo, bcoo - type(psb_z_csr_sparse_mat) :: acsr1 - integer(psb_ipk_) :: nzl,ntaggr + type(psb_lz_coo_sparse_mat) :: acoo, bcoo + type(psb_lz_csr_sparse_mat) :: acsr1 + integer(psb_lpk_) :: nzl,ntaggr integer(psb_ipk_) :: err_act integer(psb_ipk_) :: debug_level, debug_unit diff --git a/mlprec/impl/aggregator/mld_z_soc1_map_bld.f90 b/mlprec/impl/aggregator/mld_z_soc1_map_bld.f90 index 0860f43e..ca53c4d3 100644 --- a/mlprec/impl/aggregator/mld_z_soc1_map_bld.f90 +++ b/mlprec/impl/aggregator/mld_z_soc1_map_bld.f90 @@ -80,12 +80,13 @@ subroutine mld_z_soc1_map_bld(iorder,theta,a,desc_a,nlaggr,ilaggr,info) type(psb_zspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a real(psb_dpk_), intent(in) :: theta - integer(psb_ipk_), allocatable, intent(out) :: ilaggr(:),nlaggr(:) + integer(psb_lpk_), allocatable, intent(out) :: ilaggr(:),nlaggr(:) integer(psb_ipk_), intent(out) :: info ! Local variables - integer(psb_ipk_), allocatable :: ils(:), neigh(:), irow(:), icol(:),& - & ideg(:), idxs(:), tmpaggr(:) + integer(psb_ipk_), allocatable :: ils(:), neigh(:), irow(:), icol(:),& + & ideg(:), idxs(:) + integer(psb_lpk_), allocatable :: tmpaggr(:) complex(psb_dpk_), allocatable :: val(:), diag(:) integer(psb_ipk_) :: icnt,nlp,k,n,ia,isz,nr, naggr,i,j,m, nz, ilg, ii, ip type(psb_z_csr_sparse_mat) :: acsr diff --git a/mlprec/impl/aggregator/mld_z_soc2_map_bld.f90 b/mlprec/impl/aggregator/mld_z_soc2_map_bld.f90 index 88615392..9bcec3be 100644 --- a/mlprec/impl/aggregator/mld_z_soc2_map_bld.f90 +++ b/mlprec/impl/aggregator/mld_z_soc2_map_bld.f90 @@ -79,12 +79,13 @@ subroutine mld_z_soc2_map_bld(iorder,theta,a,desc_a,nlaggr,ilaggr,info) type(psb_zspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a real(psb_dpk_), intent(in) :: theta - integer(psb_ipk_), allocatable, intent(out) :: ilaggr(:),nlaggr(:) + integer(psb_lpk_), allocatable, intent(out) :: ilaggr(:),nlaggr(:) integer(psb_ipk_), intent(out) :: info ! Local variables integer(psb_ipk_), allocatable :: ils(:), neigh(:), irow(:), icol(:),& - & ideg(:), idxs(:), tmpaggr(:) + & ideg(:), idxs(:) + integer(psb_lpk_), allocatable :: tmpaggr(:) complex(psb_dpk_), allocatable :: val(:), diag(:) integer(psb_ipk_) :: icnt,nlp,k,n,ia,isz,nr,nc,naggr,i,j,m, nz, ilg, ii, ip, ip1,nzcnt type(psb_z_csr_sparse_mat) :: acsr, muij, s_neigh diff --git a/mlprec/mld_c_inner_mod.f90 b/mlprec/mld_c_inner_mod.f90 index 7ab614c2..2ac6caf8 100644 --- a/mlprec/mld_c_inner_mod.f90 +++ b/mlprec/mld_c_inner_mod.f90 @@ -47,7 +47,7 @@ module mld_c_inner_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_i_base_vect_type, & & psb_spk_, psb_c_base_sparse_mat, psb_c_base_vect_type, psb_ipk_, & - & psb_c_vect_type + & psb_c_vect_type, psb_lpk_, psb_lcspmat_type use mld_c_prec_type, only : mld_cprec_type, mld_sml_parms, & & mld_c_onelev_type, mld_cmlprec_wrk_type @@ -99,26 +99,26 @@ module mld_c_inner_mod interface mld_aggrmap_bld subroutine mld_c_lev_aggrmap_bld(p,a,desc_a,ilaggr,nlaggr,op_prol,info) - import :: psb_cspmat_type, psb_desc_type, psb_spk_, psb_ipk_ + import :: psb_cspmat_type, psb_desc_type, psb_spk_, psb_ipk_, psb_lpk_, psb_lcspmat_type import :: mld_c_onelev_type implicit none type(mld_c_onelev_type), intent(inout), target :: p type(psb_cspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a - integer(psb_ipk_), intent(out) :: ilaggr(:),nlaggr(:) - type(psb_cspmat_type), intent(out) :: op_prol + integer(psb_lpk_), intent(out) :: ilaggr(:),nlaggr(:) + type(psb_lcspmat_type), intent(out) :: op_prol integer(psb_ipk_), intent(out) :: info end subroutine mld_c_lev_aggrmap_bld subroutine mld_caggrmap_bld(aggr_type,iorder,theta,a,desc_a,ilaggr,nlaggr,op_prol,info) - import :: psb_cspmat_type, psb_desc_type, psb_spk_, psb_ipk_ + import :: psb_cspmat_type, psb_desc_type, psb_spk_, psb_ipk_, psb_lpk_, psb_lcspmat_type implicit none integer(psb_ipk_), intent(in) :: iorder integer(psb_ipk_), intent(in) :: aggr_type real(psb_spk_), intent(in) :: theta type(psb_cspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a - integer(psb_ipk_), allocatable, intent(out) :: ilaggr(:),nlaggr(:) - type(psb_cspmat_type), intent(out) :: op_prol + integer(psb_lpk_), allocatable, intent(out) :: ilaggr(:),nlaggr(:) + type(psb_lcspmat_type), intent(out) :: op_prol integer(psb_ipk_), intent(out) :: info end subroutine mld_caggrmap_bld end interface mld_aggrmap_bld @@ -137,42 +137,42 @@ module mld_c_inner_mod interface mld_lev_mat_asb subroutine mld_c_lev_aggrmat_asb(p,a,desc_a,ilaggr,nlaggr,op_prol,info) - import :: psb_cspmat_type, psb_desc_type, psb_spk_, psb_ipk_ + import :: psb_cspmat_type, psb_desc_type, psb_spk_, psb_ipk_, psb_lpk_, psb_lcspmat_type import :: mld_c_onelev_type implicit none type(mld_c_onelev_type), intent(inout), target :: p type(psb_cspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a - integer(psb_ipk_), intent(inout) :: ilaggr(:),nlaggr(:) - type(psb_cspmat_type), intent(inout) :: op_prol + integer(psb_lpk_), intent(inout) :: ilaggr(:),nlaggr(:) + type(psb_lcspmat_type), intent(inout) :: op_prol integer(psb_ipk_), intent(out) :: info end subroutine mld_c_lev_aggrmat_asb end interface mld_lev_mat_asb interface mld_aggrmat_asb subroutine mld_caggrmat_asb(a,desc_a,ilaggr,nlaggr,parms,ac,op_prol,op_restr,info) - import :: psb_cspmat_type, psb_desc_type, psb_spk_, psb_ipk_ + import :: psb_cspmat_type, psb_desc_type, psb_spk_, psb_ipk_, psb_lpk_, psb_lcspmat_type import :: mld_sml_parms implicit none type(psb_cspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a - integer(psb_ipk_), intent(inout) :: ilaggr(:), nlaggr(:) + integer(psb_lpk_), intent(inout) :: ilaggr(:), nlaggr(:) type(mld_sml_parms), intent(inout) :: parms - type(psb_cspmat_type), intent(out) :: ac,op_prol,op_restr + type(psb_lcspmat_type), intent(out) :: ac,op_prol,op_restr integer(psb_ipk_), intent(out) :: info end subroutine mld_caggrmat_asb end interface mld_aggrmat_asb abstract interface subroutine mld_caggrmat_var_asb(a,desc_a,ilaggr,nlaggr,parms,ac,op_prol,op_restr,info) - import :: psb_cspmat_type, psb_desc_type, psb_spk_, psb_ipk_ + import :: psb_cspmat_type, psb_desc_type, psb_spk_, psb_ipk_, psb_lpk_, psb_lcspmat_type import :: mld_c_onelev_type, mld_sml_parms implicit none type(psb_cspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a - integer(psb_ipk_), intent(inout) :: ilaggr(:), nlaggr(:) + integer(psb_lpk_), intent(inout) :: ilaggr(:), nlaggr(:) type(mld_sml_parms), intent(inout) :: parms - type(psb_cspmat_type), intent(out) :: ac,op_prol,op_restr + type(psb_lcspmat_type), intent(out) :: ac,op_prol,op_restr integer(psb_ipk_), intent(out) :: info end subroutine mld_caggrmat_var_asb end interface diff --git a/mlprec/mld_d_inner_mod.f90 b/mlprec/mld_d_inner_mod.f90 index 56c89feb..4d9b4138 100644 --- a/mlprec/mld_d_inner_mod.f90 +++ b/mlprec/mld_d_inner_mod.f90 @@ -47,7 +47,7 @@ module mld_d_inner_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_i_base_vect_type, & & psb_dpk_, psb_d_base_sparse_mat, psb_d_base_vect_type, psb_ipk_, & - & psb_d_vect_type + & psb_d_vect_type, psb_lpk_, psb_ldspmat_type use mld_d_prec_type, only : mld_dprec_type, mld_dml_parms, & & mld_d_onelev_type, mld_dmlprec_wrk_type @@ -99,26 +99,26 @@ module mld_d_inner_mod interface mld_aggrmap_bld subroutine mld_d_lev_aggrmap_bld(p,a,desc_a,ilaggr,nlaggr,op_prol,info) - import :: psb_dspmat_type, psb_desc_type, psb_dpk_, psb_ipk_ + import :: psb_dspmat_type, psb_desc_type, psb_dpk_, psb_ipk_, psb_lpk_, psb_ldspmat_type import :: mld_d_onelev_type implicit none type(mld_d_onelev_type), intent(inout), target :: p type(psb_dspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a - integer(psb_ipk_), intent(out) :: ilaggr(:),nlaggr(:) - type(psb_dspmat_type), intent(out) :: op_prol + integer(psb_lpk_), intent(out) :: ilaggr(:),nlaggr(:) + type(psb_ldspmat_type), intent(out) :: op_prol integer(psb_ipk_), intent(out) :: info end subroutine mld_d_lev_aggrmap_bld subroutine mld_daggrmap_bld(aggr_type,iorder,theta,a,desc_a,ilaggr,nlaggr,op_prol,info) - import :: psb_dspmat_type, psb_desc_type, psb_dpk_, psb_ipk_ + import :: psb_dspmat_type, psb_desc_type, psb_dpk_, psb_ipk_, psb_lpk_, psb_ldspmat_type implicit none integer(psb_ipk_), intent(in) :: iorder integer(psb_ipk_), intent(in) :: aggr_type real(psb_dpk_), intent(in) :: theta type(psb_dspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a - integer(psb_ipk_), allocatable, intent(out) :: ilaggr(:),nlaggr(:) - type(psb_dspmat_type), intent(out) :: op_prol + integer(psb_lpk_), allocatable, intent(out) :: ilaggr(:),nlaggr(:) + type(psb_ldspmat_type), intent(out) :: op_prol integer(psb_ipk_), intent(out) :: info end subroutine mld_daggrmap_bld end interface mld_aggrmap_bld @@ -137,42 +137,42 @@ module mld_d_inner_mod interface mld_lev_mat_asb subroutine mld_d_lev_aggrmat_asb(p,a,desc_a,ilaggr,nlaggr,op_prol,info) - import :: psb_dspmat_type, psb_desc_type, psb_dpk_, psb_ipk_ + import :: psb_dspmat_type, psb_desc_type, psb_dpk_, psb_ipk_, psb_lpk_, psb_ldspmat_type import :: mld_d_onelev_type implicit none type(mld_d_onelev_type), intent(inout), target :: p type(psb_dspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a - integer(psb_ipk_), intent(inout) :: ilaggr(:),nlaggr(:) - type(psb_dspmat_type), intent(inout) :: op_prol + integer(psb_lpk_), intent(inout) :: ilaggr(:),nlaggr(:) + type(psb_ldspmat_type), intent(inout) :: op_prol integer(psb_ipk_), intent(out) :: info end subroutine mld_d_lev_aggrmat_asb end interface mld_lev_mat_asb interface mld_aggrmat_asb subroutine mld_daggrmat_asb(a,desc_a,ilaggr,nlaggr,parms,ac,op_prol,op_restr,info) - import :: psb_dspmat_type, psb_desc_type, psb_dpk_, psb_ipk_ + import :: psb_dspmat_type, psb_desc_type, psb_dpk_, psb_ipk_, psb_lpk_, psb_ldspmat_type import :: mld_dml_parms implicit none type(psb_dspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a - integer(psb_ipk_), intent(inout) :: ilaggr(:), nlaggr(:) + integer(psb_lpk_), intent(inout) :: ilaggr(:), nlaggr(:) type(mld_dml_parms), intent(inout) :: parms - type(psb_dspmat_type), intent(out) :: ac,op_prol,op_restr + type(psb_ldspmat_type), intent(out) :: ac,op_prol,op_restr integer(psb_ipk_), intent(out) :: info end subroutine mld_daggrmat_asb end interface mld_aggrmat_asb abstract interface subroutine mld_daggrmat_var_asb(a,desc_a,ilaggr,nlaggr,parms,ac,op_prol,op_restr,info) - import :: psb_dspmat_type, psb_desc_type, psb_dpk_, psb_ipk_ + import :: psb_dspmat_type, psb_desc_type, psb_dpk_, psb_ipk_, psb_lpk_, psb_ldspmat_type import :: mld_d_onelev_type, mld_dml_parms implicit none type(psb_dspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a - integer(psb_ipk_), intent(inout) :: ilaggr(:), nlaggr(:) + integer(psb_lpk_), intent(inout) :: ilaggr(:), nlaggr(:) type(mld_dml_parms), intent(inout) :: parms - type(psb_dspmat_type), intent(out) :: ac,op_prol,op_restr + type(psb_ldspmat_type), intent(out) :: ac,op_prol,op_restr integer(psb_ipk_), intent(out) :: info end subroutine mld_daggrmat_var_asb end interface diff --git a/mlprec/mld_s_inner_mod.f90 b/mlprec/mld_s_inner_mod.f90 index 473759d5..4dd44d02 100644 --- a/mlprec/mld_s_inner_mod.f90 +++ b/mlprec/mld_s_inner_mod.f90 @@ -47,7 +47,7 @@ module mld_s_inner_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_i_base_vect_type, & & psb_spk_, psb_s_base_sparse_mat, psb_s_base_vect_type, psb_ipk_, & - & psb_s_vect_type + & psb_s_vect_type, psb_lpk_, psb_lsspmat_type use mld_s_prec_type, only : mld_sprec_type, mld_sml_parms, & & mld_s_onelev_type, mld_smlprec_wrk_type @@ -99,26 +99,26 @@ module mld_s_inner_mod interface mld_aggrmap_bld subroutine mld_s_lev_aggrmap_bld(p,a,desc_a,ilaggr,nlaggr,op_prol,info) - import :: psb_sspmat_type, psb_desc_type, psb_spk_, psb_ipk_ + import :: psb_sspmat_type, psb_desc_type, psb_spk_, psb_ipk_, psb_lpk_, psb_lsspmat_type import :: mld_s_onelev_type implicit none type(mld_s_onelev_type), intent(inout), target :: p type(psb_sspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a - integer(psb_ipk_), intent(out) :: ilaggr(:),nlaggr(:) - type(psb_sspmat_type), intent(out) :: op_prol + integer(psb_lpk_), intent(out) :: ilaggr(:),nlaggr(:) + type(psb_lsspmat_type), intent(out) :: op_prol integer(psb_ipk_), intent(out) :: info end subroutine mld_s_lev_aggrmap_bld subroutine mld_saggrmap_bld(aggr_type,iorder,theta,a,desc_a,ilaggr,nlaggr,op_prol,info) - import :: psb_sspmat_type, psb_desc_type, psb_spk_, psb_ipk_ + import :: psb_sspmat_type, psb_desc_type, psb_spk_, psb_ipk_, psb_lpk_, psb_lsspmat_type implicit none integer(psb_ipk_), intent(in) :: iorder integer(psb_ipk_), intent(in) :: aggr_type real(psb_spk_), intent(in) :: theta type(psb_sspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a - integer(psb_ipk_), allocatable, intent(out) :: ilaggr(:),nlaggr(:) - type(psb_sspmat_type), intent(out) :: op_prol + integer(psb_lpk_), allocatable, intent(out) :: ilaggr(:),nlaggr(:) + type(psb_lsspmat_type), intent(out) :: op_prol integer(psb_ipk_), intent(out) :: info end subroutine mld_saggrmap_bld end interface mld_aggrmap_bld @@ -137,42 +137,42 @@ module mld_s_inner_mod interface mld_lev_mat_asb subroutine mld_s_lev_aggrmat_asb(p,a,desc_a,ilaggr,nlaggr,op_prol,info) - import :: psb_sspmat_type, psb_desc_type, psb_spk_, psb_ipk_ + import :: psb_sspmat_type, psb_desc_type, psb_spk_, psb_ipk_, psb_lpk_, psb_lsspmat_type import :: mld_s_onelev_type implicit none type(mld_s_onelev_type), intent(inout), target :: p type(psb_sspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a - integer(psb_ipk_), intent(inout) :: ilaggr(:),nlaggr(:) - type(psb_sspmat_type), intent(inout) :: op_prol + integer(psb_lpk_), intent(inout) :: ilaggr(:),nlaggr(:) + type(psb_lsspmat_type), intent(inout) :: op_prol integer(psb_ipk_), intent(out) :: info end subroutine mld_s_lev_aggrmat_asb end interface mld_lev_mat_asb interface mld_aggrmat_asb subroutine mld_saggrmat_asb(a,desc_a,ilaggr,nlaggr,parms,ac,op_prol,op_restr,info) - import :: psb_sspmat_type, psb_desc_type, psb_spk_, psb_ipk_ + import :: psb_sspmat_type, psb_desc_type, psb_spk_, psb_ipk_, psb_lpk_, psb_lsspmat_type import :: mld_sml_parms implicit none type(psb_sspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a - integer(psb_ipk_), intent(inout) :: ilaggr(:), nlaggr(:) + integer(psb_lpk_), intent(inout) :: ilaggr(:), nlaggr(:) type(mld_sml_parms), intent(inout) :: parms - type(psb_sspmat_type), intent(out) :: ac,op_prol,op_restr + type(psb_lsspmat_type), intent(out) :: ac,op_prol,op_restr integer(psb_ipk_), intent(out) :: info end subroutine mld_saggrmat_asb end interface mld_aggrmat_asb abstract interface subroutine mld_saggrmat_var_asb(a,desc_a,ilaggr,nlaggr,parms,ac,op_prol,op_restr,info) - import :: psb_sspmat_type, psb_desc_type, psb_spk_, psb_ipk_ + import :: psb_sspmat_type, psb_desc_type, psb_spk_, psb_ipk_, psb_lpk_, psb_lsspmat_type import :: mld_s_onelev_type, mld_sml_parms implicit none type(psb_sspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a - integer(psb_ipk_), intent(inout) :: ilaggr(:), nlaggr(:) + integer(psb_lpk_), intent(inout) :: ilaggr(:), nlaggr(:) type(mld_sml_parms), intent(inout) :: parms - type(psb_sspmat_type), intent(out) :: ac,op_prol,op_restr + type(psb_lsspmat_type), intent(out) :: ac,op_prol,op_restr integer(psb_ipk_), intent(out) :: info end subroutine mld_saggrmat_var_asb end interface diff --git a/mlprec/mld_z_inner_mod.f90 b/mlprec/mld_z_inner_mod.f90 index a592fe5b..4fe6c8e6 100644 --- a/mlprec/mld_z_inner_mod.f90 +++ b/mlprec/mld_z_inner_mod.f90 @@ -47,7 +47,7 @@ module mld_z_inner_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_i_base_vect_type, & & psb_dpk_, psb_z_base_sparse_mat, psb_z_base_vect_type, psb_ipk_, & - & psb_z_vect_type + & psb_z_vect_type, psb_lpk_, psb_lzspmat_type use mld_z_prec_type, only : mld_zprec_type, mld_dml_parms, & & mld_z_onelev_type, mld_zmlprec_wrk_type @@ -99,26 +99,26 @@ module mld_z_inner_mod interface mld_aggrmap_bld subroutine mld_z_lev_aggrmap_bld(p,a,desc_a,ilaggr,nlaggr,op_prol,info) - import :: psb_zspmat_type, psb_desc_type, psb_dpk_, psb_ipk_ + import :: psb_zspmat_type, psb_desc_type, psb_dpk_, psb_ipk_, psb_lpk_, psb_lzspmat_type import :: mld_z_onelev_type implicit none type(mld_z_onelev_type), intent(inout), target :: p type(psb_zspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a - integer(psb_ipk_), intent(out) :: ilaggr(:),nlaggr(:) - type(psb_zspmat_type), intent(out) :: op_prol + integer(psb_lpk_), intent(out) :: ilaggr(:),nlaggr(:) + type(psb_lzspmat_type), intent(out) :: op_prol integer(psb_ipk_), intent(out) :: info end subroutine mld_z_lev_aggrmap_bld subroutine mld_zaggrmap_bld(aggr_type,iorder,theta,a,desc_a,ilaggr,nlaggr,op_prol,info) - import :: psb_zspmat_type, psb_desc_type, psb_dpk_, psb_ipk_ + import :: psb_zspmat_type, psb_desc_type, psb_dpk_, psb_ipk_, psb_lpk_, psb_lzspmat_type implicit none integer(psb_ipk_), intent(in) :: iorder integer(psb_ipk_), intent(in) :: aggr_type real(psb_dpk_), intent(in) :: theta type(psb_zspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a - integer(psb_ipk_), allocatable, intent(out) :: ilaggr(:),nlaggr(:) - type(psb_zspmat_type), intent(out) :: op_prol + integer(psb_lpk_), allocatable, intent(out) :: ilaggr(:),nlaggr(:) + type(psb_lzspmat_type), intent(out) :: op_prol integer(psb_ipk_), intent(out) :: info end subroutine mld_zaggrmap_bld end interface mld_aggrmap_bld @@ -137,42 +137,42 @@ module mld_z_inner_mod interface mld_lev_mat_asb subroutine mld_z_lev_aggrmat_asb(p,a,desc_a,ilaggr,nlaggr,op_prol,info) - import :: psb_zspmat_type, psb_desc_type, psb_dpk_, psb_ipk_ + import :: psb_zspmat_type, psb_desc_type, psb_dpk_, psb_ipk_, psb_lpk_, psb_lzspmat_type import :: mld_z_onelev_type implicit none type(mld_z_onelev_type), intent(inout), target :: p type(psb_zspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a - integer(psb_ipk_), intent(inout) :: ilaggr(:),nlaggr(:) - type(psb_zspmat_type), intent(inout) :: op_prol + integer(psb_lpk_), intent(inout) :: ilaggr(:),nlaggr(:) + type(psb_lzspmat_type), intent(inout) :: op_prol integer(psb_ipk_), intent(out) :: info end subroutine mld_z_lev_aggrmat_asb end interface mld_lev_mat_asb interface mld_aggrmat_asb subroutine mld_zaggrmat_asb(a,desc_a,ilaggr,nlaggr,parms,ac,op_prol,op_restr,info) - import :: psb_zspmat_type, psb_desc_type, psb_dpk_, psb_ipk_ + import :: psb_zspmat_type, psb_desc_type, psb_dpk_, psb_ipk_, psb_lpk_, psb_lzspmat_type import :: mld_dml_parms implicit none type(psb_zspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a - integer(psb_ipk_), intent(inout) :: ilaggr(:), nlaggr(:) + integer(psb_lpk_), intent(inout) :: ilaggr(:), nlaggr(:) type(mld_dml_parms), intent(inout) :: parms - type(psb_zspmat_type), intent(out) :: ac,op_prol,op_restr + type(psb_lzspmat_type), intent(out) :: ac,op_prol,op_restr integer(psb_ipk_), intent(out) :: info end subroutine mld_zaggrmat_asb end interface mld_aggrmat_asb abstract interface subroutine mld_zaggrmat_var_asb(a,desc_a,ilaggr,nlaggr,parms,ac,op_prol,op_restr,info) - import :: psb_zspmat_type, psb_desc_type, psb_dpk_, psb_ipk_ + import :: psb_zspmat_type, psb_desc_type, psb_dpk_, psb_ipk_, psb_lpk_, psb_lzspmat_type import :: mld_z_onelev_type, mld_dml_parms implicit none type(psb_zspmat_type), intent(in) :: a type(psb_desc_type), intent(in) :: desc_a - integer(psb_ipk_), intent(inout) :: ilaggr(:), nlaggr(:) + integer(psb_lpk_), intent(inout) :: ilaggr(:), nlaggr(:) type(mld_dml_parms), intent(inout) :: parms - type(psb_zspmat_type), intent(out) :: ac,op_prol,op_restr + type(psb_lzspmat_type), intent(out) :: ac,op_prol,op_restr integer(psb_ipk_), intent(out) :: info end subroutine mld_zaggrmat_var_asb end interface