Cleanup internal declarations and unused variables.

stopcriterion
Salvatore Filippone 5 years ago
parent f34594df60
commit de25234293

@ -45,9 +45,8 @@ subroutine mld_c_base_onelev_build(lv,info,amold,vmold,imold)
class(psb_c_base_vect_type), intent(in), optional :: vmold class(psb_c_base_vect_type), intent(in), optional :: vmold
class(psb_i_base_vect_type), intent(in), optional :: imold class(psb_i_base_vect_type), intent(in), optional :: imold
! Local ! Local
integer(psb_ipk_) :: err,i,k, err_act, iszv, newsz, casize integer(psb_ipk_) :: err,i,k, err_act
integer(psb_ipk_) :: ictxt, me, np integer(psb_ipk_) :: ictxt, me, np
integer(psb_ipk_) :: ipv(mld_ifpsz_), val
integer(psb_ipk_) :: int_err(5) integer(psb_ipk_) :: int_err(5)
integer(psb_ipk_) :: debug_level, debug_unit integer(psb_ipk_) :: debug_level, debug_unit
character(len=20) :: name, ch_err character(len=20) :: name, ch_err

@ -105,11 +105,10 @@ subroutine mld_c_base_onelev_mat_asb(lv,a,desc_a,ilaggr,nlaggr,op_prol,info)
character(len=24) :: name character(len=24) :: name
integer(psb_ipk_) :: ictxt, np, me integer(psb_ipk_) :: ictxt, np, me
integer(psb_ipk_) :: err_act integer(psb_ipk_) :: err_act
type(psb_lcspmat_type) :: lac, lac1, op_restr type(psb_lcspmat_type) :: lac, op_restr
type(psb_cspmat_type) :: ac, iop_restr, iop_prol type(psb_cspmat_type) :: ac, iop_restr, iop_prol
type(psb_lc_coo_sparse_mat) :: acoo, bcoo type(psb_lc_coo_sparse_mat) :: acoo, bcoo
type(psb_lc_csr_sparse_mat) :: acsr1 type(psb_lc_csr_sparse_mat) :: acsr1
integer(psb_lpk_) :: ntaggr, nr, nc
integer(psb_ipk_) :: nzl, inl integer(psb_ipk_) :: nzl, inl
integer(psb_ipk_) :: debug_level, debug_unit integer(psb_ipk_) :: debug_level, debug_unit

@ -45,9 +45,8 @@ subroutine mld_d_base_onelev_build(lv,info,amold,vmold,imold)
class(psb_d_base_vect_type), intent(in), optional :: vmold class(psb_d_base_vect_type), intent(in), optional :: vmold
class(psb_i_base_vect_type), intent(in), optional :: imold class(psb_i_base_vect_type), intent(in), optional :: imold
! Local ! Local
integer(psb_ipk_) :: err,i,k, err_act, iszv, newsz, casize integer(psb_ipk_) :: err,i,k, err_act
integer(psb_ipk_) :: ictxt, me, np integer(psb_ipk_) :: ictxt, me, np
integer(psb_ipk_) :: ipv(mld_ifpsz_), val
integer(psb_ipk_) :: int_err(5) integer(psb_ipk_) :: int_err(5)
integer(psb_ipk_) :: debug_level, debug_unit integer(psb_ipk_) :: debug_level, debug_unit
character(len=20) :: name, ch_err character(len=20) :: name, ch_err

@ -105,11 +105,10 @@ subroutine mld_d_base_onelev_mat_asb(lv,a,desc_a,ilaggr,nlaggr,op_prol,info)
character(len=24) :: name character(len=24) :: name
integer(psb_ipk_) :: ictxt, np, me integer(psb_ipk_) :: ictxt, np, me
integer(psb_ipk_) :: err_act integer(psb_ipk_) :: err_act
type(psb_ldspmat_type) :: lac, lac1, op_restr type(psb_ldspmat_type) :: lac, op_restr
type(psb_dspmat_type) :: ac, iop_restr, iop_prol type(psb_dspmat_type) :: ac, iop_restr, iop_prol
type(psb_ld_coo_sparse_mat) :: acoo, bcoo type(psb_ld_coo_sparse_mat) :: acoo, bcoo
type(psb_ld_csr_sparse_mat) :: acsr1 type(psb_ld_csr_sparse_mat) :: acsr1
integer(psb_lpk_) :: ntaggr, nr, nc
integer(psb_ipk_) :: nzl, inl integer(psb_ipk_) :: nzl, inl
integer(psb_ipk_) :: debug_level, debug_unit integer(psb_ipk_) :: debug_level, debug_unit

@ -45,9 +45,8 @@ subroutine mld_s_base_onelev_build(lv,info,amold,vmold,imold)
class(psb_s_base_vect_type), intent(in), optional :: vmold class(psb_s_base_vect_type), intent(in), optional :: vmold
class(psb_i_base_vect_type), intent(in), optional :: imold class(psb_i_base_vect_type), intent(in), optional :: imold
! Local ! Local
integer(psb_ipk_) :: err,i,k, err_act, iszv, newsz, casize integer(psb_ipk_) :: err,i,k, err_act
integer(psb_ipk_) :: ictxt, me, np integer(psb_ipk_) :: ictxt, me, np
integer(psb_ipk_) :: ipv(mld_ifpsz_), val
integer(psb_ipk_) :: int_err(5) integer(psb_ipk_) :: int_err(5)
integer(psb_ipk_) :: debug_level, debug_unit integer(psb_ipk_) :: debug_level, debug_unit
character(len=20) :: name, ch_err character(len=20) :: name, ch_err

@ -105,11 +105,10 @@ subroutine mld_s_base_onelev_mat_asb(lv,a,desc_a,ilaggr,nlaggr,op_prol,info)
character(len=24) :: name character(len=24) :: name
integer(psb_ipk_) :: ictxt, np, me integer(psb_ipk_) :: ictxt, np, me
integer(psb_ipk_) :: err_act integer(psb_ipk_) :: err_act
type(psb_lsspmat_type) :: lac, lac1, op_restr type(psb_lsspmat_type) :: lac, op_restr
type(psb_sspmat_type) :: ac, iop_restr, iop_prol type(psb_sspmat_type) :: ac, iop_restr, iop_prol
type(psb_ls_coo_sparse_mat) :: acoo, bcoo type(psb_ls_coo_sparse_mat) :: acoo, bcoo
type(psb_ls_csr_sparse_mat) :: acsr1 type(psb_ls_csr_sparse_mat) :: acsr1
integer(psb_lpk_) :: ntaggr, nr, nc
integer(psb_ipk_) :: nzl, inl integer(psb_ipk_) :: nzl, inl
integer(psb_ipk_) :: debug_level, debug_unit integer(psb_ipk_) :: debug_level, debug_unit

