mlprec/Makefile
 mlprec/mld_basep_bld_mod.f90
 mlprec/mld_inner_mod.f90
 mlprec/mld_prec_mod.f90
 mlprec/mld_prec_type.f90

Review module inclusion pattern to handle compilation under XLF 10.
stopcriterion
Salvatore Filippone 17 years ago
parent 6a9a15fa34
commit 85af1c6f1b

@ -6,7 +6,7 @@ HERE=.
FINCLUDES=$(FMFLAG). $(FMFLAG)$(LIBDIR) $(FMFLAG)$(PSBLIBDIR) FINCLUDES=$(FMFLAG). $(FMFLAG)$(LIBDIR) $(FMFLAG)$(PSBLIBDIR)
MODOBJS=mld_prec_type.o mld_prec_mod.o mld_inner_mod.o mld_basep_bld_mod.o MODOBJS=mld_prec_type.o mld_prec_mod.o mld_inner_mod.o
MPFOBJS=mld_saggrmat_raw_asb.o mld_saggrmat_smth_asb.o \ MPFOBJS=mld_saggrmat_raw_asb.o mld_saggrmat_smth_asb.o \
mld_daggrmat_raw_asb.o mld_daggrmat_smth_asb.o \ mld_daggrmat_raw_asb.o mld_daggrmat_smth_asb.o \
mld_caggrmat_raw_asb.o mld_caggrmat_smth_asb.o \ mld_caggrmat_raw_asb.o mld_caggrmat_smth_asb.o \
@ -56,7 +56,7 @@ COBJS= mld_sslu_interface.o mld_sumf_interface.o \
OBJS=$(F90OBJS) $(COBJS) $(MPFOBJS) $(MPCOBJS) $(MODOBJS) OBJS=$(F90OBJS) $(COBJS) $(MPFOBJS) $(MPCOBJS) $(MODOBJS)
LIBMOD=mld_prec_mod$(.mod) LIBMOD=mld_prec_mod$(.mod)
LOCAL_MODS=$(LIBMOD) mld_prec_type$(.mod) mld_inner_mod$(.mod) mld_basep_bld_mod$(.mod) LOCAL_MODS=$(LIBMOD) mld_prec_type$(.mod) mld_inner_mod$(.mod)
LIBNAME=libmld_prec.a LIBNAME=libmld_prec.a
lib: mpobjs $(OBJS) lib: mpobjs $(OBJS)
@ -67,7 +67,6 @@ lib: mpobjs $(OBJS)
$(F90OBJS) $(MPFOBJS): $(MODOBJS:.o=$(.mod)) $(F90OBJS) $(MPFOBJS): $(MODOBJS:.o=$(.mod))
mld_prec_mod.o mld_innner_mod.o: mld_prec_type.o mld_prec_mod.o mld_innner_mod.o: mld_prec_type.o
mld_inner_mod.o: mld_basep_bld_mod.o
$(MODOBJS): $(PSBLIBDIR)/psb_base_mod$(.mod) $(MODOBJS): $(PSBLIBDIR)/psb_base_mod$(.mod)