@ -45,9 +45,8 @@ subroutine mld_z_base_onelev_build(lv,info,amold,vmold,imold)
class(psb_z_base_vect_type), intent(in), optional :: vmold class(psb_z_base_vect_type), intent(in), optional :: vmold
class(psb_i_base_vect_type), intent(in), optional :: imold class(psb_i_base_vect_type), intent(in), optional :: imold
! Local ! Local
integer(psb_ipk_) :: err,i,k, err_act, iszv, newsz, casize integer(psb_ipk_) :: err,i,k, err_act
integer(psb_ipk_) :: ictxt, me, np integer(psb_ipk_) :: ictxt, me, np
integer(psb_ipk_) :: ipv(mld_ifpsz_), val
integer(psb_ipk_) :: int_err(5) integer(psb_ipk_) :: int_err(5)
integer(psb_ipk_) :: debug_level, debug_unit integer(psb_ipk_) :: debug_level, debug_unit
character(len=20) :: name, ch_err character(len=20) :: name, ch_err

@ -105,11 +105,10 @@ subroutine mld_z_base_onelev_mat_asb(lv,a,desc_a,ilaggr,nlaggr,op_prol,info)
character(len=24) :: name character(len=24) :: name
integer(psb_ipk_) :: ictxt, np, me integer(psb_ipk_) :: ictxt, np, me
integer(psb_ipk_) :: err_act integer(psb_ipk_) :: err_act
type(psb_lzspmat_type) :: lac, lac1, op_restr type(psb_lzspmat_type) :: lac, op_restr
type(psb_zspmat_type) :: ac, iop_restr, iop_prol type(psb_zspmat_type) :: ac, iop_restr, iop_prol
type(psb_lz_coo_sparse_mat) :: acoo, bcoo type(psb_lz_coo_sparse_mat) :: acoo, bcoo
type(psb_lz_csr_sparse_mat) :: acsr1 type(psb_lz_csr_sparse_mat) :: acsr1
integer(psb_lpk_) :: ntaggr, nr, nc
integer(psb_ipk_) :: nzl, inl integer(psb_ipk_) :: nzl, inl
integer(psb_ipk_) :: debug_level, debug_unit integer(psb_ipk_) :: debug_level, debug_unit

@ -90,7 +90,6 @@ subroutine mld_c_hierarchy_bld(a,desc_a,prec,info)
integer(psb_lpk_), allocatable :: ilaggr(:), nlaggr(:) integer(psb_lpk_), allocatable :: ilaggr(:), nlaggr(:)
type(psb_lcspmat_type) :: op_prol type(psb_lcspmat_type) :: op_prol
type(mld_c_onelev_type), allocatable :: tprecv(:) type(mld_c_onelev_type), allocatable :: tprecv(:)
integer(psb_ipk_) :: int_err(5)
integer(psb_ipk_) :: debug_level, debug_unit integer(psb_ipk_) :: debug_level, debug_unit
character(len=20) :: name, ch_err character(len=20) :: name, ch_err
@ -105,7 +104,6 @@ subroutine mld_c_hierarchy_bld(a,desc_a,prec,info)
name = 'mld_c_hierarchy_bld' name = 'mld_c_hierarchy_bld'
info = psb_success_ info = psb_success_
int_err(1) = 0
ictxt = desc_a%get_context() ictxt = desc_a%get_context()
call psb_info(ictxt, me, np) call psb_info(ictxt, me, np)
prec%ictxt = ictxt prec%ictxt = ictxt
@ -193,9 +191,9 @@ subroutine mld_c_hierarchy_bld(a,desc_a,prec,info)
! Default to the cubic root of the size at base level. ! Default to the cubic root of the size at base level.
! !
casize = desc_a%get_global_rows() casize = desc_a%get_global_rows()
casize = int((sone*casize)**(sone/(sone*3)),psb_ipk_) casize = int((sone*casize)**(sone/(sone*3)),psb_lpk_)
casize = max(casize,ione) casize = max(casize,lone)
casize = casize*40_psb_ipk_ casize = casize*40_psb_lpk_
call psb_bcast(ictxt,casize) call psb_bcast(ictxt,casize)
if (casize > huge(prec%ag_data%min_coarse_size)) then if (casize > huge(prec%ag_data%min_coarse_size)) then
! !

@ -97,10 +97,9 @@ subroutine mld_c_smoothers_bld(a,desc_a,prec,info,amold,vmold,imold)
! Local Variables ! Local Variables
integer(psb_ipk_) :: ictxt, me,np integer(psb_ipk_) :: ictxt, me,np
integer(psb_ipk_) :: err,i,k, err_act, iszv, newsz, casize, nplevs, mxplevs integer(psb_ipk_) :: err,i,k, err_act, iszv, newsz, nplevs, mxplevs
real(psb_spk_) :: mnaggratio real(psb_spk_) :: mnaggratio
integer(psb_ipk_) :: ipv(mld_ifpsz_), val, coarse_solve_id integer(psb_ipk_) :: coarse_solve_id
integer(psb_ipk_) :: int_err(5)
integer(psb_ipk_) :: debug_level, debug_unit integer(psb_ipk_) :: debug_level, debug_unit
character(len=20) :: name, ch_err character(len=20) :: name, ch_err
@ -115,7 +114,6 @@ subroutine mld_c_smoothers_bld(a,desc_a,prec,info,amold,vmold,imold)
name = 'mld_c_smoothers_bld' name = 'mld_c_smoothers_bld'
info = psb_success_ info = psb_success_
int_err(1) = 0
ictxt = desc_a%get_context() ictxt = desc_a%get_context()
call psb_info(ictxt, me, np) call psb_info(ictxt, me, np)

@ -224,7 +224,7 @@ subroutine mld_cmlprec_aply_vect(alpha,p,x,beta,y,desc_data,trans,work,info)
! Local variables ! Local variables
integer(psb_ipk_) :: ictxt, np, me integer(psb_ipk_) :: ictxt, np, me
integer(psb_ipk_) :: debug_level, debug_unit integer(psb_ipk_) :: debug_level, debug_unit
integer(psb_ipk_) :: nlev,nc2l, level, isweep, err_act integer(psb_ipk_) :: nlev, nc2l, level, isweep, err_act
character(len=20) :: name character(len=20) :: name
character :: trans_ character :: trans_
complex(psb_spk_) :: beta_ complex(psb_spk_) :: beta_
@ -638,7 +638,7 @@ contains
end if end if
endif endif
! !
! Compute the residual and call recursively ! Compute the residual for next level and call recursively
! !
if (pre) then if (pre) then
call psb_geaxpby(cone,vx2l,& call psb_geaxpby(cone,vx2l,&

@ -98,7 +98,6 @@ subroutine mld_cmlprec_bld(a,desc_a,p,info,amold,vmold,imold)
integer(psb_ipk_) :: err,i,k, err_act, iszv, newsz, casize, nplevs, mxplevs integer(psb_ipk_) :: err,i,k, err_act, iszv, newsz, casize, nplevs, mxplevs
real(psb_spk_) :: mnaggratio real(psb_spk_) :: mnaggratio
integer(psb_ipk_) :: ipv(mld_ifpsz_), val integer(psb_ipk_) :: ipv(mld_ifpsz_), val
integer(psb_ipk_) :: int_err(5)
integer(psb_ipk_) :: debug_level, debug_unit integer(psb_ipk_) :: debug_level, debug_unit
character(len=20) :: name, ch_err character(len=20) :: name, ch_err
@ -113,7 +112,6 @@ subroutine mld_cmlprec_bld(a,desc_a,p,info,amold,vmold,imold)
name = 'mld_cmlprec_bld' name = 'mld_cmlprec_bld'
info = psb_success_ info = psb_success_
int_err(1) = 0
ictxt = desc_a%get_context() ictxt = desc_a%get_context()
call psb_info(ictxt, me, np) call psb_info(ictxt, me, np)

@ -90,7 +90,6 @@ subroutine mld_d_hierarchy_bld(a,desc_a,prec,info)
integer(psb_lpk_), allocatable :: ilaggr(:), nlaggr(:) integer(psb_lpk_), allocatable :: ilaggr(:), nlaggr(:)
type(psb_ldspmat_type) :: op_prol type(psb_ldspmat_type) :: op_prol
type(mld_d_onelev_type), allocatable :: tprecv(:) type(mld_d_onelev_type), allocatable :: tprecv(:)
integer(psb_ipk_) :: int_err(5)
integer(psb_ipk_) :: debug_level, debug_unit integer(psb_ipk_) :: debug_level, debug_unit
character(len=20) :: name, ch_err character(len=20) :: name, ch_err
@ -105,7 +104,6 @@ subroutine mld_d_hierarchy_bld(a,desc_a,prec,info)
name = 'mld_d_hierarchy_bld' name = 'mld_d_hierarchy_bld'
info = psb_success_ info = psb_success_
int_err(1) = 0
ictxt = desc_a%get_context() ictxt = desc_a%get_context()
call psb_info(ictxt, me, np) call psb_info(ictxt, me, np)
prec%ictxt = ictxt prec%ictxt = ictxt
@ -193,9 +191,9 @@ subroutine mld_d_hierarchy_bld(a,desc_a,prec,info)
! Default to the cubic root of the size at base level. ! Default to the cubic root of the size at base level.
! !
casize = desc_a%get_global_rows() casize = desc_a%get_global_rows()
casize = int((done*casize)**(done/(done*3)),psb_ipk_) casize = int((done*casize)**(done/(done*3)),psb_lpk_)
casize = max(casize,ione) casize = max(casize,lone)
casize = casize*40_psb_ipk_ casize = casize*40_psb_lpk_
call psb_bcast(ictxt,casize) call psb_bcast(ictxt,casize)
if (casize > huge(prec%ag_data%min_coarse_size)) then if (casize > huge(prec%ag_data%min_coarse_size)) then
! !

@ -97,10 +97,9 @@ subroutine mld_d_smoothers_bld(a,desc_a,prec,info,amold,vmold,imold)
! Local Variables ! Local Variables
integer(psb_ipk_) :: ictxt, me,np integer(psb_ipk_) :: ictxt, me,np
integer(psb_ipk_) :: err,i,k, err_act, iszv, newsz, casize, nplevs, mxplevs integer(psb_ipk_) :: err,i,k, err_act, iszv, newsz, nplevs, mxplevs
real(psb_dpk_) :: mnaggratio real(psb_dpk_) :: mnaggratio
integer(psb_ipk_) :: ipv(mld_ifpsz_), val, coarse_solve_id integer(psb_ipk_) :: coarse_solve_id
integer(psb_ipk_) :: int_err(5)
integer(psb_ipk_) :: debug_level, debug_unit integer(psb_ipk_) :: debug_level, debug_unit
character(len=20) :: name, ch_err character(len=20) :: name, ch_err
@ -115,7 +114,6 @@ subroutine mld_d_smoothers_bld(a,desc_a,prec,info,amold,vmold,imold)
name = 'mld_d_smoothers_bld' name = 'mld_d_smoothers_bld'
info = psb_success_ info = psb_success_
int_err(1) = 0
ictxt = desc_a%get_context() ictxt = desc_a%get_context()
call psb_info(ictxt, me, np) call psb_info(ictxt, me, np)

@ -224,7 +224,7 @@ subroutine mld_dmlprec_aply_vect(alpha,p,x,beta,y,desc_data,trans,work,info)
! Local variables ! Local variables
integer(psb_ipk_) :: ictxt, np, me integer(psb_ipk_) :: ictxt, np, me
integer(psb_ipk_) :: debug_level, debug_unit integer(psb_ipk_) :: debug_level, debug_unit
integer(psb_ipk_) :: nlev,nc2l, level, isweep, err_act integer(psb_ipk_) :: nlev, nc2l, level, isweep, err_act
character(len=20) :: name character(len=20) :: name
character :: trans_ character :: trans_
real(psb_dpk_) :: beta_ real(psb_dpk_) :: beta_
@ -638,7 +638,7 @@ contains
end if end if
endif endif
! !
! Compute the residual and call recursively ! Compute the residual for next level and call recursively
! !
if (pre) then if (pre) then
call psb_geaxpby(done,vx2l,& call psb_geaxpby(done,vx2l,&

@ -98,7 +98,6 @@ subroutine mld_dmlprec_bld(a,desc_a,p,info,amold,vmold,imold)
integer(psb_ipk_) :: err,i,k, err_act, iszv, newsz, casize, nplevs, mxplevs integer(psb_ipk_) :: err,i,k, err_act, iszv, newsz, casize, nplevs, mxplevs
real(psb_dpk_) :: mnaggratio real(psb_dpk_) :: mnaggratio
integer(psb_ipk_) :: ipv(mld_ifpsz_), val integer(psb_ipk_) :: ipv(mld_ifpsz_), val
integer(psb_ipk_) :: int_err(5)
integer(psb_ipk_) :: debug_level, debug_unit integer(psb_ipk_) :: debug_level, debug_unit
character(len=20) :: name, ch_err character(len=20) :: name, ch_err
@ -113,7 +112,6 @@ subroutine mld_dmlprec_bld(a,desc_a,p,info,amold,vmold,imold)
name = 'mld_dmlprec_bld' name = 'mld_dmlprec_bld'
info = psb_success_ info = psb_success_
int_err(1) = 0
ictxt = desc_a%get_context() ictxt = desc_a%get_context()
call psb_info(ictxt, me, np) call psb_info(ictxt, me, np)

@ -90,7 +90,6 @@ subroutine mld_s_hierarchy_bld(a,desc_a,prec,info)
integer(psb_lpk_), allocatable :: ilaggr(:), nlaggr(:) integer(psb_lpk_), allocatable :: ilaggr(:), nlaggr(:)
type(psb_lsspmat_type) :: op_prol type(psb_lsspmat_type) :: op_prol
type(mld_s_onelev_type), allocatable :: tprecv(:) type(mld_s_onelev_type), allocatable :: tprecv(:)
integer(psb_ipk_) :: int_err(5)
integer(psb_ipk_) :: debug_level, debug_unit integer(psb_ipk_) :: debug_level, debug_unit
character(len=20) :: name, ch_err character(len=20) :: name, ch_err
@ -105,7 +104,6 @@ subroutine mld_s_hierarchy_bld(a,desc_a,prec,info)
name = 'mld_s_hierarchy_bld' name = 'mld_s_hierarchy_bld'
info = psb_success_ info = psb_success_
int_err(1) = 0
ictxt = desc_a%get_context() ictxt = desc_a%get_context()
call psb_info(ictxt, me, np) call psb_info(ictxt, me, np)
prec%ictxt = ictxt prec%ictxt = ictxt
@ -193,9 +191,9 @@ subroutine mld_s_hierarchy_bld(a,desc_a,prec,info)
! Default to the cubic root of the size at base level. ! Default to the cubic root of the size at base level.
! !
casize = desc_a%get_global_rows() casize = desc_a%get_global_rows()
casize = int((sone*casize)**(sone/(sone*3)),psb_ipk_) casize = int((sone*casize)**(sone/(sone*3)),psb_lpk_)
casize = max(casize,ione) casize = max(casize,lone)
casize = casize*40_psb_ipk_ casize = casize*40_psb_lpk_
call psb_bcast(ictxt,casize) call psb_bcast(ictxt,casize)
if (casize > huge(prec%ag_data%min_coarse_size)) then if (casize > huge(prec%ag_data%min_coarse_size)) then
! !

@ -97,10 +97,9 @@ subroutine mld_s_smoothers_bld(a,desc_a,prec,info,amold,vmold,imold)
! Local Variables ! Local Variables
integer(psb_ipk_) :: ictxt, me,np integer(psb_ipk_) :: ictxt, me,np
integer(psb_ipk_) :: err,i,k, err_act, iszv, newsz, casize, nplevs, mxplevs integer(psb_ipk_) :: err,i,k, err_act, iszv, newsz, nplevs, mxplevs
real(psb_spk_) :: mnaggratio real(psb_spk_) :: mnaggratio
integer(psb_ipk_) :: ipv(mld_ifpsz_), val, coarse_solve_id integer(psb_ipk_) :: coarse_solve_id
integer(psb_ipk_) :: int_err(5)
integer(psb_ipk_) :: debug_level, debug_unit integer(psb_ipk_) :: debug_level, debug_unit
character(len=20) :: name, ch_err character(len=20) :: name, ch_err
@ -115,7 +114,6 @@ subroutine mld_s_smoothers_bld(a,desc_a,prec,info,amold,vmold,imold)
name = 'mld_s_smoothers_bld' name = 'mld_s_smoothers_bld'
info = psb_success_ info = psb_success_
int_err(1) = 0
ictxt = desc_a%get_context() ictxt = desc_a%get_context()
call psb_info(ictxt, me, np) call psb_info(ictxt, me, np)

@ -224,7 +224,7 @@ subroutine mld_smlprec_aply_vect(alpha,p,x,beta,y,desc_data,trans,work,info)
! Local variables ! Local variables
integer(psb_ipk_) :: ictxt, np, me integer(psb_ipk_) :: ictxt, np, me
integer(psb_ipk_) :: debug_level, debug_unit integer(psb_ipk_) :: debug_level, debug_unit
integer(psb_ipk_) :: nlev,nc2l, level, isweep, err_act integer(psb_ipk_) :: nlev, nc2l, level, isweep, err_act
character(len=20) :: name character(len=20) :: name
character :: trans_ character :: trans_
real(psb_spk_) :: beta_ real(psb_spk_) :: beta_
@ -638,7 +638,7 @@ contains
end if end if
endif endif
! !
! Compute the residual and call recursively ! Compute the residual for next level and call recursively
! !
if (pre) then if (pre) then
call psb_geaxpby(sone,vx2l,& call psb_geaxpby(sone,vx2l,&

@ -98,7 +98,6 @@ subroutine mld_smlprec_bld(a,desc_a,p,info,amold,vmold,imold)
integer(psb_ipk_) :: err,i,k, err_act, iszv, newsz, casize, nplevs, mxplevs integer(psb_ipk_) :: err,i,k, err_act, iszv, newsz, casize, nplevs, mxplevs
real(psb_spk_) :: mnaggratio real(psb_spk_) :: mnaggratio
integer(psb_ipk_) :: ipv(mld_ifpsz_), val integer(psb_ipk_) :: ipv(mld_ifpsz_), val
integer(psb_ipk_) :: int_err(5)
integer(psb_ipk_) :: debug_level, debug_unit integer(psb_ipk_) :: debug_level, debug_unit
character(len=20) :: name, ch_err character(len=20) :: name, ch_err
@ -113,7 +112,6 @@ subroutine mld_smlprec_bld(a,desc_a,p,info,amold,vmold,imold)
name = 'mld_smlprec_bld' name = 'mld_smlprec_bld'
info = psb_success_ info = psb_success_
int_err(1) = 0
ictxt = desc_a%get_context() ictxt = desc_a%get_context()
call psb_info(ictxt, me, np) call psb_info(ictxt, me, np)

@ -90,7 +90,6 @@ subroutine mld_z_hierarchy_bld(a,desc_a,prec,info)
integer(psb_lpk_), allocatable :: ilaggr(:), nlaggr(:) integer(psb_lpk_), allocatable :: ilaggr(:), nlaggr(:)
type(psb_lzspmat_type) :: op_prol type(psb_lzspmat_type) :: op_prol
type(mld_z_onelev_type), allocatable :: tprecv(:) type(mld_z_onelev_type), allocatable :: tprecv(:)
integer(psb_ipk_) :: int_err(5)
integer(psb_ipk_) :: debug_level, debug_unit integer(psb_ipk_) :: debug_level, debug_unit
character(len=20) :: name, ch_err character(len=20) :: name, ch_err
@ -105,7 +104,6 @@ subroutine mld_z_hierarchy_bld(a,desc_a,prec,info)
name = 'mld_z_hierarchy_bld' name = 'mld_z_hierarchy_bld'
info = psb_success_ info = psb_success_
int_err(1) = 0
ictxt = desc_a%get_context() ictxt = desc_a%get_context()
call psb_info(ictxt, me, np) call psb_info(ictxt, me, np)
prec%ictxt = ictxt prec%ictxt = ictxt
@ -193,9 +191,9 @@ subroutine mld_z_hierarchy_bld(a,desc_a,prec,info)
! Default to the cubic root of the size at base level. ! Default to the cubic root of the size at base level.
! !
casize = desc_a%get_global_rows() casize = desc_a%get_global_rows()
casize = int((done*casize)**(done/(done*3)),psb_ipk_) casize = int((done*casize)**(done/(done*3)),psb_lpk_)
casize = max(casize,ione) casize = max(casize,lone)
casize = casize*40_psb_ipk_ casize = casize*40_psb_lpk_
call psb_bcast(ictxt,casize) call psb_bcast(ictxt,casize)
if (casize > huge(prec%ag_data%min_coarse_size)) then if (casize > huge(prec%ag_data%min_coarse_size)) then
! !

@ -97,10 +97,9 @@ subroutine mld_z_smoothers_bld(a,desc_a,prec,info,amold,vmold,imold)
! Local Variables ! Local Variables
integer(psb_ipk_) :: ictxt, me,np integer(psb_ipk_) :: ictxt, me,np
integer(psb_ipk_) :: err,i,k, err_act, iszv, newsz, casize, nplevs, mxplevs integer(psb_ipk_) :: err,i,k, err_act, iszv, newsz, nplevs, mxplevs
real(psb_dpk_) :: mnaggratio real(psb_dpk_) :: mnaggratio
integer(psb_ipk_) :: ipv(mld_ifpsz_), val, coarse_solve_id integer(psb_ipk_) :: coarse_solve_id
integer(psb_ipk_) :: int_err(5)
integer(psb_ipk_) :: debug_level, debug_unit integer(psb_ipk_) :: debug_level, debug_unit
character(len=20) :: name, ch_err character(len=20) :: name, ch_err
@ -115,7 +114,6 @@ subroutine mld_z_smoothers_bld(a,desc_a,prec,info,amold,vmold,imold)
name = 'mld_z_smoothers_bld' name = 'mld_z_smoothers_bld'
info = psb_success_ info = psb_success_
int_err(1) = 0
ictxt = desc_a%get_context() ictxt = desc_a%get_context()
call psb_info(ictxt, me, np) call psb_info(ictxt, me, np)

@ -224,7 +224,7 @@ subroutine mld_zmlprec_aply_vect(alpha,p,x,beta,y,desc_data,trans,work,info)
! Local variables ! Local variables
integer(psb_ipk_) :: ictxt, np, me integer(psb_ipk_) :: ictxt, np, me
integer(psb_ipk_) :: debug_level, debug_unit integer(psb_ipk_) :: debug_level, debug_unit
integer(psb_ipk_) :: nlev,nc2l, level, isweep, err_act integer(psb_ipk_) :: nlev, nc2l, level, isweep, err_act
character(len=20) :: name character(len=20) :: name
character :: trans_ character :: trans_
complex(psb_dpk_) :: beta_ complex(psb_dpk_) :: beta_
@ -638,7 +638,7 @@ contains
end if end if
endif endif
! !
! Compute the residual and call recursively ! Compute the residual for next level and call recursively
! !
if (pre) then if (pre) then
call psb_geaxpby(zone,vx2l,& call psb_geaxpby(zone,vx2l,&

@ -98,7 +98,6 @@ subroutine mld_zmlprec_bld(a,desc_a,p,info,amold,vmold,imold)
integer(psb_ipk_) :: err,i,k, err_act, iszv, newsz, casize, nplevs, mxplevs integer(psb_ipk_) :: err,i,k, err_act, iszv, newsz, casize, nplevs, mxplevs
real(psb_dpk_) :: mnaggratio real(psb_dpk_) :: mnaggratio
integer(psb_ipk_) :: ipv(mld_ifpsz_), val integer(psb_ipk_) :: ipv(mld_ifpsz_), val
integer(psb_ipk_) :: int_err(5)
integer(psb_ipk_) :: debug_level, debug_unit integer(psb_ipk_) :: debug_level, debug_unit
character(len=20) :: name, ch_err character(len=20) :: name, ch_err
@ -113,7 +112,6 @@ subroutine mld_zmlprec_bld(a,desc_a,p,info,amold,vmold,imold)
name = 'mld_zmlprec_bld' name = 'mld_zmlprec_bld'
info = psb_success_ info = psb_success_
int_err(1) = 0
ictxt = desc_a%get_context() ictxt = desc_a%get_context()
call psb_info(ictxt, me, np) call psb_info(ictxt, me, np)

@ -322,7 +322,7 @@ contains
integer(psb_epk_) :: val integer(psb_epk_) :: val
integer(psb_ipk_) :: i integer(psb_ipk_) :: i
val = psb_sizeof_ip val = 3*psb_sizeof_ip + psb_sizeof_lp
if (allocated(sm%sv)) val = val + sm%sv%sizeof() if (allocated(sm%sv)) val = val + sm%sv%sizeof()
val = val + sm%nd%sizeof() val = val + sm%nd%sizeof()

@ -98,8 +98,8 @@ module mld_c_inner_mod
interface mld_map_to_tprol interface mld_map_to_tprol
subroutine mld_c_map_to_tprol(desc_a,ilaggr,nlaggr,op_prol,info) subroutine mld_c_map_to_tprol(desc_a,ilaggr,nlaggr,op_prol,info)
use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_, psb_ipk_, psb_lpk_, psb_lcspmat_type import :: psb_cspmat_type, psb_desc_type, psb_spk_, psb_ipk_, psb_lpk_, psb_lcspmat_type
use mld_c_prec_type, only : mld_c_onelev_type import :: mld_c_onelev_type
implicit none implicit none
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
integer(psb_lpk_), allocatable, intent(inout) :: ilaggr(:),nlaggr(:) integer(psb_lpk_), allocatable, intent(inout) :: ilaggr(:),nlaggr(:)

@ -235,7 +235,7 @@ contains
integer(psb_epk_) :: val integer(psb_epk_) :: val
integer(psb_ipk_) :: i integer(psb_ipk_) :: i
val = psb_sizeof_ip val = psb_sizeof_lp
if (allocated(sm%sv)) val = val + sm%sv%sizeof() if (allocated(sm%sv)) val = val + sm%sv%sizeof()
val = val + sm%nd%sizeof() val = val + sm%nd%sizeof()

@ -141,7 +141,6 @@ module mld_c_onelev_mod
type mld_cmlprec_wrk_type type mld_cmlprec_wrk_type
complex(psb_spk_), allocatable :: tx(:), ty(:), x2l(:), y2l(:) complex(psb_spk_), allocatable :: tx(:), ty(:), x2l(:), y2l(:)
type(psb_c_vect_type) :: vtx, vty, vx2l, vy2l type(psb_c_vect_type) :: vtx, vty, vx2l, vy2l
integer(psb_ipk_) :: wvsz = 0
type(psb_c_vect_type), allocatable :: wv(:) type(psb_c_vect_type), allocatable :: wv(:)
contains contains
procedure, pass(wk) :: alloc => c_wrk_alloc procedure, pass(wk) :: alloc => c_wrk_alloc
@ -420,7 +419,7 @@ contains
integer(psb_epk_) :: val integer(psb_epk_) :: val
integer(psb_ipk_) :: i integer(psb_ipk_) :: i
val = 0 val = psb_sizeof_ip+psb_sizeof_lp
val = val + lv%desc_ac%sizeof() val = val + lv%desc_ac%sizeof()
val = val + lv%ac%sizeof() val = val + lv%ac%sizeof()
val = val + lv%tprol%sizeof() val = val + lv%tprol%sizeof()

@ -722,7 +722,7 @@ contains
integer(psb_ipk_), intent(in), optional :: istart, iend integer(psb_ipk_), intent(in), optional :: istart, iend
character(len=*), intent(in), optional :: prefix, head character(len=*), intent(in), optional :: prefix, head
logical, optional, intent(in) :: smoother, solver,ac, rp, tprol, global_num logical, optional, intent(in) :: smoother, solver,ac, rp, tprol, global_num
integer(psb_ipk_) :: i, j, il1, iln, lname, lev integer(psb_ipk_) :: i, j, il1, iln, lev
integer(psb_ipk_) :: icontxt,iam, np integer(psb_ipk_) :: icontxt,iam, np
character(len=80) :: prefix_ character(len=80) :: prefix_
character(len=120) :: fname ! len should be at least 20 more than character(len=120) :: fname ! len should be at least 20 more than
@ -788,7 +788,7 @@ contains
class(psb_cprec_type), target, intent(inout) :: precout class(psb_cprec_type), target, intent(inout) :: precout
integer(psb_ipk_), intent(out) :: info integer(psb_ipk_), intent(out) :: info
! Local vars ! Local vars
integer(psb_ipk_) :: i, j, il1, ln, lname, lev integer(psb_ipk_) :: i, j, ln, lev
integer(psb_ipk_) :: icontxt,iam, np integer(psb_ipk_) :: icontxt,iam, np
info = psb_success_ info = psb_success_
@ -892,8 +892,7 @@ contains
if (psb_errstatus_fatal()) then if (psb_errstatus_fatal()) then
nc2l = prec%precv(level)%base_desc%get_local_cols() nc2l = prec%precv(level)%base_desc%get_local_cols()
info=psb_err_alloc_request_ info=psb_err_alloc_request_
call psb_errpush(info,name,i_err=(/2*nc2l,izero,izero,izero,izero/),& call psb_errpush(info,name,i_err=(/2*nc2l/), a_err='complex(psb_spk_)')
& a_err='complex(psb_spk_)')
goto 9999 goto 9999
end if end if
end do end do

@ -322,7 +322,7 @@ contains
integer(psb_epk_) :: val integer(psb_epk_) :: val
integer(psb_ipk_) :: i integer(psb_ipk_) :: i
val = psb_sizeof_ip val = 3*psb_sizeof_ip + psb_sizeof_lp
if (allocated(sm%sv)) val = val + sm%sv%sizeof() if (allocated(sm%sv)) val = val + sm%sv%sizeof()
val = val + sm%nd%sizeof() val = val + sm%nd%sizeof()

@ -98,8 +98,8 @@ module mld_d_inner_mod
interface mld_map_to_tprol interface mld_map_to_tprol
subroutine mld_d_map_to_tprol(desc_a,ilaggr,nlaggr,op_prol,info) subroutine mld_d_map_to_tprol(desc_a,ilaggr,nlaggr,op_prol,info)
use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_, psb_ipk_, psb_lpk_, psb_ldspmat_type import :: psb_dspmat_type, psb_desc_type, psb_dpk_, psb_ipk_, psb_lpk_, psb_ldspmat_type
use mld_d_prec_type, only : mld_d_onelev_type import :: mld_d_onelev_type
implicit none implicit none
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
integer(psb_lpk_), allocatable, intent(inout) :: ilaggr(:),nlaggr(:) integer(psb_lpk_), allocatable, intent(inout) :: ilaggr(:),nlaggr(:)

@ -235,7 +235,7 @@ contains
integer(psb_epk_) :: val integer(psb_epk_) :: val
integer(psb_ipk_) :: i integer(psb_ipk_) :: i
val = psb_sizeof_ip val = psb_sizeof_lp
if (allocated(sm%sv)) val = val + sm%sv%sizeof() if (allocated(sm%sv)) val = val + sm%sv%sizeof()
val = val + sm%nd%sizeof() val = val + sm%nd%sizeof()

@ -141,7 +141,6 @@ module mld_d_onelev_mod
type mld_dmlprec_wrk_type type mld_dmlprec_wrk_type
real(psb_dpk_), allocatable :: tx(:), ty(:), x2l(:), y2l(:) real(psb_dpk_), allocatable :: tx(:), ty(:), x2l(:), y2l(:)
type(psb_d_vect_type) :: vtx, vty, vx2l, vy2l type(psb_d_vect_type) :: vtx, vty, vx2l, vy2l
integer(psb_ipk_) :: wvsz = 0
type(psb_d_vect_type), allocatable :: wv(:) type(psb_d_vect_type), allocatable :: wv(:)
contains contains
procedure, pass(wk) :: alloc => d_wrk_alloc procedure, pass(wk) :: alloc => d_wrk_alloc
@ -420,7 +419,7 @@ contains
integer(psb_epk_) :: val integer(psb_epk_) :: val
integer(psb_ipk_) :: i integer(psb_ipk_) :: i
val = 0 val = psb_sizeof_ip+psb_sizeof_lp
val = val + lv%desc_ac%sizeof() val = val + lv%desc_ac%sizeof()
val = val + lv%ac%sizeof() val = val + lv%ac%sizeof()
val = val + lv%tprol%sizeof() val = val + lv%tprol%sizeof()

@ -722,7 +722,7 @@ contains
integer(psb_ipk_), intent(in), optional :: istart, iend integer(psb_ipk_), intent(in), optional :: istart, iend
character(len=*), intent(in), optional :: prefix, head character(len=*), intent(in), optional :: prefix, head
logical, optional, intent(in) :: smoother, solver,ac, rp, tprol, global_num logical, optional, intent(in) :: smoother, solver,ac, rp, tprol, global_num
integer(psb_ipk_) :: i, j, il1, iln, lname, lev integer(psb_ipk_) :: i, j, il1, iln, lev
integer(psb_ipk_) :: icontxt,iam, np integer(psb_ipk_) :: icontxt,iam, np
character(len=80) :: prefix_ character(len=80) :: prefix_
character(len=120) :: fname ! len should be at least 20 more than character(len=120) :: fname ! len should be at least 20 more than
@ -788,7 +788,7 @@ contains
class(psb_dprec_type), target, intent(inout) :: precout class(psb_dprec_type), target, intent(inout) :: precout
integer(psb_ipk_), intent(out) :: info integer(psb_ipk_), intent(out) :: info
! Local vars ! Local vars
integer(psb_ipk_) :: i, j, il1, ln, lname, lev integer(psb_ipk_) :: i, j, ln, lev
integer(psb_ipk_) :: icontxt,iam, np integer(psb_ipk_) :: icontxt,iam, np
info = psb_success_ info = psb_success_
@ -892,8 +892,7 @@ contains
if (psb_errstatus_fatal()) then if (psb_errstatus_fatal()) then
nc2l = prec%precv(level)%base_desc%get_local_cols() nc2l = prec%precv(level)%base_desc%get_local_cols()
info=psb_err_alloc_request_ info=psb_err_alloc_request_
call psb_errpush(info,name,i_err=(/2*nc2l,izero,izero,izero,izero/),& call psb_errpush(info,name,i_err=(/2*nc2l/), a_err='real(psb_dpk_)')
& a_err='real(psb_dpk_)')
goto 9999 goto 9999
end if end if
end do end do

@ -322,7 +322,7 @@ contains
integer(psb_epk_) :: val integer(psb_epk_) :: val
integer(psb_ipk_) :: i integer(psb_ipk_) :: i
val = psb_sizeof_ip val = 3*psb_sizeof_ip + psb_sizeof_lp
if (allocated(sm%sv)) val = val + sm%sv%sizeof() if (allocated(sm%sv)) val = val + sm%sv%sizeof()
val = val + sm%nd%sizeof() val = val + sm%nd%sizeof()

@ -98,8 +98,8 @@ module mld_s_inner_mod
interface mld_map_to_tprol interface mld_map_to_tprol
subroutine mld_s_map_to_tprol(desc_a,ilaggr,nlaggr,op_prol,info) subroutine mld_s_map_to_tprol(desc_a,ilaggr,nlaggr,op_prol,info)
use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_, psb_ipk_, psb_lpk_, psb_lsspmat_type import :: psb_sspmat_type, psb_desc_type, psb_spk_, psb_ipk_, psb_lpk_, psb_lsspmat_type
use mld_s_prec_type, only : mld_s_onelev_type import :: mld_s_onelev_type
implicit none implicit none
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
integer(psb_lpk_), allocatable, intent(inout) :: ilaggr(:),nlaggr(:) integer(psb_lpk_), allocatable, intent(inout) :: ilaggr(:),nlaggr(:)

@ -235,7 +235,7 @@ contains
integer(psb_epk_) :: val integer(psb_epk_) :: val
integer(psb_ipk_) :: i integer(psb_ipk_) :: i
val = psb_sizeof_ip val = psb_sizeof_lp
if (allocated(sm%sv)) val = val + sm%sv%sizeof() if (allocated(sm%sv)) val = val + sm%sv%sizeof()
val = val + sm%nd%sizeof() val = val + sm%nd%sizeof()

@ -141,7 +141,6 @@ module mld_s_onelev_mod
type mld_smlprec_wrk_type type mld_smlprec_wrk_type
real(psb_spk_), allocatable :: tx(:), ty(:), x2l(:), y2l(:) real(psb_spk_), allocatable :: tx(:), ty(:), x2l(:), y2l(:)
type(psb_s_vect_type) :: vtx, vty, vx2l, vy2l type(psb_s_vect_type) :: vtx, vty, vx2l, vy2l
integer(psb_ipk_) :: wvsz = 0
type(psb_s_vect_type), allocatable :: wv(:) type(psb_s_vect_type), allocatable :: wv(:)
contains contains
procedure, pass(wk) :: alloc => s_wrk_alloc procedure, pass(wk) :: alloc => s_wrk_alloc
@ -420,7 +419,7 @@ contains
integer(psb_epk_) :: val integer(psb_epk_) :: val
integer(psb_ipk_) :: i integer(psb_ipk_) :: i
val = 0 val = psb_sizeof_ip+psb_sizeof_lp
val = val + lv%desc_ac%sizeof() val = val + lv%desc_ac%sizeof()
val = val + lv%ac%sizeof() val = val + lv%ac%sizeof()
val = val + lv%tprol%sizeof() val = val + lv%tprol%sizeof()

@ -722,7 +722,7 @@ contains
integer(psb_ipk_), intent(in), optional :: istart, iend integer(psb_ipk_), intent(in), optional :: istart, iend
character(len=*), intent(in), optional :: prefix, head character(len=*), intent(in), optional :: prefix, head
logical, optional, intent(in) :: smoother, solver,ac, rp, tprol, global_num logical, optional, intent(in) :: smoother, solver,ac, rp, tprol, global_num
integer(psb_ipk_) :: i, j, il1, iln, lname, lev integer(psb_ipk_) :: i, j, il1, iln, lev
integer(psb_ipk_) :: icontxt,iam, np integer(psb_ipk_) :: icontxt,iam, np
character(len=80) :: prefix_ character(len=80) :: prefix_
character(len=120) :: fname ! len should be at least 20 more than character(len=120) :: fname ! len should be at least 20 more than
@ -788,7 +788,7 @@ contains
class(psb_sprec_type), target, intent(inout) :: precout class(psb_sprec_type), target, intent(inout) :: precout
integer(psb_ipk_), intent(out) :: info integer(psb_ipk_), intent(out) :: info
! Local vars ! Local vars
integer(psb_ipk_) :: i, j, il1, ln, lname, lev integer(psb_ipk_) :: i, j, ln, lev
integer(psb_ipk_) :: icontxt,iam, np integer(psb_ipk_) :: icontxt,iam, np
info = psb_success_ info = psb_success_
@ -892,8 +892,7 @@ contains
if (psb_errstatus_fatal()) then if (psb_errstatus_fatal()) then
nc2l = prec%precv(level)%base_desc%get_local_cols() nc2l = prec%precv(level)%base_desc%get_local_cols()
info=psb_err_alloc_request_ info=psb_err_alloc_request_
call psb_errpush(info,name,i_err=(/2*nc2l,izero,izero,izero,izero/),& call psb_errpush(info,name,i_err=(/2*nc2l/), a_err='real(psb_spk_)')
& a_err='real(psb_spk_)')
goto 9999 goto 9999
end if end if
end do end do

@ -322,7 +322,7 @@ contains
integer(psb_epk_) :: val integer(psb_epk_) :: val
integer(psb_ipk_) :: i integer(psb_ipk_) :: i
val = psb_sizeof_ip val = 3*psb_sizeof_ip + psb_sizeof_lp
if (allocated(sm%sv)) val = val + sm%sv%sizeof() if (allocated(sm%sv)) val = val + sm%sv%sizeof()
val = val + sm%nd%sizeof() val = val + sm%nd%sizeof()

@ -98,8 +98,8 @@ module mld_z_inner_mod
interface mld_map_to_tprol interface mld_map_to_tprol
subroutine mld_z_map_to_tprol(desc_a,ilaggr,nlaggr,op_prol,info) subroutine mld_z_map_to_tprol(desc_a,ilaggr,nlaggr,op_prol,info)
use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_, psb_ipk_, psb_lpk_, psb_lzspmat_type import :: psb_zspmat_type, psb_desc_type, psb_dpk_, psb_ipk_, psb_lpk_, psb_lzspmat_type
use mld_z_prec_type, only : mld_z_onelev_type import :: mld_z_onelev_type
implicit none implicit none
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
integer(psb_lpk_), allocatable, intent(inout) :: ilaggr(:),nlaggr(:) integer(psb_lpk_), allocatable, intent(inout) :: ilaggr(:),nlaggr(:)

@ -235,7 +235,7 @@ contains
integer(psb_epk_) :: val integer(psb_epk_) :: val
integer(psb_ipk_) :: i integer(psb_ipk_) :: i
val = psb_sizeof_ip val = psb_sizeof_lp
if (allocated(sm%sv)) val = val + sm%sv%sizeof() if (allocated(sm%sv)) val = val + sm%sv%sizeof()
val = val + sm%nd%sizeof() val = val + sm%nd%sizeof()

@ -141,7 +141,6 @@ module mld_z_onelev_mod
type mld_zmlprec_wrk_type type mld_zmlprec_wrk_type
complex(psb_dpk_), allocatable :: tx(:), ty(:), x2l(:), y2l(:) complex(psb_dpk_), allocatable :: tx(:), ty(:), x2l(:), y2l(:)
type(psb_z_vect_type) :: vtx, vty, vx2l, vy2l type(psb_z_vect_type) :: vtx, vty, vx2l, vy2l
integer(psb_ipk_) :: wvsz = 0
type(psb_z_vect_type), allocatable :: wv(:) type(psb_z_vect_type), allocatable :: wv(:)
contains contains
procedure, pass(wk) :: alloc => z_wrk_alloc procedure, pass(wk) :: alloc => z_wrk_alloc
@ -420,7 +419,7 @@ contains
integer(psb_epk_) :: val integer(psb_epk_) :: val
integer(psb_ipk_) :: i integer(psb_ipk_) :: i
val = 0 val = psb_sizeof_ip+psb_sizeof_lp
val = val + lv%desc_ac%sizeof() val = val + lv%desc_ac%sizeof()
val = val + lv%ac%sizeof() val = val + lv%ac%sizeof()
val = val + lv%tprol%sizeof() val = val + lv%tprol%sizeof()

@ -722,7 +722,7 @@ contains
integer(psb_ipk_), intent(in), optional :: istart, iend integer(psb_ipk_), intent(in), optional :: istart, iend
character(len=*), intent(in), optional :: prefix, head character(len=*), intent(in), optional :: prefix, head
logical, optional, intent(in) :: smoother, solver,ac, rp, tprol, global_num logical, optional, intent(in) :: smoother, solver,ac, rp, tprol, global_num
integer(psb_ipk_) :: i, j, il1, iln, lname, lev integer(psb_ipk_) :: i, j, il1, iln, lev
integer(psb_ipk_) :: icontxt,iam, np integer(psb_ipk_) :: icontxt,iam, np
character(len=80) :: prefix_ character(len=80) :: prefix_
character(len=120) :: fname ! len should be at least 20 more than character(len=120) :: fname ! len should be at least 20 more than
@ -788,7 +788,7 @@ contains
class(psb_zprec_type), target, intent(inout) :: precout class(psb_zprec_type), target, intent(inout) :: precout
integer(psb_ipk_), intent(out) :: info integer(psb_ipk_), intent(out) :: info
! Local vars ! Local vars
integer(psb_ipk_) :: i, j, il1, ln, lname, lev integer(psb_ipk_) :: i, j, ln, lev
integer(psb_ipk_) :: icontxt,iam, np integer(psb_ipk_) :: icontxt,iam, np
info = psb_success_ info = psb_success_
@ -892,8 +892,7 @@ contains
if (psb_errstatus_fatal()) then if (psb_errstatus_fatal()) then
nc2l = prec%precv(level)%base_desc%get_local_cols() nc2l = prec%precv(level)%base_desc%get_local_cols()
info=psb_err_alloc_request_ info=psb_err_alloc_request_
call psb_errpush(info,name,i_err=(/2*nc2l,izero,izero,izero,izero/),& call psb_errpush(info,name,i_err=(/2*nc2l/), a_err='complex(psb_dpk_)')
& a_err='complex(psb_dpk_)')
goto 9999 goto 9999
end if end if
end do end do

Loading…
Cancel
Save