@ -42,10 +42,11 @@
! !
! !
module mld_basep_bld_mod module mld_basep_bld_mod
interface mld_baseprc_bld interface mld_baseprc_bld
subroutine mld_sbaseprc_bld(a,desc_a,p,info,upd) subroutine mld_sbaseprc_bld(a,desc_a,p,info,upd)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sbaseprc_type
type(psb_sspmat_type), target :: a type(psb_sspmat_type), target :: a
type(psb_desc_type), intent(in), target :: desc_a type(psb_desc_type), intent(in), target :: desc_a
type(mld_sbaseprc_type),intent(inout) :: p type(mld_sbaseprc_type),intent(inout) :: p
@ -53,8 +54,8 @@ module mld_basep_bld_mod
character, intent(in), optional :: upd character, intent(in), optional :: upd
end subroutine mld_sbaseprc_bld end subroutine mld_sbaseprc_bld
subroutine mld_dbaseprc_bld(a,desc_a,p,info,upd) subroutine mld_dbaseprc_bld(a,desc_a,p,info,upd)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dbaseprc_type
type(psb_dspmat_type), target :: a type(psb_dspmat_type), target :: a
type(psb_desc_type), intent(in), target :: desc_a type(psb_desc_type), intent(in), target :: desc_a
type(mld_dbaseprc_type),intent(inout) :: p type(mld_dbaseprc_type),intent(inout) :: p
@ -62,8 +63,8 @@ module mld_basep_bld_mod
character, intent(in), optional :: upd character, intent(in), optional :: upd
end subroutine mld_dbaseprc_bld end subroutine mld_dbaseprc_bld
subroutine mld_cbaseprc_bld(a,desc_a,p,info,upd) subroutine mld_cbaseprc_bld(a,desc_a,p,info,upd)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cbaseprc_type
type(psb_cspmat_type), target :: a type(psb_cspmat_type), target :: a
type(psb_desc_type), intent(in), target :: desc_a type(psb_desc_type), intent(in), target :: desc_a
type(mld_cbaseprc_type),intent(inout) :: p type(mld_cbaseprc_type),intent(inout) :: p
@ -71,8 +72,8 @@ module mld_basep_bld_mod
character, intent(in), optional :: upd character, intent(in), optional :: upd
end subroutine mld_cbaseprc_bld end subroutine mld_cbaseprc_bld
subroutine mld_zbaseprc_bld(a,desc_a,p,info,upd) subroutine mld_zbaseprc_bld(a,desc_a,p,info,upd)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zbaseprc_type
type(psb_zspmat_type), target :: a type(psb_zspmat_type), target :: a
type(psb_desc_type), intent(in), target :: desc_a type(psb_desc_type), intent(in), target :: desc_a
type(mld_zbaseprc_type),intent(inout) :: p type(mld_zbaseprc_type),intent(inout) :: p
@ -83,8 +84,8 @@ module mld_basep_bld_mod
interface mld_as_bld interface mld_as_bld
subroutine mld_sas_bld(a,desc_a,p,upd,info) subroutine mld_sas_bld(a,desc_a,p,upd,info)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sbaseprc_type
type(psb_sspmat_type), target :: a type(psb_sspmat_type), target :: a
type(psb_desc_type), intent(in), target :: desc_a type(psb_desc_type), intent(in), target :: desc_a
type(mld_sbaseprc_type),intent(inout) :: p type(mld_sbaseprc_type),intent(inout) :: p
@ -92,8 +93,8 @@ module mld_basep_bld_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_sas_bld end subroutine mld_sas_bld
subroutine mld_das_bld(a,desc_a,p,upd,info) subroutine mld_das_bld(a,desc_a,p,upd,info)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dbaseprc_type
type(psb_dspmat_type), target :: a type(psb_dspmat_type), target :: a
type(psb_desc_type), intent(in), target :: desc_a type(psb_desc_type), intent(in), target :: desc_a
type(mld_dbaseprc_type),intent(inout) :: p type(mld_dbaseprc_type),intent(inout) :: p
@ -101,8 +102,8 @@ module mld_basep_bld_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_das_bld end subroutine mld_das_bld
subroutine mld_cas_bld(a,desc_a,p,upd,info) subroutine mld_cas_bld(a,desc_a,p,upd,info)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cbaseprc_type
type(psb_cspmat_type), target :: a type(psb_cspmat_type), target :: a
type(psb_desc_type), intent(in), target :: desc_a type(psb_desc_type), intent(in), target :: desc_a
type(mld_cbaseprc_type),intent(inout) :: p type(mld_cbaseprc_type),intent(inout) :: p
@ -110,8 +111,8 @@ module mld_basep_bld_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_cas_bld end subroutine mld_cas_bld
subroutine mld_zas_bld(a,desc_a,p,upd,info) subroutine mld_zas_bld(a,desc_a,p,upd,info)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zbaseprc_type
type(psb_zspmat_type), target :: a type(psb_zspmat_type), target :: a
type(psb_desc_type), intent(in), target :: desc_a type(psb_desc_type), intent(in), target :: desc_a
type(mld_zbaseprc_type),intent(inout) :: p type(mld_zbaseprc_type),intent(inout) :: p
@ -122,32 +123,32 @@ module mld_basep_bld_mod
interface mld_mlprec_bld interface mld_mlprec_bld
subroutine mld_smlprec_bld(a,desc_a,p,info) subroutine mld_smlprec_bld(a,desc_a,p,info)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sbaseprc_type
type(psb_sspmat_type), intent(inout), target :: a type(psb_sspmat_type), intent(inout), target :: a
type(psb_desc_type), intent(in), target :: desc_a type(psb_desc_type), intent(in), target :: desc_a
type(mld_sbaseprc_type), intent(inout), target :: p type(mld_sbaseprc_type), intent(inout), target :: p
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_smlprec_bld end subroutine mld_smlprec_bld
subroutine mld_dmlprec_bld(a,desc_a,p,info) subroutine mld_dmlprec_bld(a,desc_a,p,info)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dbaseprc_type
type(psb_dspmat_type), intent(inout), target :: a type(psb_dspmat_type), intent(inout), target :: a
type(psb_desc_type), intent(in), target :: desc_a type(psb_desc_type), intent(in), target :: desc_a
type(mld_dbaseprc_type), intent(inout), target :: p type(mld_dbaseprc_type), intent(inout), target :: p
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_dmlprec_bld end subroutine mld_dmlprec_bld
subroutine mld_cmlprec_bld(a,desc_a,p,info) subroutine mld_cmlprec_bld(a,desc_a,p,info)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cbaseprc_type
type(psb_cspmat_type), intent(inout), target :: a type(psb_cspmat_type), intent(inout), target :: a
type(psb_desc_type), intent(in), target :: desc_a type(psb_desc_type), intent(in), target :: desc_a
type(mld_cbaseprc_type), intent(inout),target :: p type(mld_cbaseprc_type), intent(inout),target :: p
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_cmlprec_bld end subroutine mld_cmlprec_bld
subroutine mld_zmlprec_bld(a,desc_a,p,info) subroutine mld_zmlprec_bld(a,desc_a,p,info)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zbaseprc_type
type(psb_zspmat_type), intent(inout), target :: a type(psb_zspmat_type), intent(inout), target :: a
type(psb_desc_type), intent(in), target :: desc_a type(psb_desc_type), intent(in), target :: desc_a
type(mld_zbaseprc_type), intent(inout),target :: p type(mld_zbaseprc_type), intent(inout),target :: p
@ -157,32 +158,32 @@ module mld_basep_bld_mod
interface mld_diag_bld interface mld_diag_bld
subroutine mld_sdiag_bld(a,desc_data,p,info) subroutine mld_sdiag_bld(a,desc_data,p,info)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sbaseprc_type
integer, intent(out) :: info integer, intent(out) :: info
type(psb_sspmat_type), intent(in), target :: a type(psb_sspmat_type), intent(in), target :: a
type(psb_desc_type),intent(in) :: desc_data type(psb_desc_type),intent(in) :: desc_data
type(mld_sbaseprc_type), intent(inout) :: p type(mld_sbaseprc_type), intent(inout) :: p
end subroutine mld_sdiag_bld end subroutine mld_sdiag_bld
subroutine mld_ddiag_bld(a,desc_data,p,info) subroutine mld_ddiag_bld(a,desc_data,p,info)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dbaseprc_type
integer, intent(out) :: info integer, intent(out) :: info
type(psb_dspmat_type), intent(in), target :: a type(psb_dspmat_type), intent(in), target :: a
type(psb_desc_type),intent(in) :: desc_data type(psb_desc_type),intent(in) :: desc_data
type(mld_dbaseprc_type), intent(inout) :: p type(mld_dbaseprc_type), intent(inout) :: p
end subroutine mld_ddiag_bld end subroutine mld_ddiag_bld
subroutine mld_cdiag_bld(a,desc_data,p,info) subroutine mld_cdiag_bld(a,desc_data,p,info)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cbaseprc_type
integer, intent(out) :: info integer, intent(out) :: info
type(psb_cspmat_type), intent(in), target :: a type(psb_cspmat_type), intent(in), target :: a
type(psb_desc_type),intent(in) :: desc_data type(psb_desc_type),intent(in) :: desc_data
type(mld_cbaseprc_type), intent(inout) :: p type(mld_cbaseprc_type), intent(inout) :: p
end subroutine mld_cdiag_bld end subroutine mld_cdiag_bld
subroutine mld_zdiag_bld(a,desc_data,p,info) subroutine mld_zdiag_bld(a,desc_data,p,info)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zbaseprc_type
integer, intent(out) :: info integer, intent(out) :: info
type(psb_zspmat_type), intent(in), target :: a type(psb_zspmat_type), intent(in), target :: a
type(psb_desc_type),intent(in) :: desc_data type(psb_desc_type),intent(in) :: desc_data
@ -192,8 +193,8 @@ module mld_basep_bld_mod
interface mld_fact_bld interface mld_fact_bld
subroutine mld_sfact_bld(a,p,upd,info,blck) subroutine mld_sfact_bld(a,p,upd,info,blck)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sbaseprc_type
type(psb_sspmat_type), intent(in), target :: a type(psb_sspmat_type), intent(in), target :: a
type(mld_sbaseprc_type), intent(inout) :: p type(mld_sbaseprc_type), intent(inout) :: p
integer, intent(out) :: info integer, intent(out) :: info
@ -201,8 +202,8 @@ module mld_basep_bld_mod
type(psb_sspmat_type), intent(in), target, optional :: blck type(psb_sspmat_type), intent(in), target, optional :: blck
end subroutine mld_sfact_bld end subroutine mld_sfact_bld
subroutine mld_dfact_bld(a,p,upd,info,blck) subroutine mld_dfact_bld(a,p,upd,info,blck)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dbaseprc_type
type(psb_dspmat_type), intent(in), target :: a type(psb_dspmat_type), intent(in), target :: a
type(mld_dbaseprc_type), intent(inout) :: p type(mld_dbaseprc_type), intent(inout) :: p
integer, intent(out) :: info integer, intent(out) :: info
@ -210,8 +211,8 @@ module mld_basep_bld_mod
type(psb_dspmat_type), intent(in), target, optional :: blck type(psb_dspmat_type), intent(in), target, optional :: blck
end subroutine mld_dfact_bld end subroutine mld_dfact_bld
subroutine mld_cfact_bld(a,p,upd,info,blck) subroutine mld_cfact_bld(a,p,upd,info,blck)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cbaseprc_type
type(psb_cspmat_type), intent(in), target :: a type(psb_cspmat_type), intent(in), target :: a
type(mld_cbaseprc_type), intent(inout) :: p type(mld_cbaseprc_type), intent(inout) :: p
integer, intent(out) :: info integer, intent(out) :: info
@ -219,8 +220,8 @@ module mld_basep_bld_mod
type(psb_cspmat_type), intent(in), target, optional :: blck type(psb_cspmat_type), intent(in), target, optional :: blck
end subroutine mld_cfact_bld end subroutine mld_cfact_bld
subroutine mld_zfact_bld(a,p,upd,info,blck) subroutine mld_zfact_bld(a,p,upd,info,blck)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zbaseprc_type
type(psb_zspmat_type), intent(in), target :: a type(psb_zspmat_type), intent(in), target :: a
type(mld_zbaseprc_type), intent(inout) :: p type(mld_zbaseprc_type), intent(inout) :: p
integer, intent(out) :: info integer, intent(out) :: info
@ -231,8 +232,8 @@ module mld_basep_bld_mod
interface mld_ilu_bld interface mld_ilu_bld
subroutine mld_silu_bld(a,p,upd,info,blck) subroutine mld_silu_bld(a,p,upd,info,blck)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sbaseprc_type
integer, intent(out) :: info integer, intent(out) :: info
type(psb_sspmat_type), intent(in), target :: a type(psb_sspmat_type), intent(in), target :: a
type(mld_sbaseprc_type), intent(inout) :: p type(mld_sbaseprc_type), intent(inout) :: p
@ -240,8 +241,8 @@ module mld_basep_bld_mod
type(psb_sspmat_type), intent(in), optional :: blck type(psb_sspmat_type), intent(in), optional :: blck
end subroutine mld_silu_bld end subroutine mld_silu_bld
subroutine mld_dilu_bld(a,p,upd,info,blck) subroutine mld_dilu_bld(a,p,upd,info,blck)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dbaseprc_type
integer, intent(out) :: info integer, intent(out) :: info
type(psb_dspmat_type), intent(in), target :: a type(psb_dspmat_type), intent(in), target :: a
type(mld_dbaseprc_type), intent(inout) :: p type(mld_dbaseprc_type), intent(inout) :: p
@ -249,8 +250,8 @@ module mld_basep_bld_mod
type(psb_dspmat_type), intent(in), optional :: blck type(psb_dspmat_type), intent(in), optional :: blck
end subroutine mld_dilu_bld end subroutine mld_dilu_bld
subroutine mld_cilu_bld(a,p,upd,info,blck) subroutine mld_cilu_bld(a,p,upd,info,blck)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cbaseprc_type
integer, intent(out) :: info integer, intent(out) :: info
type(psb_cspmat_type), intent(in), target :: a type(psb_cspmat_type), intent(in), target :: a
type(mld_cbaseprc_type), intent(inout) :: p type(mld_cbaseprc_type), intent(inout) :: p
@ -258,8 +259,8 @@ module mld_basep_bld_mod
type(psb_cspmat_type), intent(in), optional :: blck type(psb_cspmat_type), intent(in), optional :: blck
end subroutine mld_cilu_bld end subroutine mld_cilu_bld
subroutine mld_zilu_bld(a,p,upd,info,blck) subroutine mld_zilu_bld(a,p,upd,info,blck)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zbaseprc_type
integer, intent(out) :: info integer, intent(out) :: info
type(psb_zspmat_type), intent(in), target :: a type(psb_zspmat_type), intent(in), target :: a
type(mld_zbaseprc_type), intent(inout) :: p type(mld_zbaseprc_type), intent(inout) :: p
@ -270,32 +271,32 @@ module mld_basep_bld_mod
interface mld_sludist_bld interface mld_sludist_bld
subroutine mld_ssludist_bld(a,desc_a,p,info) subroutine mld_ssludist_bld(a,desc_a,p,info)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sbaseprc_type
type(psb_sspmat_type), intent(inout) :: a type(psb_sspmat_type), intent(inout) :: a
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
type(mld_sbaseprc_type), intent(inout) :: p type(mld_sbaseprc_type), intent(inout) :: p
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_ssludist_bld end subroutine mld_ssludist_bld
subroutine mld_dsludist_bld(a,desc_a,p,info) subroutine mld_dsludist_bld(a,desc_a,p,info)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dbaseprc_type
type(psb_dspmat_type), intent(inout) :: a type(psb_dspmat_type), intent(inout) :: a
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
type(mld_dbaseprc_type), intent(inout) :: p type(mld_dbaseprc_type), intent(inout) :: p
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_dsludist_bld end subroutine mld_dsludist_bld
subroutine mld_csludist_bld(a,desc_a,p,info) subroutine mld_csludist_bld(a,desc_a,p,info)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cbaseprc_type
type(psb_cspmat_type), intent(inout) :: a type(psb_cspmat_type), intent(inout) :: a
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
type(mld_cbaseprc_type), intent(inout) :: p type(mld_cbaseprc_type), intent(inout) :: p
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_csludist_bld end subroutine mld_csludist_bld
subroutine mld_zsludist_bld(a,desc_a,p,info) subroutine mld_zsludist_bld(a,desc_a,p,info)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zbaseprc_type
type(psb_zspmat_type), intent(inout) :: a type(psb_zspmat_type), intent(inout) :: a
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
type(mld_zbaseprc_type), intent(inout) :: p type(mld_zbaseprc_type), intent(inout) :: p
@ -305,16 +306,16 @@ module mld_basep_bld_mod
interface mld_slu_bld interface mld_slu_bld
subroutine mld_sslu_bld(a,desc_a,p,info) subroutine mld_sslu_bld(a,desc_a,p,info)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sbaseprc_type
type(psb_sspmat_type), intent(inout) :: a type(psb_sspmat_type), intent(inout) :: a
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
type(mld_sbaseprc_type), intent(inout) :: p type(mld_sbaseprc_type), intent(inout) :: p
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_sslu_bld end subroutine mld_sslu_bld
subroutine mld_dslu_bld(a,desc_a,p,info) subroutine mld_dslu_bld(a,desc_a,p,info)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dbaseprc_type
type(psb_dspmat_type), intent(inout) :: a type(psb_dspmat_type), intent(inout) :: a
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
type(mld_dbaseprc_type), intent(inout) :: p type(mld_dbaseprc_type), intent(inout) :: p
@ -329,8 +330,8 @@ module mld_basep_bld_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_cslu_bld end subroutine mld_cslu_bld
subroutine mld_zslu_bld(a,desc_a,p,info) subroutine mld_zslu_bld(a,desc_a,p,info)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zbaseprc_type
type(psb_zspmat_type), intent(inout) :: a type(psb_zspmat_type), intent(inout) :: a
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
type(mld_zbaseprc_type), intent(inout) :: p type(mld_zbaseprc_type), intent(inout) :: p
@ -348,24 +349,16 @@ module mld_basep_bld_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_sumf_bld end subroutine mld_sumf_bld
subroutine mld_dumf_bld(a,desc_a,p,info) subroutine mld_dumf_bld(a,desc_a,p,info)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dbaseprc_type
type(psb_dspmat_type), intent(inout) :: a type(psb_dspmat_type), intent(inout) :: a
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
type(mld_dbaseprc_type), intent(inout) :: p type(mld_dbaseprc_type), intent(inout) :: p
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_dumf_bld end subroutine mld_dumf_bld
subroutine mld_zumf_bld(a,desc_a,p,info)
use psb_base_mod
use mld_prec_type
type(psb_zspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
type(mld_zbaseprc_type), intent(inout) :: p
integer, intent(out) :: info
end subroutine mld_zumf_bld
subroutine mld_cumf_bld(a,desc_a,p,info) subroutine mld_cumf_bld(a,desc_a,p,info)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cbaseprc_type
type(psb_cspmat_type), intent(in) :: a type(psb_cspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
type(mld_cbaseprc_type), intent(inout) :: p type(mld_cbaseprc_type), intent(inout) :: p
@ -375,7 +368,7 @@ module mld_basep_bld_mod
interface mld_ilu0_fact interface mld_ilu0_fact
subroutine mld_silu0_fact(ialg,a,l,u,d,info,blck) subroutine mld_silu0_fact(ialg,a,l,u,d,info,blck)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
integer, intent(in) :: ialg integer, intent(in) :: ialg
integer, intent(out) :: info integer, intent(out) :: info
type(psb_sspmat_type),intent(in) :: a type(psb_sspmat_type),intent(in) :: a
@ -393,7 +386,7 @@ module mld_basep_bld_mod
real(psb_dpk_), intent(inout) :: d(:) real(psb_dpk_), intent(inout) :: d(:)
end subroutine mld_dilu0_fact end subroutine mld_dilu0_fact
subroutine mld_cilu0_fact(ialg,a,l,u,d,info,blck) subroutine mld_cilu0_fact(ialg,a,l,u,d,info,blck)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
integer, intent(in) :: ialg integer, intent(in) :: ialg
integer, intent(out) :: info integer, intent(out) :: info
type(psb_cspmat_type),intent(in) :: a type(psb_cspmat_type),intent(in) :: a
@ -414,7 +407,7 @@ module mld_basep_bld_mod
interface mld_iluk_fact interface mld_iluk_fact
subroutine mld_siluk_fact(fill_in,ialg,a,l,u,d,info,blck) subroutine mld_siluk_fact(fill_in,ialg,a,l,u,d,info,blck)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
integer, intent(in) :: fill_in,ialg integer, intent(in) :: fill_in,ialg
integer, intent(out) :: info integer, intent(out) :: info
type(psb_sspmat_type),intent(in) :: a type(psb_sspmat_type),intent(in) :: a
@ -423,7 +416,7 @@ module mld_basep_bld_mod
real(psb_spk_), intent(inout) :: d(:) real(psb_spk_), intent(inout) :: d(:)
end subroutine mld_siluk_fact end subroutine mld_siluk_fact
subroutine mld_diluk_fact(fill_in,ialg,a,l,u,d,info,blck) subroutine mld_diluk_fact(fill_in,ialg,a,l,u,d,info,blck)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
integer, intent(in) :: fill_in,ialg integer, intent(in) :: fill_in,ialg
integer, intent(out) :: info integer, intent(out) :: info
type(psb_dspmat_type),intent(in) :: a type(psb_dspmat_type),intent(in) :: a
@ -432,7 +425,7 @@ module mld_basep_bld_mod
real(psb_dpk_), intent(inout) :: d(:) real(psb_dpk_), intent(inout) :: d(:)
end subroutine mld_diluk_fact end subroutine mld_diluk_fact
subroutine mld_ciluk_fact(fill_in,ialg,a,l,u,d,info,blck) subroutine mld_ciluk_fact(fill_in,ialg,a,l,u,d,info,blck)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
integer, intent(in) :: fill_in,ialg integer, intent(in) :: fill_in,ialg
integer, intent(out) :: info integer, intent(out) :: info
type(psb_cspmat_type),intent(in) :: a type(psb_cspmat_type),intent(in) :: a
@ -441,7 +434,7 @@ module mld_basep_bld_mod
complex(psb_spk_), intent(inout) :: d(:) complex(psb_spk_), intent(inout) :: d(:)
end subroutine mld_ciluk_fact end subroutine mld_ciluk_fact
subroutine mld_ziluk_fact(fill_in,ialg,a,l,u,d,info,blck) subroutine mld_ziluk_fact(fill_in,ialg,a,l,u,d,info,blck)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
integer, intent(in) :: fill_in,ialg integer, intent(in) :: fill_in,ialg
integer, intent(out) :: info integer, intent(out) :: info
type(psb_zspmat_type),intent(in) :: a type(psb_zspmat_type),intent(in) :: a
@ -453,7 +446,7 @@ module mld_basep_bld_mod
interface mld_ilut_fact interface mld_ilut_fact
subroutine mld_silut_fact(fill_in,thres,a,l,u,d,info,blck) subroutine mld_silut_fact(fill_in,thres,a,l,u,d,info,blck)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
integer, intent(in) :: fill_in integer, intent(in) :: fill_in
real(psb_spk_), intent(in) :: thres real(psb_spk_), intent(in) :: thres
integer, intent(out) :: info integer, intent(out) :: info
@ -463,7 +456,7 @@ module mld_basep_bld_mod
real(psb_spk_), intent(inout) :: d(:) real(psb_spk_), intent(inout) :: d(:)
end subroutine mld_silut_fact end subroutine mld_silut_fact
subroutine mld_dilut_fact(fill_in,thres,a,l,u,d,info,blck) subroutine mld_dilut_fact(fill_in,thres,a,l,u,d,info,blck)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
integer, intent(in) :: fill_in integer, intent(in) :: fill_in
real(psb_dpk_), intent(in) :: thres real(psb_dpk_), intent(in) :: thres
integer, intent(out) :: info integer, intent(out) :: info
@ -473,7 +466,7 @@ module mld_basep_bld_mod
real(psb_dpk_), intent(inout) :: d(:) real(psb_dpk_), intent(inout) :: d(:)
end subroutine mld_dilut_fact end subroutine mld_dilut_fact
subroutine mld_cilut_fact(fill_in,thres,a,l,u,d,info,blck) subroutine mld_cilut_fact(fill_in,thres,a,l,u,d,info,blck)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
integer, intent(in) :: fill_in integer, intent(in) :: fill_in
real(psb_spk_), intent(in) :: thres real(psb_spk_), intent(in) :: thres
integer, intent(out) :: info integer, intent(out) :: info
@ -483,7 +476,7 @@ module mld_basep_bld_mod
complex(psb_spk_), intent(inout) :: d(:) complex(psb_spk_), intent(inout) :: d(:)
end subroutine mld_cilut_fact end subroutine mld_cilut_fact
subroutine mld_zilut_fact(fill_in,thres,a,l,u,d,info,blck) subroutine mld_zilut_fact(fill_in,thres,a,l,u,d,info,blck)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
integer, intent(in) :: fill_in integer, intent(in) :: fill_in
real(psb_dpk_), intent(in) :: thres real(psb_dpk_), intent(in) :: thres
integer, intent(out) :: info integer, intent(out) :: info

@ -38,11 +38,11 @@
!!$ !!$
module mld_inner_mod module mld_inner_mod
use mld_prec_type use mld_prec_type
use mld_basep_bld_mod
interface mld_baseprec_aply interface mld_baseprec_aply
subroutine mld_sbaseprec_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) subroutine mld_sbaseprec_aply(alpha,prec,x,beta,y,desc_data,trans,work,info)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sbaseprc_type
type(psb_desc_type),intent(in) :: desc_data type(psb_desc_type),intent(in) :: desc_data
type(mld_sbaseprc_type), intent(in) :: prec type(mld_sbaseprc_type), intent(in) :: prec
real(psb_spk_),intent(in) :: x(:) real(psb_spk_),intent(in) :: x(:)
@ -53,8 +53,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_sbaseprec_aply end subroutine mld_sbaseprec_aply
subroutine mld_dbaseprec_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) subroutine mld_dbaseprec_aply(alpha,prec,x,beta,y,desc_data,trans,work,info)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dbaseprc_type
type(psb_desc_type),intent(in) :: desc_data type(psb_desc_type),intent(in) :: desc_data
type(mld_dbaseprc_type), intent(in) :: prec type(mld_dbaseprc_type), intent(in) :: prec
real(psb_dpk_),intent(in) :: x(:) real(psb_dpk_),intent(in) :: x(:)
@ -65,8 +65,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_dbaseprec_aply end subroutine mld_dbaseprec_aply
subroutine mld_cbaseprec_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) subroutine mld_cbaseprec_aply(alpha,prec,x,beta,y,desc_data,trans,work,info)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cbaseprc_type
type(psb_desc_type),intent(in) :: desc_data type(psb_desc_type),intent(in) :: desc_data
type(mld_cbaseprc_type), intent(in) :: prec type(mld_cbaseprc_type), intent(in) :: prec
complex(psb_spk_),intent(in) :: x(:) complex(psb_spk_),intent(in) :: x(:)
@ -77,8 +77,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_cbaseprec_aply end subroutine mld_cbaseprec_aply
subroutine mld_zbaseprec_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) subroutine mld_zbaseprec_aply(alpha,prec,x,beta,y,desc_data,trans,work,info)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zbaseprc_type
type(psb_desc_type),intent(in) :: desc_data type(psb_desc_type),intent(in) :: desc_data
type(mld_zbaseprc_type), intent(in) :: prec type(mld_zbaseprc_type), intent(in) :: prec
complex(psb_dpk_),intent(in) :: x(:) complex(psb_dpk_),intent(in) :: x(:)
@ -92,8 +92,8 @@ module mld_inner_mod
interface mld_as_aply interface mld_as_aply
subroutine mld_sas_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) subroutine mld_sas_aply(alpha,prec,x,beta,y,desc_data,trans,work,info)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sbaseprc_type
type(psb_desc_type),intent(in) :: desc_data type(psb_desc_type),intent(in) :: desc_data
type(mld_sbaseprc_type), intent(in) :: prec type(mld_sbaseprc_type), intent(in) :: prec
real(psb_spk_),intent(in) :: x(:) real(psb_spk_),intent(in) :: x(:)
@ -104,8 +104,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_sas_aply end subroutine mld_sas_aply
subroutine mld_das_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) subroutine mld_das_aply(alpha,prec,x,beta,y,desc_data,trans,work,info)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dbaseprc_type
type(psb_desc_type),intent(in) :: desc_data type(psb_desc_type),intent(in) :: desc_data
type(mld_dbaseprc_type), intent(in) :: prec type(mld_dbaseprc_type), intent(in) :: prec
real(psb_dpk_),intent(in) :: x(:) real(psb_dpk_),intent(in) :: x(:)
@ -116,8 +116,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_das_aply end subroutine mld_das_aply
subroutine mld_cas_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) subroutine mld_cas_aply(alpha,prec,x,beta,y,desc_data,trans,work,info)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cbaseprc_type
type(psb_desc_type),intent(in) :: desc_data type(psb_desc_type),intent(in) :: desc_data
type(mld_cbaseprc_type), intent(in) :: prec type(mld_cbaseprc_type), intent(in) :: prec
complex(psb_spk_),intent(in) :: x(:) complex(psb_spk_),intent(in) :: x(:)
@ -128,8 +128,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_cas_aply end subroutine mld_cas_aply
subroutine mld_zas_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) subroutine mld_zas_aply(alpha,prec,x,beta,y,desc_data,trans,work,info)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zbaseprc_type
type(psb_desc_type),intent(in) :: desc_data type(psb_desc_type),intent(in) :: desc_data
type(mld_zbaseprc_type), intent(in) :: prec type(mld_zbaseprc_type), intent(in) :: prec
complex(psb_dpk_),intent(in) :: x(:) complex(psb_dpk_),intent(in) :: x(:)
@ -143,8 +143,8 @@ module mld_inner_mod
interface mld_mlprec_aply interface mld_mlprec_aply
subroutine mld_smlprec_aply(alpha,baseprecv,x,beta,y,desc_data,trans,work,info) subroutine mld_smlprec_aply(alpha,baseprecv,x,beta,y,desc_data,trans,work,info)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sbaseprc_type
type(psb_desc_type),intent(in) :: desc_data type(psb_desc_type),intent(in) :: desc_data
type(mld_sbaseprc_type), intent(in) :: baseprecv(:) type(mld_sbaseprc_type), intent(in) :: baseprecv(:)
real(psb_spk_),intent(in) :: alpha,beta real(psb_spk_),intent(in) :: alpha,beta
@ -155,8 +155,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_smlprec_aply end subroutine mld_smlprec_aply
subroutine mld_dmlprec_aply(alpha,baseprecv,x,beta,y,desc_data,trans,work,info) subroutine mld_dmlprec_aply(alpha,baseprecv,x,beta,y,desc_data,trans,work,info)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dbaseprc_type
type(psb_desc_type),intent(in) :: desc_data type(psb_desc_type),intent(in) :: desc_data
type(mld_dbaseprc_type), intent(in) :: baseprecv(:) type(mld_dbaseprc_type), intent(in) :: baseprecv(:)
real(psb_dpk_),intent(in) :: alpha,beta real(psb_dpk_),intent(in) :: alpha,beta
@ -167,8 +167,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_dmlprec_aply end subroutine mld_dmlprec_aply
subroutine mld_cmlprec_aply(alpha,baseprecv,x,beta,y,desc_data,trans,work,info) subroutine mld_cmlprec_aply(alpha,baseprecv,x,beta,y,desc_data,trans,work,info)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cbaseprc_type
type(psb_desc_type),intent(in) :: desc_data type(psb_desc_type),intent(in) :: desc_data
type(mld_cbaseprc_type), intent(in) :: baseprecv(:) type(mld_cbaseprc_type), intent(in) :: baseprecv(:)
complex(psb_spk_),intent(in) :: alpha,beta complex(psb_spk_),intent(in) :: alpha,beta
@ -179,8 +179,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_cmlprec_aply end subroutine mld_cmlprec_aply
subroutine mld_zmlprec_aply(alpha,baseprecv,x,beta,y,desc_data,trans,work,info) subroutine mld_zmlprec_aply(alpha,baseprecv,x,beta,y,desc_data,trans,work,info)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zbaseprc_type
type(psb_desc_type),intent(in) :: desc_data type(psb_desc_type),intent(in) :: desc_data
type(mld_zbaseprc_type), intent(in) :: baseprecv(:) type(mld_zbaseprc_type), intent(in) :: baseprecv(:)
complex(psb_dpk_),intent(in) :: alpha,beta complex(psb_dpk_),intent(in) :: alpha,beta
@ -195,8 +195,8 @@ module mld_inner_mod
interface mld_sub_aply interface mld_sub_aply
subroutine mld_ssub_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) subroutine mld_ssub_aply(alpha,prec,x,beta,y,desc_data,trans,work,info)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sbaseprc_type
type(psb_desc_type), intent(in) :: desc_data type(psb_desc_type), intent(in) :: desc_data
type(mld_sbaseprc_type), intent(in) :: prec type(mld_sbaseprc_type), intent(in) :: prec
real(psb_spk_),intent(in) :: x(:) real(psb_spk_),intent(in) :: x(:)
@ -207,8 +207,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_ssub_aply end subroutine mld_ssub_aply
subroutine mld_dsub_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) subroutine mld_dsub_aply(alpha,prec,x,beta,y,desc_data,trans,work,info)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dbaseprc_type
type(psb_desc_type), intent(in) :: desc_data type(psb_desc_type), intent(in) :: desc_data
type(mld_dbaseprc_type), intent(in) :: prec type(mld_dbaseprc_type), intent(in) :: prec
real(psb_dpk_),intent(in) :: x(:) real(psb_dpk_),intent(in) :: x(:)
@ -219,8 +219,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_dsub_aply end subroutine mld_dsub_aply
subroutine mld_csub_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) subroutine mld_csub_aply(alpha,prec,x,beta,y,desc_data,trans,work,info)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cbaseprc_type
type(psb_desc_type), intent(in) :: desc_data type(psb_desc_type), intent(in) :: desc_data
type(mld_cbaseprc_type), intent(in) :: prec type(mld_cbaseprc_type), intent(in) :: prec
complex(psb_spk_),intent(in) :: x(:) complex(psb_spk_),intent(in) :: x(:)
@ -231,8 +231,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_csub_aply end subroutine mld_csub_aply
subroutine mld_zsub_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) subroutine mld_zsub_aply(alpha,prec,x,beta,y,desc_data,trans,work,info)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zbaseprc_type
type(psb_desc_type), intent(in) :: desc_data type(psb_desc_type), intent(in) :: desc_data
type(mld_zbaseprc_type), intent(in) :: prec type(mld_zbaseprc_type), intent(in) :: prec
complex(psb_dpk_),intent(in) :: x(:) complex(psb_dpk_),intent(in) :: x(:)
@ -247,8 +247,8 @@ module mld_inner_mod
interface mld_sub_solve interface mld_sub_solve
subroutine mld_ssub_solve(alpha,prec,x,beta,y,desc_data,trans,work,info) subroutine mld_ssub_solve(alpha,prec,x,beta,y,desc_data,trans,work,info)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sbaseprc_type
type(psb_desc_type), intent(in) :: desc_data type(psb_desc_type), intent(in) :: desc_data
type(mld_sbaseprc_type), intent(in) :: prec type(mld_sbaseprc_type), intent(in) :: prec
real(psb_spk_),intent(in) :: x(:) real(psb_spk_),intent(in) :: x(:)
@ -259,8 +259,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_ssub_solve end subroutine mld_ssub_solve
subroutine mld_dsub_solve(alpha,prec,x,beta,y,desc_data,trans,work,info) subroutine mld_dsub_solve(alpha,prec,x,beta,y,desc_data,trans,work,info)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dbaseprc_type
type(psb_desc_type), intent(in) :: desc_data type(psb_desc_type), intent(in) :: desc_data
type(mld_dbaseprc_type), intent(in) :: prec type(mld_dbaseprc_type), intent(in) :: prec
real(psb_dpk_),intent(in) :: x(:) real(psb_dpk_),intent(in) :: x(:)
@ -271,8 +271,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_dsub_solve end subroutine mld_dsub_solve
subroutine mld_csub_solve(alpha,prec,x,beta,y,desc_data,trans,work,info) subroutine mld_csub_solve(alpha,prec,x,beta,y,desc_data,trans,work,info)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cbaseprc_type
type(psb_desc_type), intent(in) :: desc_data type(psb_desc_type), intent(in) :: desc_data
type(mld_cbaseprc_type), intent(in) :: prec type(mld_cbaseprc_type), intent(in) :: prec
complex(psb_spk_),intent(in) :: x(:) complex(psb_spk_),intent(in) :: x(:)
@ -283,8 +283,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_csub_solve end subroutine mld_csub_solve
subroutine mld_zsub_solve(alpha,prec,x,beta,y,desc_data,trans,work,info) subroutine mld_zsub_solve(alpha,prec,x,beta,y,desc_data,trans,work,info)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zbaseprc_type
type(psb_desc_type), intent(in) :: desc_data type(psb_desc_type), intent(in) :: desc_data
type(mld_zbaseprc_type), intent(in) :: prec type(mld_zbaseprc_type), intent(in) :: prec
complex(psb_dpk_),intent(in) :: x(:) complex(psb_dpk_),intent(in) :: x(:)
@ -299,8 +299,8 @@ module mld_inner_mod
interface mld_asmat_bld interface mld_asmat_bld
Subroutine mld_sasmat_bld(ptype,novr,a,blk,desc_data,upd,desc_p,info,outfmt) Subroutine mld_sasmat_bld(ptype,novr,a,blk,desc_data,upd,desc_p,info,outfmt)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sbaseprc_type
integer, intent(in) :: ptype,novr integer, intent(in) :: ptype,novr
Type(psb_sspmat_type), Intent(in) :: a Type(psb_sspmat_type), Intent(in) :: a
Type(psb_sspmat_type), Intent(out) :: blk Type(psb_sspmat_type), Intent(out) :: blk
@ -311,8 +311,8 @@ module mld_inner_mod
character(len=5), optional :: outfmt character(len=5), optional :: outfmt
end Subroutine mld_sasmat_bld end Subroutine mld_sasmat_bld
Subroutine mld_dasmat_bld(ptype,novr,a,blk,desc_data,upd,desc_p,info,outfmt) Subroutine mld_dasmat_bld(ptype,novr,a,blk,desc_data,upd,desc_p,info,outfmt)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dbaseprc_type
integer, intent(in) :: ptype,novr integer, intent(in) :: ptype,novr
Type(psb_dspmat_type), Intent(in) :: a Type(psb_dspmat_type), Intent(in) :: a
Type(psb_dspmat_type), Intent(out) :: blk Type(psb_dspmat_type), Intent(out) :: blk
@ -323,8 +323,8 @@ module mld_inner_mod
character(len=5), optional :: outfmt character(len=5), optional :: outfmt
end Subroutine mld_dasmat_bld end Subroutine mld_dasmat_bld
Subroutine mld_casmat_bld(ptype,novr,a,blk,desc_data,upd,desc_p,info,outfmt) Subroutine mld_casmat_bld(ptype,novr,a,blk,desc_data,upd,desc_p,info,outfmt)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cbaseprc_type
integer, intent(in) :: ptype,novr integer, intent(in) :: ptype,novr
Type(psb_cspmat_type), Intent(in) :: a Type(psb_cspmat_type), Intent(in) :: a
Type(psb_cspmat_type), Intent(out) :: blk Type(psb_cspmat_type), Intent(out) :: blk
@ -335,8 +335,8 @@ module mld_inner_mod
character(len=5), optional :: outfmt character(len=5), optional :: outfmt
end Subroutine mld_casmat_bld end Subroutine mld_casmat_bld
Subroutine mld_zasmat_bld(ptype,novr,a,blk,desc_data,upd,desc_p,info,outfmt) Subroutine mld_zasmat_bld(ptype,novr,a,blk,desc_data,upd,desc_p,info,outfmt)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zbaseprc_type
integer, intent(in) :: ptype,novr integer, intent(in) :: ptype,novr
Type(psb_zspmat_type), Intent(in) :: a Type(psb_zspmat_type), Intent(in) :: a
Type(psb_zspmat_type), Intent(out) :: blk Type(psb_zspmat_type), Intent(out) :: blk
@ -350,32 +350,32 @@ module mld_inner_mod
interface mld_sp_renum interface mld_sp_renum
subroutine mld_ssp_renum(a,blck,p,atmp,info) subroutine mld_ssp_renum(a,blck,p,atmp,info)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sbaseprc_type
type(psb_sspmat_type), intent(in) :: a,blck type(psb_sspmat_type), intent(in) :: a,blck
type(psb_sspmat_type), intent(out) :: atmp type(psb_sspmat_type), intent(out) :: atmp
type(mld_sbaseprc_type), intent(inout) :: p type(mld_sbaseprc_type), intent(inout) :: p
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_ssp_renum end subroutine mld_ssp_renum
subroutine mld_dsp_renum(a,blck,p,atmp,info) subroutine mld_dsp_renum(a,blck,p,atmp,info)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dbaseprc_type
type(psb_dspmat_type), intent(in) :: a,blck type(psb_dspmat_type), intent(in) :: a,blck
type(psb_dspmat_type), intent(out) :: atmp type(psb_dspmat_type), intent(out) :: atmp
type(mld_dbaseprc_type), intent(inout) :: p type(mld_dbaseprc_type), intent(inout) :: p
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_dsp_renum end subroutine mld_dsp_renum
subroutine mld_csp_renum(a,blck,p,atmp,info) subroutine mld_csp_renum(a,blck,p,atmp,info)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cbaseprc_type
type(psb_cspmat_type), intent(in) :: a,blck type(psb_cspmat_type), intent(in) :: a,blck
type(psb_cspmat_type), intent(out) :: atmp type(psb_cspmat_type), intent(out) :: atmp
type(mld_cbaseprc_type), intent(inout) :: p type(mld_cbaseprc_type), intent(inout) :: p
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_csp_renum end subroutine mld_csp_renum
subroutine mld_zsp_renum(a,blck,p,atmp,info) subroutine mld_zsp_renum(a,blck,p,atmp,info)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zbaseprc_type
type(psb_zspmat_type), intent(in) :: a,blck type(psb_zspmat_type), intent(in) :: a,blck
type(psb_zspmat_type), intent(out) :: atmp type(psb_zspmat_type), intent(out) :: atmp
type(mld_zbaseprc_type), intent(inout) :: p type(mld_zbaseprc_type), intent(inout) :: p
@ -385,8 +385,8 @@ module mld_inner_mod
interface mld_aggrmap_bld interface mld_aggrmap_bld
subroutine mld_saggrmap_bld(aggr_type,a,desc_a,nlaggr,ilaggr,info) subroutine mld_saggrmap_bld(aggr_type,a,desc_a,nlaggr,ilaggr,info)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sbaseprc_type
integer, intent(in) :: aggr_type integer, intent(in) :: aggr_type
type(psb_sspmat_type), intent(in), target :: a type(psb_sspmat_type), intent(in), target :: a
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
@ -394,8 +394,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_saggrmap_bld end subroutine mld_saggrmap_bld
subroutine mld_daggrmap_bld(aggr_type,a,desc_a,nlaggr,ilaggr,info) subroutine mld_daggrmap_bld(aggr_type,a,desc_a,nlaggr,ilaggr,info)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dbaseprc_type
integer, intent(in) :: aggr_type integer, intent(in) :: aggr_type
type(psb_dspmat_type), intent(in), target :: a type(psb_dspmat_type), intent(in), target :: a
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
@ -403,8 +403,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_daggrmap_bld end subroutine mld_daggrmap_bld
subroutine mld_caggrmap_bld(aggr_type,a,desc_a,nlaggr,ilaggr,info) subroutine mld_caggrmap_bld(aggr_type,a,desc_a,nlaggr,ilaggr,info)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cbaseprc_type
integer, intent(in) :: aggr_type integer, intent(in) :: aggr_type
type(psb_cspmat_type), intent(in), target :: a type(psb_cspmat_type), intent(in), target :: a
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
@ -412,8 +412,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_caggrmap_bld end subroutine mld_caggrmap_bld
subroutine mld_zaggrmap_bld(aggr_type,a,desc_a,nlaggr,ilaggr,info) subroutine mld_zaggrmap_bld(aggr_type,a,desc_a,nlaggr,ilaggr,info)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zbaseprc_type
integer, intent(in) :: aggr_type integer, intent(in) :: aggr_type
type(psb_zspmat_type), intent(in), target :: a type(psb_zspmat_type), intent(in), target :: a
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
@ -424,8 +424,8 @@ module mld_inner_mod
interface mld_aggrmat_asb interface mld_aggrmat_asb
subroutine mld_saggrmat_asb(a,desc_a,ac,desc_ac,p,info) subroutine mld_saggrmat_asb(a,desc_a,ac,desc_ac,p,info)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sbaseprc_type
type(psb_sspmat_type), intent(in) :: a type(psb_sspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
type(psb_sspmat_type), intent(out) :: ac type(psb_sspmat_type), intent(out) :: ac
@ -434,8 +434,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_saggrmat_asb end subroutine mld_saggrmat_asb
subroutine mld_daggrmat_asb(a,desc_a,ac,desc_ac,p,info) subroutine mld_daggrmat_asb(a,desc_a,ac,desc_ac,p,info)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dbaseprc_type
type(psb_dspmat_type), intent(in) :: a type(psb_dspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
type(psb_dspmat_type), intent(out) :: ac type(psb_dspmat_type), intent(out) :: ac
@ -444,8 +444,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_daggrmat_asb end subroutine mld_daggrmat_asb
subroutine mld_caggrmat_asb(a,desc_a,ac,desc_ac,p,info) subroutine mld_caggrmat_asb(a,desc_a,ac,desc_ac,p,info)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cbaseprc_type
type(psb_cspmat_type), intent(in) :: a type(psb_cspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
type(psb_cspmat_type), intent(out) :: ac type(psb_cspmat_type), intent(out) :: ac
@ -454,8 +454,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_caggrmat_asb end subroutine mld_caggrmat_asb
subroutine mld_zaggrmat_asb(a,desc_a,ac,desc_ac,p,info) subroutine mld_zaggrmat_asb(a,desc_a,ac,desc_ac,p,info)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zbaseprc_type
type(psb_zspmat_type), intent(in) :: a type(psb_zspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
type(psb_zspmat_type), intent(out) :: ac type(psb_zspmat_type), intent(out) :: ac
@ -467,8 +467,8 @@ module mld_inner_mod
interface mld_aggrmat_raw_asb interface mld_aggrmat_raw_asb
subroutine mld_saggrmat_raw_asb(a,desc_a,ac,desc_ac,p,info) subroutine mld_saggrmat_raw_asb(a,desc_a,ac,desc_ac,p,info)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sbaseprc_type
type(psb_sspmat_type), intent(in) :: a type(psb_sspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
type(psb_sspmat_type), intent(out) :: ac type(psb_sspmat_type), intent(out) :: ac
@ -477,8 +477,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_saggrmat_raw_asb end subroutine mld_saggrmat_raw_asb
subroutine mld_daggrmat_raw_asb(a,desc_a,ac,desc_ac,p,info) subroutine mld_daggrmat_raw_asb(a,desc_a,ac,desc_ac,p,info)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dbaseprc_type
type(psb_dspmat_type), intent(in) :: a type(psb_dspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
type(psb_dspmat_type), intent(out) :: ac type(psb_dspmat_type), intent(out) :: ac
@ -487,8 +487,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_daggrmat_raw_asb end subroutine mld_daggrmat_raw_asb
subroutine mld_caggrmat_raw_asb(a,desc_a,ac,desc_ac,p,info) subroutine mld_caggrmat_raw_asb(a,desc_a,ac,desc_ac,p,info)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cbaseprc_type
type(psb_cspmat_type), intent(in) :: a type(psb_cspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
type(psb_cspmat_type), intent(out) :: ac type(psb_cspmat_type), intent(out) :: ac
@ -497,8 +497,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_caggrmat_raw_asb end subroutine mld_caggrmat_raw_asb
subroutine mld_zaggrmat_raw_asb(a,desc_a,ac,desc_ac,p,info) subroutine mld_zaggrmat_raw_asb(a,desc_a,ac,desc_ac,p,info)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zbaseprc_type
type(psb_zspmat_type), intent(in) :: a type(psb_zspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
type(psb_zspmat_type), intent(out) :: ac type(psb_zspmat_type), intent(out) :: ac
@ -510,8 +510,8 @@ module mld_inner_mod
interface mld_aggrmat_smth_asb interface mld_aggrmat_smth_asb
subroutine mld_saggrmat_smth_asb(a,desc_a,ac,desc_ac,p,info) subroutine mld_saggrmat_smth_asb(a,desc_a,ac,desc_ac,p,info)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sbaseprc_type
type(psb_sspmat_type), intent(in) :: a type(psb_sspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
type(psb_sspmat_type), intent(out) :: ac type(psb_sspmat_type), intent(out) :: ac
@ -520,8 +520,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_saggrmat_smth_asb end subroutine mld_saggrmat_smth_asb
subroutine mld_daggrmat_smth_asb(a,desc_a,ac,desc_ac,p,info) subroutine mld_daggrmat_smth_asb(a,desc_a,ac,desc_ac,p,info)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dbaseprc_type
type(psb_dspmat_type), intent(in) :: a type(psb_dspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
type(psb_dspmat_type), intent(out) :: ac type(psb_dspmat_type), intent(out) :: ac
@ -530,8 +530,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_daggrmat_smth_asb end subroutine mld_daggrmat_smth_asb
subroutine mld_caggrmat_smth_asb(a,desc_a,ac,desc_ac,p,info) subroutine mld_caggrmat_smth_asb(a,desc_a,ac,desc_ac,p,info)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cbaseprc_type
type(psb_cspmat_type), intent(in) :: a type(psb_cspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
type(psb_cspmat_type), intent(out) :: ac type(psb_cspmat_type), intent(out) :: ac
@ -540,8 +540,8 @@ module mld_inner_mod
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_caggrmat_smth_asb end subroutine mld_caggrmat_smth_asb
subroutine mld_zaggrmat_smth_asb(a,desc_a,ac,desc_ac,p,info) subroutine mld_zaggrmat_smth_asb(a,desc_a,ac,desc_ac,p,info)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zbaseprc_type
type(psb_zspmat_type), intent(in) :: a type(psb_zspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a type(psb_desc_type), intent(in) :: desc_a
type(psb_zspmat_type), intent(out) :: ac type(psb_zspmat_type), intent(out) :: ac
@ -551,4 +551,456 @@ module mld_inner_mod
end subroutine mld_zaggrmat_smth_asb end subroutine mld_zaggrmat_smth_asb
end interface end interface
interface mld_baseprc_bld
subroutine mld_sbaseprc_bld(a,desc_a,p,info,upd)
use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_sbaseprc_type
type(psb_sspmat_type), target :: a
type(psb_desc_type), intent(in), target :: desc_a
type(mld_sbaseprc_type),intent(inout) :: p
integer, intent(out) :: info
character, intent(in), optional :: upd
end subroutine mld_sbaseprc_bld
subroutine mld_dbaseprc_bld(a,desc_a,p,info,upd)
use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_dbaseprc_type
type(psb_dspmat_type), target :: a
type(psb_desc_type), intent(in), target :: desc_a
type(mld_dbaseprc_type),intent(inout) :: p
integer, intent(out) :: info
character, intent(in), optional :: upd
end subroutine mld_dbaseprc_bld
subroutine mld_cbaseprc_bld(a,desc_a,p,info,upd)
use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_cbaseprc_type
type(psb_cspmat_type), target :: a
type(psb_desc_type), intent(in), target :: desc_a
type(mld_cbaseprc_type),intent(inout) :: p
integer, intent(out) :: info
character, intent(in), optional :: upd
end subroutine mld_cbaseprc_bld
subroutine mld_zbaseprc_bld(a,desc_a,p,info,upd)
use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_zbaseprc_type
type(psb_zspmat_type), target :: a
type(psb_desc_type), intent(in), target :: desc_a
type(mld_zbaseprc_type),intent(inout) :: p
integer, intent(out) :: info
character, intent(in), optional :: upd
end subroutine mld_zbaseprc_bld
end interface
interface mld_as_bld
subroutine mld_sas_bld(a,desc_a,p,upd,info)
use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_sbaseprc_type
type(psb_sspmat_type), target :: a
type(psb_desc_type), intent(in), target :: desc_a
type(mld_sbaseprc_type),intent(inout) :: p
character, intent(in) :: upd
integer, intent(out) :: info
end subroutine mld_sas_bld
subroutine mld_das_bld(a,desc_a,p,upd,info)
use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_dbaseprc_type
type(psb_dspmat_type), target :: a
type(psb_desc_type), intent(in), target :: desc_a
type(mld_dbaseprc_type),intent(inout) :: p
character, intent(in) :: upd
integer, intent(out) :: info
end subroutine mld_das_bld
subroutine mld_cas_bld(a,desc_a,p,upd,info)
use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_cbaseprc_type
type(psb_cspmat_type), target :: a
type(psb_desc_type), intent(in), target :: desc_a
type(mld_cbaseprc_type),intent(inout) :: p
character, intent(in) :: upd
integer, intent(out) :: info
end subroutine mld_cas_bld
subroutine mld_zas_bld(a,desc_a,p,upd,info)
use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_zbaseprc_type
type(psb_zspmat_type), target :: a
type(psb_desc_type), intent(in), target :: desc_a
type(mld_zbaseprc_type),intent(inout) :: p
character, intent(in) :: upd
integer, intent(out) :: info
end subroutine mld_zas_bld
end interface
interface mld_mlprec_bld
subroutine mld_smlprec_bld(a,desc_a,p,info)
use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_sbaseprc_type
type(psb_sspmat_type), intent(inout), target :: a
type(psb_desc_type), intent(in), target :: desc_a
type(mld_sbaseprc_type), intent(inout), target :: p
integer, intent(out) :: info
end subroutine mld_smlprec_bld
subroutine mld_dmlprec_bld(a,desc_a,p,info)
use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_dbaseprc_type
type(psb_dspmat_type), intent(inout), target :: a
type(psb_desc_type), intent(in), target :: desc_a
type(mld_dbaseprc_type), intent(inout), target :: p
integer, intent(out) :: info
end subroutine mld_dmlprec_bld
subroutine mld_cmlprec_bld(a,desc_a,p,info)
use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_cbaseprc_type
type(psb_cspmat_type), intent(inout), target :: a
type(psb_desc_type), intent(in), target :: desc_a
type(mld_cbaseprc_type), intent(inout),target :: p
integer, intent(out) :: info
end subroutine mld_cmlprec_bld
subroutine mld_zmlprec_bld(a,desc_a,p,info)
use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_zbaseprc_type
type(psb_zspmat_type), intent(inout), target :: a
type(psb_desc_type), intent(in), target :: desc_a
type(mld_zbaseprc_type), intent(inout),target :: p
integer, intent(out) :: info
end subroutine mld_zmlprec_bld
end interface
interface mld_diag_bld
subroutine mld_sdiag_bld(a,desc_data,p,info)
use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_sbaseprc_type
integer, intent(out) :: info
type(psb_sspmat_type), intent(in), target :: a
type(psb_desc_type),intent(in) :: desc_data
type(mld_sbaseprc_type), intent(inout) :: p
end subroutine mld_sdiag_bld
subroutine mld_ddiag_bld(a,desc_data,p,info)
use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_dbaseprc_type
integer, intent(out) :: info
type(psb_dspmat_type), intent(in), target :: a
type(psb_desc_type),intent(in) :: desc_data
type(mld_dbaseprc_type), intent(inout) :: p
end subroutine mld_ddiag_bld
subroutine mld_cdiag_bld(a,desc_data,p,info)
use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_cbaseprc_type
integer, intent(out) :: info
type(psb_cspmat_type), intent(in), target :: a
type(psb_desc_type),intent(in) :: desc_data
type(mld_cbaseprc_type), intent(inout) :: p
end subroutine mld_cdiag_bld
subroutine mld_zdiag_bld(a,desc_data,p,info)
use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_zbaseprc_type
integer, intent(out) :: info
type(psb_zspmat_type), intent(in), target :: a
type(psb_desc_type),intent(in) :: desc_data
type(mld_zbaseprc_type), intent(inout) :: p
end subroutine mld_zdiag_bld
end interface
interface mld_fact_bld
subroutine mld_sfact_bld(a,p,upd,info,blck)
use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_sbaseprc_type
type(psb_sspmat_type), intent(in), target :: a
type(mld_sbaseprc_type), intent(inout) :: p
integer, intent(out) :: info
character, intent(in) :: upd
type(psb_sspmat_type), intent(in), target, optional :: blck
end subroutine mld_sfact_bld
subroutine mld_dfact_bld(a,p,upd,info,blck)
use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_dbaseprc_type
type(psb_dspmat_type), intent(in), target :: a
type(mld_dbaseprc_type), intent(inout) :: p
integer, intent(out) :: info
character, intent(in) :: upd
type(psb_dspmat_type), intent(in), target, optional :: blck
end subroutine mld_dfact_bld
subroutine mld_cfact_bld(a,p,upd,info,blck)
use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_cbaseprc_type
type(psb_cspmat_type), intent(in), target :: a
type(mld_cbaseprc_type), intent(inout) :: p
integer, intent(out) :: info
character, intent(in) :: upd
type(psb_cspmat_type), intent(in), target, optional :: blck
end subroutine mld_cfact_bld
subroutine mld_zfact_bld(a,p,upd,info,blck)
use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_zbaseprc_type
type(psb_zspmat_type), intent(in), target :: a
type(mld_zbaseprc_type), intent(inout) :: p
integer, intent(out) :: info
character, intent(in) :: upd
type(psb_zspmat_type), intent(in), target, optional :: blck
end subroutine mld_zfact_bld
end interface
interface mld_ilu_bld
subroutine mld_silu_bld(a,p,upd,info,blck)
use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_sbaseprc_type
integer, intent(out) :: info
type(psb_sspmat_type), intent(in), target :: a
type(mld_sbaseprc_type), intent(inout) :: p
character, intent(in) :: upd
type(psb_sspmat_type), intent(in), optional :: blck
end subroutine mld_silu_bld
subroutine mld_dilu_bld(a,p,upd,info,blck)
use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_dbaseprc_type
integer, intent(out) :: info
type(psb_dspmat_type), intent(in), target :: a
type(mld_dbaseprc_type), intent(inout) :: p
character, intent(in) :: upd
type(psb_dspmat_type), intent(in), optional :: blck
end subroutine mld_dilu_bld
subroutine mld_cilu_bld(a,p,upd,info,blck)
use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_cbaseprc_type
integer, intent(out) :: info
type(psb_cspmat_type), intent(in), target :: a
type(mld_cbaseprc_type), intent(inout) :: p
character, intent(in) :: upd
type(psb_cspmat_type), intent(in), optional :: blck
end subroutine mld_cilu_bld
subroutine mld_zilu_bld(a,p,upd,info,blck)
use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_zbaseprc_type
integer, intent(out) :: info
type(psb_zspmat_type), intent(in), target :: a
type(mld_zbaseprc_type), intent(inout) :: p
character, intent(in) :: upd
type(psb_zspmat_type), intent(in), optional :: blck
end subroutine mld_zilu_bld
end interface
interface mld_sludist_bld
subroutine mld_ssludist_bld(a,desc_a,p,info)
use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_sbaseprc_type
type(psb_sspmat_type), intent(inout) :: a
type(psb_desc_type), intent(in) :: desc_a
type(mld_sbaseprc_type), intent(inout) :: p
integer, intent(out) :: info
end subroutine mld_ssludist_bld
subroutine mld_dsludist_bld(a,desc_a,p,info)
use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_dbaseprc_type
type(psb_dspmat_type), intent(inout) :: a
type(psb_desc_type), intent(in) :: desc_a
type(mld_dbaseprc_type), intent(inout) :: p
integer, intent(out) :: info
end subroutine mld_dsludist_bld
subroutine mld_csludist_bld(a,desc_a,p,info)
use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_cbaseprc_type
type(psb_cspmat_type), intent(inout) :: a
type(psb_desc_type), intent(in) :: desc_a
type(mld_cbaseprc_type), intent(inout) :: p
integer, intent(out) :: info
end subroutine mld_csludist_bld
subroutine mld_zsludist_bld(a,desc_a,p,info)
use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_zbaseprc_type
type(psb_zspmat_type), intent(inout) :: a
type(psb_desc_type), intent(in) :: desc_a
type(mld_zbaseprc_type), intent(inout) :: p
integer, intent(out) :: info
end subroutine mld_zsludist_bld
end interface
interface mld_slu_bld
subroutine mld_sslu_bld(a,desc_a,p,info)
use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_sbaseprc_type
type(psb_sspmat_type), intent(inout) :: a
type(psb_desc_type), intent(in) :: desc_a
type(mld_sbaseprc_type), intent(inout) :: p
integer, intent(out) :: info
end subroutine mld_sslu_bld
subroutine mld_dslu_bld(a,desc_a,p,info)
use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_dbaseprc_type
type(psb_dspmat_type), intent(inout) :: a
type(psb_desc_type), intent(in) :: desc_a
type(mld_dbaseprc_type), intent(inout) :: p
integer, intent(out) :: info
end subroutine mld_dslu_bld
subroutine mld_cslu_bld(a,desc_a,p,info)
use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_cbaseprc_type
type(psb_cspmat_type), intent(inout) :: a
type(psb_desc_type), intent(in) :: desc_a
type(mld_cbaseprc_type), intent(inout) :: p
integer, intent(out) :: info
end subroutine mld_cslu_bld
subroutine mld_zslu_bld(a,desc_a,p,info)
use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_zbaseprc_type
type(psb_zspmat_type), intent(inout) :: a
type(psb_desc_type), intent(in) :: desc_a
type(mld_zbaseprc_type), intent(inout) :: p
integer, intent(out) :: info
end subroutine mld_zslu_bld
end interface
interface mld_umf_bld
subroutine mld_sumf_bld(a,desc_a,p,info)
use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_sbaseprc_type
type(psb_sspmat_type), intent(inout) :: a
type(psb_desc_type), intent(in) :: desc_a
type(mld_sbaseprc_type), intent(inout) :: p
integer, intent(out) :: info
end subroutine mld_sumf_bld
subroutine mld_dumf_bld(a,desc_a,p,info)
use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_dbaseprc_type
type(psb_dspmat_type), intent(inout) :: a
type(psb_desc_type), intent(in) :: desc_a
type(mld_dbaseprc_type), intent(inout) :: p
integer, intent(out) :: info
end subroutine mld_dumf_bld
subroutine mld_cumf_bld(a,desc_a,p,info)
use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_cbaseprc_type
type(psb_cspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
type(mld_cbaseprc_type), intent(inout) :: p
integer, intent(out) :: info
end subroutine mld_cumf_bld
subroutine mld_zumf_bld(a,desc_a,p,info)
use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_zbaseprc_type
type(psb_zspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
type(mld_zbaseprc_type), intent(inout) :: p
integer, intent(out) :: info
end subroutine mld_zumf_bld
end interface
interface mld_ilu0_fact
subroutine mld_silu0_fact(ialg,a,l,u,d,info,blck)
use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
integer, intent(in) :: ialg
integer, intent(out) :: info
type(psb_sspmat_type),intent(in) :: a
type(psb_sspmat_type),intent(inout) :: l,u
type(psb_sspmat_type),intent(in), optional, target :: blck
real(psb_spk_), intent(inout) :: d(:)
end subroutine mld_silu0_fact
subroutine mld_dilu0_fact(ialg,a,l,u,d,info,blck)
use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
integer, intent(in) :: ialg
integer, intent(out) :: info
type(psb_dspmat_type),intent(in) :: a
type(psb_dspmat_type),intent(inout) :: l,u
type(psb_dspmat_type),intent(in), optional, target :: blck
real(psb_dpk_), intent(inout) :: d(:)
end subroutine mld_dilu0_fact
subroutine mld_cilu0_fact(ialg,a,l,u,d,info,blck)
use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
integer, intent(in) :: ialg
integer, intent(out) :: info
type(psb_cspmat_type),intent(in) :: a
type(psb_cspmat_type),intent(inout) :: l,u
type(psb_cspmat_type),intent(in), optional, target :: blck
complex(psb_spk_), intent(inout) :: d(:)
end subroutine mld_cilu0_fact
subroutine mld_zilu0_fact(ialg,a,l,u,d,info,blck)
use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
integer, intent(in) :: ialg
integer, intent(out) :: info
type(psb_zspmat_type),intent(in) :: a
type(psb_zspmat_type),intent(inout) :: l,u
type(psb_zspmat_type),intent(in), optional, target :: blck
complex(psb_dpk_), intent(inout) :: d(:)
end subroutine mld_zilu0_fact
end interface
interface mld_iluk_fact
subroutine mld_siluk_fact(fill_in,ialg,a,l,u,d,info,blck)
use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
integer, intent(in) :: fill_in,ialg
integer, intent(out) :: info
type(psb_sspmat_type),intent(in) :: a
type(psb_sspmat_type),intent(inout) :: l,u
type(psb_sspmat_type),intent(in), optional, target :: blck
real(psb_spk_), intent(inout) :: d(:)
end subroutine mld_siluk_fact
subroutine mld_diluk_fact(fill_in,ialg,a,l,u,d,info,blck)
use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
integer, intent(in) :: fill_in,ialg
integer, intent(out) :: info
type(psb_dspmat_type),intent(in) :: a
type(psb_dspmat_type),intent(inout) :: l,u
type(psb_dspmat_type),intent(in), optional, target :: blck
real(psb_dpk_), intent(inout) :: d(:)
end subroutine mld_diluk_fact
subroutine mld_ciluk_fact(fill_in,ialg,a,l,u,d,info,blck)
use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
integer, intent(in) :: fill_in,ialg
integer, intent(out) :: info
type(psb_cspmat_type),intent(in) :: a
type(psb_cspmat_type),intent(inout) :: l,u
type(psb_cspmat_type),intent(in), optional, target :: blck
complex(psb_spk_), intent(inout) :: d(:)
end subroutine mld_ciluk_fact
subroutine mld_ziluk_fact(fill_in,ialg,a,l,u,d,info,blck)
use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
integer, intent(in) :: fill_in,ialg
integer, intent(out) :: info
type(psb_zspmat_type),intent(in) :: a
type(psb_zspmat_type),intent(inout) :: l,u
type(psb_zspmat_type),intent(in), optional, target :: blck
complex(psb_dpk_), intent(inout) :: d(:)
end subroutine mld_ziluk_fact
end interface
interface mld_ilut_fact
subroutine mld_silut_fact(fill_in,thres,a,l,u,d,info,blck)
use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
integer, intent(in) :: fill_in
real(psb_spk_), intent(in) :: thres
integer, intent(out) :: info
type(psb_sspmat_type),intent(in) :: a
type(psb_sspmat_type),intent(inout) :: l,u
type(psb_sspmat_type),intent(in), optional, target :: blck
real(psb_spk_), intent(inout) :: d(:)
end subroutine mld_silut_fact
subroutine mld_dilut_fact(fill_in,thres,a,l,u,d,info,blck)
use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
integer, intent(in) :: fill_in
real(psb_dpk_), intent(in) :: thres
integer, intent(out) :: info
type(psb_dspmat_type),intent(in) :: a
type(psb_dspmat_type),intent(inout) :: l,u
type(psb_dspmat_type),intent(in), optional, target :: blck
real(psb_dpk_), intent(inout) :: d(:)
end subroutine mld_dilut_fact
subroutine mld_cilut_fact(fill_in,thres,a,l,u,d,info,blck)
use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
integer, intent(in) :: fill_in
real(psb_spk_), intent(in) :: thres
integer, intent(out) :: info
type(psb_cspmat_type),intent(in) :: a
type(psb_cspmat_type),intent(inout) :: l,u
type(psb_cspmat_type),intent(in), optional, target :: blck
complex(psb_spk_), intent(inout) :: d(:)
end subroutine mld_cilut_fact
subroutine mld_zilut_fact(fill_in,thres,a,l,u,d,info,blck)
use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
integer, intent(in) :: fill_in
real(psb_dpk_), intent(in) :: thres
integer, intent(out) :: info
type(psb_zspmat_type),intent(in) :: a
type(psb_zspmat_type),intent(inout) :: l,u
type(psb_zspmat_type),intent(in), optional, target :: blck
complex(psb_dpk_), intent(inout) :: d(:)
end subroutine mld_zilut_fact
end interface
end module mld_inner_mod end module mld_inner_mod

@ -49,32 +49,32 @@ module mld_prec_mod
interface mld_precinit interface mld_precinit
subroutine mld_sprecinit(p,ptype,info,nlev) subroutine mld_sprecinit(p,ptype,info,nlev)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sprec_type
type(mld_sprec_type), intent(inout) :: p type(mld_sprec_type), intent(inout) :: p
character(len=*), intent(in) :: ptype character(len=*), intent(in) :: ptype
integer, intent(out) :: info integer, intent(out) :: info
integer, optional, intent(in) :: nlev integer, optional, intent(in) :: nlev
end subroutine mld_sprecinit end subroutine mld_sprecinit
subroutine mld_dprecinit(p,ptype,info,nlev) subroutine mld_dprecinit(p,ptype,info,nlev)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dprec_type
type(mld_dprec_type), intent(inout) :: p type(mld_dprec_type), intent(inout) :: p
character(len=*), intent(in) :: ptype character(len=*), intent(in) :: ptype
integer, intent(out) :: info integer, intent(out) :: info
integer, optional, intent(in) :: nlev integer, optional, intent(in) :: nlev
end subroutine mld_dprecinit end subroutine mld_dprecinit
subroutine mld_cprecinit(p,ptype,info,nlev) subroutine mld_cprecinit(p,ptype,info,nlev)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cprec_type
type(mld_cprec_type), intent(inout) :: p type(mld_cprec_type), intent(inout) :: p
character(len=*), intent(in) :: ptype character(len=*), intent(in) :: ptype
integer, intent(out) :: info integer, intent(out) :: info
integer, optional, intent(in) :: nlev integer, optional, intent(in) :: nlev
end subroutine mld_cprecinit end subroutine mld_cprecinit
subroutine mld_zprecinit(p,ptype,info,nlev) subroutine mld_zprecinit(p,ptype,info,nlev)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zprec_type
type(mld_zprec_type), intent(inout) :: p type(mld_zprec_type), intent(inout) :: p
character(len=*), intent(in) :: ptype character(len=*), intent(in) :: ptype
integer, intent(out) :: info integer, intent(out) :: info
@ -84,8 +84,8 @@ module mld_prec_mod
interface mld_precset interface mld_precset
subroutine mld_sprecseti(p,what,val,info,ilev) subroutine mld_sprecseti(p,what,val,info,ilev)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sprec_type
type(mld_sprec_type), intent(inout) :: p type(mld_sprec_type), intent(inout) :: p
integer, intent(in) :: what integer, intent(in) :: what
integer, intent(in) :: val integer, intent(in) :: val
@ -93,8 +93,8 @@ module mld_prec_mod
integer, optional, intent(in) :: ilev integer, optional, intent(in) :: ilev
end subroutine mld_sprecseti end subroutine mld_sprecseti
subroutine mld_sprecsetr(p,what,val,info,ilev) subroutine mld_sprecsetr(p,what,val,info,ilev)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sprec_type
type(mld_sprec_type), intent(inout) :: p type(mld_sprec_type), intent(inout) :: p
integer, intent(in) :: what integer, intent(in) :: what
real(psb_spk_), intent(in) :: val real(psb_spk_), intent(in) :: val
@ -102,8 +102,8 @@ module mld_prec_mod
integer, optional, intent(in) :: ilev integer, optional, intent(in) :: ilev
end subroutine mld_sprecsetr end subroutine mld_sprecsetr
subroutine mld_sprecsetc(p,what,string,info,ilev) subroutine mld_sprecsetc(p,what,string,info,ilev)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sprec_type
type(mld_sprec_type), intent(inout) :: p type(mld_sprec_type), intent(inout) :: p
integer, intent(in) :: what integer, intent(in) :: what
character(len=*), intent(in) :: string character(len=*), intent(in) :: string
@ -111,8 +111,8 @@ module mld_prec_mod
integer, optional, intent(in) :: ilev integer, optional, intent(in) :: ilev
end subroutine mld_sprecsetc end subroutine mld_sprecsetc
subroutine mld_dprecseti(p,what,val,info,ilev) subroutine mld_dprecseti(p,what,val,info,ilev)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dprec_type
type(mld_dprec_type), intent(inout) :: p type(mld_dprec_type), intent(inout) :: p
integer, intent(in) :: what integer, intent(in) :: what
integer, intent(in) :: val integer, intent(in) :: val
@ -120,17 +120,17 @@ module mld_prec_mod
integer, optional, intent(in) :: ilev integer, optional, intent(in) :: ilev
end subroutine mld_dprecseti end subroutine mld_dprecseti
subroutine mld_dprecsetr(p,what,val,info,ilev) subroutine mld_dprecsetr(p,what,val,info,ilev)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dprec_type
type(mld_dprec_type), intent(inout) :: p type(mld_dprec_type), intent(inout) :: p
integer, intent(in) :: what integer, intent(in) :: what
real(psb_dpk_), intent(in) :: val real(psb_dpk_), intent(in) :: val
integer, intent(out) :: info integer, intent(out) :: info
integer, optional, intent(in) :: ilev integer, optional, intent(in) :: ilev
end subroutine mld_dprecsetr end subroutine mld_dprecsetr
subroutine mld_dprecsetc(p,what,string,info,ilev) subroutine mld_dprecsetc(p,what,string,info,ilev)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dprec_type
type(mld_dprec_type), intent(inout) :: p type(mld_dprec_type), intent(inout) :: p
integer, intent(in) :: what integer, intent(in) :: what
character(len=*), intent(in) :: string character(len=*), intent(in) :: string
@ -138,8 +138,8 @@ module mld_prec_mod
integer, optional, intent(in) :: ilev integer, optional, intent(in) :: ilev
end subroutine mld_dprecsetc end subroutine mld_dprecsetc
subroutine mld_cprecseti(p,what,val,info,ilev) subroutine mld_cprecseti(p,what,val,info,ilev)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cprec_type
type(mld_cprec_type), intent(inout) :: p type(mld_cprec_type), intent(inout) :: p
integer, intent(in) :: what integer, intent(in) :: what
integer, intent(in) :: val integer, intent(in) :: val
@ -147,17 +147,17 @@ module mld_prec_mod
integer, optional, intent(in) :: ilev integer, optional, intent(in) :: ilev
end subroutine mld_cprecseti end subroutine mld_cprecseti
subroutine mld_cprecsetr(p,what,val,info,ilev) subroutine mld_cprecsetr(p,what,val,info,ilev)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cprec_type
type(mld_cprec_type), intent(inout) :: p type(mld_cprec_type), intent(inout) :: p
integer, intent(in) :: what integer, intent(in) :: what
real(psb_spk_), intent(in) :: val real(psb_spk_), intent(in) :: val
integer, intent(out) :: info integer, intent(out) :: info
integer, optional, intent(in) :: ilev integer, optional, intent(in) :: ilev
end subroutine mld_cprecsetr end subroutine mld_cprecsetr
subroutine mld_cprecsetc(p,what,string,info,ilev) subroutine mld_cprecsetc(p,what,string,info,ilev)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cprec_type
type(mld_cprec_type), intent(inout) :: p type(mld_cprec_type), intent(inout) :: p
integer, intent(in) :: what integer, intent(in) :: what
character(len=*), intent(in) :: string character(len=*), intent(in) :: string
@ -165,8 +165,8 @@ module mld_prec_mod
integer, optional, intent(in) :: ilev integer, optional, intent(in) :: ilev
end subroutine mld_cprecsetc end subroutine mld_cprecsetc
subroutine mld_zprecseti(p,what,val,info,ilev) subroutine mld_zprecseti(p,what,val,info,ilev)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zprec_type
type(mld_zprec_type), intent(inout) :: p type(mld_zprec_type), intent(inout) :: p
integer, intent(in) :: what integer, intent(in) :: what
integer, intent(in) :: val integer, intent(in) :: val
@ -174,17 +174,17 @@ module mld_prec_mod
integer, optional, intent(in) :: ilev integer, optional, intent(in) :: ilev
end subroutine mld_zprecseti end subroutine mld_zprecseti
subroutine mld_zprecsetr(p,what,val,info,ilev) subroutine mld_zprecsetr(p,what,val,info,ilev)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zprec_type
type(mld_zprec_type), intent(inout) :: p type(mld_zprec_type), intent(inout) :: p
integer, intent(in) :: what integer, intent(in) :: what
real(psb_dpk_), intent(in) :: val real(psb_dpk_), intent(in) :: val
integer, intent(out) :: info integer, intent(out) :: info
integer, optional, intent(in) :: ilev integer, optional, intent(in) :: ilev
end subroutine mld_zprecsetr end subroutine mld_zprecsetr
subroutine mld_zprecsetc(p,what,string,info,ilev) subroutine mld_zprecsetc(p,what,string,info,ilev)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zprec_type
type(mld_zprec_type), intent(inout) :: p type(mld_zprec_type), intent(inout) :: p
integer, intent(in) :: what integer, intent(in) :: what
character(len=*), intent(in) :: string character(len=*), intent(in) :: string
@ -195,26 +195,26 @@ module mld_prec_mod
interface mld_precfree interface mld_precfree
subroutine mld_sprecfree(p,info) subroutine mld_sprecfree(p,info)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sprec_type
type(mld_sprec_type), intent(inout) :: p type(mld_sprec_type), intent(inout) :: p
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_sprecfree end subroutine mld_sprecfree
subroutine mld_dprecfree(p,info) subroutine mld_dprecfree(p,info)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dprec_type
type(mld_dprec_type), intent(inout) :: p type(mld_dprec_type), intent(inout) :: p
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_dprecfree end subroutine mld_dprecfree
subroutine mld_cprecfree(p,info) subroutine mld_cprecfree(p,info)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cprec_type
type(mld_cprec_type), intent(inout) :: p type(mld_cprec_type), intent(inout) :: p
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_cprecfree end subroutine mld_cprecfree
subroutine mld_zprecfree(p,info) subroutine mld_zprecfree(p,info)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zprec_type
type(mld_zprec_type), intent(inout) :: p type(mld_zprec_type), intent(inout) :: p
integer, intent(out) :: info integer, intent(out) :: info
end subroutine mld_zprecfree end subroutine mld_zprecfree
@ -222,8 +222,8 @@ module mld_prec_mod
interface mld_precaply interface mld_precaply
subroutine mld_sprec_aply(prec,x,y,desc_data,info,trans,work) subroutine mld_sprec_aply(prec,x,y,desc_data,info,trans,work)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sprec_type
type(psb_desc_type),intent(in) :: desc_data type(psb_desc_type),intent(in) :: desc_data
type(mld_sprec_type), intent(in) :: prec type(mld_sprec_type), intent(in) :: prec
real(psb_spk_),intent(in) :: x(:) real(psb_spk_),intent(in) :: x(:)
@ -233,8 +233,8 @@ module mld_prec_mod
real(psb_spk_),intent(inout), optional, target :: work(:) real(psb_spk_),intent(inout), optional, target :: work(:)
end subroutine mld_sprec_aply end subroutine mld_sprec_aply
subroutine mld_sprec_aply1(prec,x,desc_data,info,trans) subroutine mld_sprec_aply1(prec,x,desc_data,info,trans)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sprec_type
type(psb_desc_type),intent(in) :: desc_data type(psb_desc_type),intent(in) :: desc_data
type(mld_sprec_type), intent(in) :: prec type(mld_sprec_type), intent(in) :: prec
real(psb_spk_),intent(inout) :: x(:) real(psb_spk_),intent(inout) :: x(:)
@ -242,8 +242,8 @@ module mld_prec_mod
character(len=1), optional :: trans character(len=1), optional :: trans
end subroutine mld_sprec_aply1 end subroutine mld_sprec_aply1
subroutine mld_dprec_aply(prec,x,y,desc_data,info,trans,work) subroutine mld_dprec_aply(prec,x,y,desc_data,info,trans,work)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dprec_type
type(psb_desc_type),intent(in) :: desc_data type(psb_desc_type),intent(in) :: desc_data
type(mld_dprec_type), intent(in) :: prec type(mld_dprec_type), intent(in) :: prec
real(psb_dpk_),intent(in) :: x(:) real(psb_dpk_),intent(in) :: x(:)
@ -253,8 +253,8 @@ module mld_prec_mod
real(psb_dpk_),intent(inout), optional, target :: work(:) real(psb_dpk_),intent(inout), optional, target :: work(:)
end subroutine mld_dprec_aply end subroutine mld_dprec_aply
subroutine mld_dprec_aply1(prec,x,desc_data,info,trans) subroutine mld_dprec_aply1(prec,x,desc_data,info,trans)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dprec_type
type(psb_desc_type),intent(in) :: desc_data type(psb_desc_type),intent(in) :: desc_data
type(mld_dprec_type), intent(in) :: prec type(mld_dprec_type), intent(in) :: prec
real(psb_dpk_),intent(inout) :: x(:) real(psb_dpk_),intent(inout) :: x(:)
@ -262,8 +262,8 @@ module mld_prec_mod
character(len=1), optional :: trans character(len=1), optional :: trans
end subroutine mld_dprec_aply1 end subroutine mld_dprec_aply1
subroutine mld_cprec_aply(prec,x,y,desc_data,info,trans,work) subroutine mld_cprec_aply(prec,x,y,desc_data,info,trans,work)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cprec_type
type(psb_desc_type),intent(in) :: desc_data type(psb_desc_type),intent(in) :: desc_data
type(mld_cprec_type), intent(in) :: prec type(mld_cprec_type), intent(in) :: prec
complex(psb_spk_),intent(in) :: x(:) complex(psb_spk_),intent(in) :: x(:)
@ -273,8 +273,8 @@ module mld_prec_mod
complex(psb_spk_),intent(inout), optional, target :: work(:) complex(psb_spk_),intent(inout), optional, target :: work(:)
end subroutine mld_cprec_aply end subroutine mld_cprec_aply
subroutine mld_cprec_aply1(prec,x,desc_data,info,trans) subroutine mld_cprec_aply1(prec,x,desc_data,info,trans)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cprec_type
type(psb_desc_type),intent(in) :: desc_data type(psb_desc_type),intent(in) :: desc_data
type(mld_cprec_type), intent(in) :: prec type(mld_cprec_type), intent(in) :: prec
complex(psb_spk_),intent(inout) :: x(:) complex(psb_spk_),intent(inout) :: x(:)
@ -282,8 +282,8 @@ module mld_prec_mod
character(len=1), optional :: trans character(len=1), optional :: trans
end subroutine mld_cprec_aply1 end subroutine mld_cprec_aply1
subroutine mld_zprec_aply(prec,x,y,desc_data,info,trans,work) subroutine mld_zprec_aply(prec,x,y,desc_data,info,trans,work)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zprec_type
type(psb_desc_type),intent(in) :: desc_data type(psb_desc_type),intent(in) :: desc_data
type(mld_zprec_type), intent(in) :: prec type(mld_zprec_type), intent(in) :: prec
complex(psb_dpk_),intent(in) :: x(:) complex(psb_dpk_),intent(in) :: x(:)
@ -293,8 +293,8 @@ module mld_prec_mod
complex(psb_dpk_),intent(inout), optional, target :: work(:) complex(psb_dpk_),intent(inout), optional, target :: work(:)
end subroutine mld_zprec_aply end subroutine mld_zprec_aply
subroutine mld_zprec_aply1(prec,x,desc_data,info,trans) subroutine mld_zprec_aply1(prec,x,desc_data,info,trans)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zprec_type
type(psb_desc_type),intent(in) :: desc_data type(psb_desc_type),intent(in) :: desc_data
type(mld_zprec_type), intent(in) :: prec type(mld_zprec_type), intent(in) :: prec
complex(psb_dpk_),intent(inout) :: x(:) complex(psb_dpk_),intent(inout) :: x(:)
@ -305,8 +305,8 @@ module mld_prec_mod
interface mld_precbld interface mld_precbld
subroutine mld_sprecbld(a,desc_a,prec,info) subroutine mld_sprecbld(a,desc_a,prec,info)
use psb_base_mod use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_sprec_type
implicit none implicit none
type(psb_sspmat_type), intent(in), target :: a type(psb_sspmat_type), intent(in), target :: a
type(psb_desc_type), intent(in), target :: desc_a type(psb_desc_type), intent(in), target :: desc_a
@ -315,8 +315,8 @@ module mld_prec_mod
!!$ character, intent(in),optional :: upd !!$ character, intent(in),optional :: upd
end subroutine mld_sprecbld end subroutine mld_sprecbld
subroutine mld_dprecbld(a,desc_a,prec,info) subroutine mld_dprecbld(a,desc_a,prec,info)
use psb_base_mod use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_dprec_type
implicit none implicit none
type(psb_dspmat_type), intent(in), target :: a type(psb_dspmat_type), intent(in), target :: a
type(psb_desc_type), intent(in), target :: desc_a type(psb_desc_type), intent(in), target :: desc_a
@ -325,8 +325,8 @@ module mld_prec_mod
!!$ character, intent(in),optional :: upd !!$ character, intent(in),optional :: upd
end subroutine mld_dprecbld end subroutine mld_dprecbld
subroutine mld_cprecbld(a,desc_a,prec,info) subroutine mld_cprecbld(a,desc_a,prec,info)
use psb_base_mod use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type use mld_prec_type, only : mld_cprec_type
implicit none implicit none
type(psb_cspmat_type), intent(in), target :: a type(psb_cspmat_type), intent(in), target :: a
type(psb_desc_type), intent(in), target :: desc_a type(psb_desc_type), intent(in), target :: desc_a
@ -335,8 +335,8 @@ module mld_prec_mod
!!$ character, intent(in),optional :: upd !!$ character, intent(in),optional :: upd
end subroutine mld_cprecbld end subroutine mld_cprecbld
subroutine mld_zprecbld(a,desc_a,prec,info) subroutine mld_zprecbld(a,desc_a,prec,info)
use psb_base_mod use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type use mld_prec_type, only : mld_zprec_type
implicit none implicit none
type(psb_zspmat_type), intent(in), target :: a type(psb_zspmat_type), intent(in), target :: a
type(psb_desc_type), intent(in), target :: desc_a type(psb_desc_type), intent(in), target :: desc_a

@ -65,7 +65,8 @@ module mld_prec_type
use psb_base_mod, only :& use psb_base_mod, only :&
& psb_dspmat_type, psb_zspmat_type,& & psb_dspmat_type, psb_zspmat_type,&
& psb_sspmat_type, psb_cspmat_type,& & psb_sspmat_type, psb_cspmat_type,&
& psb_desc_type, psb_inter_desc_type, psb_sizeof, psb_dpk_, psb_spk_ & psb_desc_type, psb_inter_desc_type, psb_sizeof, psb_dpk_, psb_spk_,&
& psb_sp_free, psb_cdfree
! !
! Type: mld_dprec_type, mld_zprec_type ! Type: mld_dprec_type, mld_zprec_type
@ -403,7 +404,6 @@ contains
! !
function mld_sprec_sizeof(prec) function mld_sprec_sizeof(prec)
use psb_base_mod
type(mld_sprec_type), intent(in) :: prec type(mld_sprec_type), intent(in) :: prec
integer :: mld_dprec_sizeof integer :: mld_dprec_sizeof
integer :: val,i integer :: val,i
@ -417,7 +417,6 @@ contains
end function mld_sprec_sizeof end function mld_sprec_sizeof
function mld_dprec_sizeof(prec) function mld_dprec_sizeof(prec)
use psb_base_mod
type(mld_dprec_type), intent(in) :: prec type(mld_dprec_type), intent(in) :: prec
integer :: mld_dprec_sizeof integer :: mld_dprec_sizeof
integer :: val,i integer :: val,i
@ -431,7 +430,6 @@ contains
end function mld_dprec_sizeof end function mld_dprec_sizeof
function mld_cprec_sizeof(prec) function mld_cprec_sizeof(prec)
use psb_base_mod
type(mld_cprec_type), intent(in) :: prec type(mld_cprec_type), intent(in) :: prec
integer :: mld_cprec_sizeof integer :: mld_cprec_sizeof
integer :: val,i integer :: val,i
@ -445,7 +443,6 @@ contains
end function mld_cprec_sizeof end function mld_cprec_sizeof
function mld_zprec_sizeof(prec) function mld_zprec_sizeof(prec)
use psb_base_mod
type(mld_zprec_type), intent(in) :: prec type(mld_zprec_type), intent(in) :: prec
integer :: mld_zprec_sizeof integer :: mld_zprec_sizeof
integer :: val,i integer :: val,i
@ -463,7 +460,6 @@ contains
! !
function mld_sbaseprc_sizeof(prec) function mld_sbaseprc_sizeof(prec)
use psb_base_mod
type(mld_sbaseprc_type), intent(in) :: prec type(mld_sbaseprc_type), intent(in) :: prec
integer :: mld_dbaseprc_sizeof integer :: mld_dbaseprc_sizeof
integer :: val,i integer :: val,i
@ -500,7 +496,6 @@ contains
end function mld_sbaseprc_sizeof end function mld_sbaseprc_sizeof
function mld_dbaseprc_sizeof(prec) function mld_dbaseprc_sizeof(prec)
use psb_base_mod
type(mld_dbaseprc_type), intent(in) :: prec type(mld_dbaseprc_type), intent(in) :: prec
integer :: mld_dbaseprc_sizeof integer :: mld_dbaseprc_sizeof
integer :: val,i integer :: val,i
@ -537,7 +532,6 @@ contains
end function mld_dbaseprc_sizeof end function mld_dbaseprc_sizeof
function mld_cbaseprc_sizeof(prec) function mld_cbaseprc_sizeof(prec)
use psb_base_mod
type(mld_cbaseprc_type), intent(in) :: prec type(mld_cbaseprc_type), intent(in) :: prec
integer :: mld_zbaseprc_sizeof integer :: mld_zbaseprc_sizeof
integer :: val,i integer :: val,i
@ -574,7 +568,6 @@ contains
end function mld_cbaseprc_sizeof end function mld_cbaseprc_sizeof
function mld_zbaseprc_sizeof(prec) function mld_zbaseprc_sizeof(prec)
use psb_base_mod
type(mld_zbaseprc_type), intent(in) :: prec type(mld_zbaseprc_type), intent(in) :: prec
integer :: mld_zbaseprc_sizeof integer :: mld_zbaseprc_sizeof
integer :: val,i integer :: val,i
@ -626,24 +619,20 @@ contains
! The preconditioner data structure to be printed out. ! The preconditioner data structure to be printed out.
! !
subroutine mld_out_prec_descr(p) subroutine mld_out_prec_descr(p)
use psb_base_mod
type(mld_dprec_type), intent(in) :: p type(mld_dprec_type), intent(in) :: p
call mld_file_prec_descr(6,p) call mld_file_prec_descr(6,p)
end subroutine mld_out_prec_descr end subroutine mld_out_prec_descr
subroutine mld_zout_prec_descr(p) subroutine mld_zout_prec_descr(p)
use psb_base_mod
type(mld_zprec_type), intent(in) :: p type(mld_zprec_type), intent(in) :: p
call mld_zfile_prec_descr(6,p) call mld_zfile_prec_descr(6,p)
end subroutine mld_zout_prec_descr end subroutine mld_zout_prec_descr
subroutine mld_sout_prec_descr(p) subroutine mld_sout_prec_descr(p)
use psb_base_mod
type(mld_sprec_type), intent(in) :: p type(mld_sprec_type), intent(in) :: p
call mld_sfile_prec_descr(6,p) call mld_sfile_prec_descr(6,p)
end subroutine mld_sout_prec_descr end subroutine mld_sout_prec_descr
subroutine mld_cout_prec_descr(p) subroutine mld_cout_prec_descr(p)
use psb_base_mod
type(mld_cprec_type), intent(in) :: p type(mld_cprec_type), intent(in) :: p
call mld_cfile_prec_descr(6,p) call mld_cfile_prec_descr(6,p)
end subroutine mld_cout_prec_descr end subroutine mld_cout_prec_descr
@ -663,7 +652,6 @@ contains
! !
subroutine mld_file_prec_descr(iout,p) subroutine mld_file_prec_descr(iout,p)
use psb_base_mod
! Arguments ! Arguments
integer, intent(in) :: iout integer, intent(in) :: iout
@ -768,7 +756,6 @@ contains
subroutine mld_sfile_prec_descr(iout,p) subroutine mld_sfile_prec_descr(iout,p)
use psb_base_mod
! Arguments ! Arguments
integer, intent(in) :: iout integer, intent(in) :: iout
@ -872,7 +859,6 @@ contains
end subroutine mld_sfile_prec_descr end subroutine mld_sfile_prec_descr
function mld_prec_short_descr(p) function mld_prec_short_descr(p)
use psb_base_mod
type(mld_dprec_type), intent(in) :: p type(mld_dprec_type), intent(in) :: p
character(len=20) :: mld_prec_short_descr character(len=20) :: mld_prec_short_descr
mld_prec_short_descr = ' ' mld_prec_short_descr = ' '
@ -894,7 +880,6 @@ contains
! !
subroutine mld_zfile_prec_descr(iout,p) subroutine mld_zfile_prec_descr(iout,p)
use psb_base_mod
! Arguments ! Arguments
integer, intent(in) :: iout integer, intent(in) :: iout
@ -999,8 +984,6 @@ contains
subroutine mld_cfile_prec_descr(iout,p) subroutine mld_cfile_prec_descr(iout,p)
use psb_base_mod
! Arguments ! Arguments
integer, intent(in) :: iout integer, intent(in) :: iout
type(mld_cprec_type), intent(in) :: p type(mld_cprec_type), intent(in) :: p
@ -1103,7 +1086,6 @@ contains
end subroutine mld_cfile_prec_descr end subroutine mld_cfile_prec_descr
function mld_zprec_short_descr(p) function mld_zprec_short_descr(p)
use psb_base_mod
type(mld_zprec_type), intent(in) :: p type(mld_zprec_type), intent(in) :: p
character(len=20) :: mld_zprec_short_descr character(len=20) :: mld_zprec_short_descr
mld_zprec_short_descr = ' ' mld_zprec_short_descr = ' '
@ -1116,7 +1098,6 @@ contains
! !
function is_legal_base_prec(ip) function is_legal_base_prec(ip)
use psb_base_mod
integer, intent(in) :: ip integer, intent(in) :: ip
logical :: is_legal_base_prec logical :: is_legal_base_prec
@ -1124,7 +1105,6 @@ contains
return return
end function is_legal_base_prec end function is_legal_base_prec
function is_legal_n_ovr(ip) function is_legal_n_ovr(ip)
use psb_base_mod
integer, intent(in) :: ip integer, intent(in) :: ip
logical :: is_legal_n_ovr logical :: is_legal_n_ovr
@ -1132,14 +1112,12 @@ contains
return return
end function is_legal_n_ovr end function is_legal_n_ovr
function is_legal_renum(ip) function is_legal_renum(ip)
use psb_base_mod
integer, intent(in) :: ip integer, intent(in) :: ip
logical :: is_legal_renum logical :: is_legal_renum
is_legal_renum = ((ip >= 0).and.(ip <= mld_max_renum_)) is_legal_renum = ((ip >= 0).and.(ip <= mld_max_renum_))
return return
end function is_legal_renum end function is_legal_renum
function is_legal_jac_sweeps(ip) function is_legal_jac_sweeps(ip)
use psb_base_mod
integer, intent(in) :: ip integer, intent(in) :: ip
logical :: is_legal_jac_sweeps logical :: is_legal_jac_sweeps
@ -1147,21 +1125,18 @@ contains
return return
end function is_legal_jac_sweeps end function is_legal_jac_sweeps
function is_legal_prolong(ip) function is_legal_prolong(ip)
use psb_base_mod
integer, intent(in) :: ip integer, intent(in) :: ip
logical :: is_legal_prolong logical :: is_legal_prolong
is_legal_prolong = ((ip>=psb_none_).and.(ip<=psb_square_root_)) is_legal_prolong = ((ip>=psb_none_).and.(ip<=psb_square_root_))
return return
end function is_legal_prolong end function is_legal_prolong
function is_legal_restrict(ip) function is_legal_restrict(ip)
use psb_base_mod
integer, intent(in) :: ip integer, intent(in) :: ip
logical :: is_legal_restrict logical :: is_legal_restrict
is_legal_restrict = ((ip==psb_nohalo_).or.(ip==psb_halo_)) is_legal_restrict = ((ip==psb_nohalo_).or.(ip==psb_halo_))
return return
end function is_legal_restrict end function is_legal_restrict
function is_legal_ml_type(ip) function is_legal_ml_type(ip)
use psb_base_mod
integer, intent(in) :: ip integer, intent(in) :: ip
logical :: is_legal_ml_type logical :: is_legal_ml_type
@ -1169,7 +1144,6 @@ contains
return return
end function is_legal_ml_type end function is_legal_ml_type
function is_legal_ml_aggr_alg(ip) function is_legal_ml_aggr_alg(ip)
use psb_base_mod
integer, intent(in) :: ip integer, intent(in) :: ip
logical :: is_legal_ml_aggr_alg logical :: is_legal_ml_aggr_alg
@ -1177,7 +1151,6 @@ contains
return return
end function is_legal_ml_aggr_alg end function is_legal_ml_aggr_alg
function is_legal_ml_smooth_pos(ip) function is_legal_ml_smooth_pos(ip)
use psb_base_mod
integer, intent(in) :: ip integer, intent(in) :: ip
logical :: is_legal_ml_smooth_pos logical :: is_legal_ml_smooth_pos
@ -1185,7 +1158,6 @@ contains
return return
end function is_legal_ml_smooth_pos end function is_legal_ml_smooth_pos
function is_legal_ml_aggr_kind(ip) function is_legal_ml_aggr_kind(ip)
use psb_base_mod
integer, intent(in) :: ip integer, intent(in) :: ip
logical :: is_legal_ml_aggr_kind logical :: is_legal_ml_aggr_kind
@ -1193,7 +1165,6 @@ contains
return return
end function is_legal_ml_aggr_kind end function is_legal_ml_aggr_kind
function is_legal_ml_coarse_mat(ip) function is_legal_ml_coarse_mat(ip)
use psb_base_mod
integer, intent(in) :: ip integer, intent(in) :: ip
logical :: is_legal_ml_coarse_mat logical :: is_legal_ml_coarse_mat
@ -1201,7 +1172,6 @@ contains
return return
end function is_legal_ml_coarse_mat end function is_legal_ml_coarse_mat
function is_distr_ml_coarse_mat(ip) function is_distr_ml_coarse_mat(ip)
use psb_base_mod
integer, intent(in) :: ip integer, intent(in) :: ip
logical :: is_distr_ml_coarse_mat logical :: is_distr_ml_coarse_mat
@ -1209,7 +1179,6 @@ contains
return return
end function is_distr_ml_coarse_mat end function is_distr_ml_coarse_mat
function is_legal_ml_fact(ip) function is_legal_ml_fact(ip)
use psb_base_mod
integer, intent(in) :: ip integer, intent(in) :: ip
logical :: is_legal_ml_fact logical :: is_legal_ml_fact
! Here the minimum is really 1, mld_fact_none_ is not acceptable. ! Here the minimum is really 1, mld_fact_none_ is not acceptable.
@ -1217,7 +1186,6 @@ contains
return return
end function is_legal_ml_fact end function is_legal_ml_fact
function is_legal_ml_lev(ip) function is_legal_ml_lev(ip)
use psb_base_mod
integer, intent(in) :: ip integer, intent(in) :: ip
logical :: is_legal_ml_lev logical :: is_legal_ml_lev
@ -1225,14 +1193,12 @@ contains
return return
end function is_legal_ml_lev end function is_legal_ml_lev
function is_legal_omega(ip) function is_legal_omega(ip)
use psb_base_mod
real(psb_dpk_), intent(in) :: ip real(psb_dpk_), intent(in) :: ip
logical :: is_legal_omega logical :: is_legal_omega
is_legal_omega = ((ip>=0.0d0).and.(ip<=2.0d0)) is_legal_omega = ((ip>=0.0d0).and.(ip<=2.0d0))
return return
end function is_legal_omega end function is_legal_omega
function is_legal_fact_thrs(ip) function is_legal_fact_thrs(ip)
use psb_base_mod
real(psb_dpk_), intent(in) :: ip real(psb_dpk_), intent(in) :: ip
logical :: is_legal_fact_thrs logical :: is_legal_fact_thrs
@ -1241,14 +1207,12 @@ contains
end function is_legal_fact_thrs end function is_legal_fact_thrs
function is_legal_s_omega(ip) function is_legal_s_omega(ip)
use psb_base_mod
real(psb_spk_), intent(in) :: ip real(psb_spk_), intent(in) :: ip
logical :: is_legal_s_omega logical :: is_legal_s_omega
is_legal_s_omega = ((ip>=0.0).and.(ip<=2.0)) is_legal_s_omega = ((ip>=0.0).and.(ip<=2.0))
return return
end function is_legal_s_omega end function is_legal_s_omega
function is_legal_s_fact_thrs(ip) function is_legal_s_fact_thrs(ip)
use psb_base_mod
real(psb_spk_), intent(in) :: ip real(psb_spk_), intent(in) :: ip
logical :: is_legal_s_fact_thrs logical :: is_legal_s_fact_thrs
@ -1258,7 +1222,6 @@ contains
subroutine mld_icheck_def(ip,name,id,is_legal) subroutine mld_icheck_def(ip,name,id,is_legal)
use psb_base_mod
integer, intent(inout) :: ip integer, intent(inout) :: ip
integer, intent(in) :: id integer, intent(in) :: id
character(len=*), intent(in) :: name character(len=*), intent(in) :: name
@ -1278,13 +1241,12 @@ contains
end subroutine mld_icheck_def end subroutine mld_icheck_def
subroutine mld_scheck_def(ip,name,id,is_legal) subroutine mld_scheck_def(ip,name,id,is_legal)
use psb_base_mod
real(psb_spk_), intent(inout) :: ip real(psb_spk_), intent(inout) :: ip
real(psb_spk_), intent(in) :: id real(psb_spk_), intent(in) :: id
character(len=*), intent(in) :: name character(len=*), intent(in) :: name
interface interface
function is_legal(i) function is_legal(i)
use psb_base_mod use psb_base_mod, only : psb_spk_
real(psb_spk_), intent(in) :: i real(psb_spk_), intent(in) :: i
logical :: is_legal logical :: is_legal
end function is_legal end function is_legal
@ -1299,13 +1261,12 @@ contains
end subroutine mld_scheck_def end subroutine mld_scheck_def
subroutine mld_dcheck_def(ip,name,id,is_legal) subroutine mld_dcheck_def(ip,name,id,is_legal)
use psb_base_mod
real(psb_dpk_), intent(inout) :: ip real(psb_dpk_), intent(inout) :: ip
real(psb_dpk_), intent(in) :: id real(psb_dpk_), intent(in) :: id
character(len=*), intent(in) :: name character(len=*), intent(in) :: name
interface interface
function is_legal(i) function is_legal(i)
use psb_base_mod use psb_base_mod, only : psb_dpk_
real(psb_dpk_), intent(in) :: i real(psb_dpk_), intent(in) :: i
logical :: is_legal logical :: is_legal
end function is_legal end function is_legal
@ -1320,7 +1281,6 @@ contains
end subroutine mld_dcheck_def end subroutine mld_dcheck_def
subroutine mld_sbase_precfree(p,info) subroutine mld_sbase_precfree(p,info)
use psb_base_mod
type(mld_sbaseprc_type), intent(inout) :: p type(mld_sbaseprc_type), intent(inout) :: p
integer, intent(out) :: info integer, intent(out) :: info
@ -1397,7 +1357,6 @@ contains
end subroutine mld_sbase_precfree end subroutine mld_sbase_precfree
subroutine mld_nullify_sbaseprec(p) subroutine mld_nullify_sbaseprec(p)
use psb_base_mod
type(mld_sbaseprc_type), intent(inout) :: p type(mld_sbaseprc_type), intent(inout) :: p
@ -1408,7 +1367,6 @@ contains
subroutine mld_dbase_precfree(p,info) subroutine mld_dbase_precfree(p,info)
use psb_base_mod
type(mld_dbaseprc_type), intent(inout) :: p type(mld_dbaseprc_type), intent(inout) :: p
integer, intent(out) :: info integer, intent(out) :: info
@ -1485,7 +1443,6 @@ contains
end subroutine mld_dbase_precfree end subroutine mld_dbase_precfree
subroutine mld_nullify_dbaseprec(p) subroutine mld_nullify_dbaseprec(p)
use psb_base_mod
type(mld_dbaseprc_type), intent(inout) :: p type(mld_dbaseprc_type), intent(inout) :: p
@ -1495,7 +1452,6 @@ contains
end subroutine mld_nullify_dbaseprec end subroutine mld_nullify_dbaseprec
subroutine mld_cbase_precfree(p,info) subroutine mld_cbase_precfree(p,info)
use psb_base_mod
type(mld_cbaseprc_type), intent(inout) :: p type(mld_cbaseprc_type), intent(inout) :: p
integer, intent(out) :: info integer, intent(out) :: info
integer :: i integer :: i
@ -1565,7 +1521,6 @@ contains
end subroutine mld_cbase_precfree end subroutine mld_cbase_precfree
subroutine mld_nullify_cbaseprec(p) subroutine mld_nullify_cbaseprec(p)
use psb_base_mod
type(mld_cbaseprc_type), intent(inout) :: p type(mld_cbaseprc_type), intent(inout) :: p
@ -1575,7 +1530,6 @@ contains
end subroutine mld_nullify_cbaseprec end subroutine mld_nullify_cbaseprec
subroutine mld_zbase_precfree(p,info) subroutine mld_zbase_precfree(p,info)
use psb_base_mod
type(mld_zbaseprc_type), intent(inout) :: p type(mld_zbaseprc_type), intent(inout) :: p
integer, intent(out) :: info integer, intent(out) :: info
integer :: i integer :: i
@ -1645,7 +1599,6 @@ contains
end subroutine mld_zbase_precfree end subroutine mld_zbase_precfree
subroutine mld_nullify_zbaseprec(p) subroutine mld_nullify_zbaseprec(p)
use psb_base_mod
type(mld_zbaseprc_type), intent(inout) :: p type(mld_zbaseprc_type), intent(inout) :: p
@ -1656,7 +1609,6 @@ contains
function pr_to_str(iprec) function pr_to_str(iprec)
use psb_base_mod
integer, intent(in) :: iprec integer, intent(in) :: iprec
character(len=10) :: pr_to_str character(len=10) :: pr_to_str

Loading…
Cancel
Save