diff --git a/mlprec/Makefile b/mlprec/Makefile index e456103c..1375b047 100644 --- a/mlprec/Makefile +++ b/mlprec/Makefile @@ -6,29 +6,35 @@ HERE=. FINCLUDES=$(FMFLAG). $(FMFLAG)$(LIBDIR) $(FMFLAG)$(PSBLIBDIR) -MODOBJS=mld_prec_type.o mld_prec_mod.o +MODOBJS=mld_prec_type.o mld_prec_mod.o mld_inner_mod.o MPFOBJS=mld_daggrmat_raw_asb.o mld_daggrmat_smth_asb.o \ mld_zaggrmat_raw_asb.o mld_zaggrmat_smth_asb.o MPCOBJS=mld_dslud_interface.o mld_zslud_interface.o -F90OBJS=mld_das_bld.o mld_dslu_bld.o mld_dumf_bld.o mld_dilu0_fact.o\ +INNEROBJS=mld_das_bld.o mld_dslu_bld.o mld_dumf_bld.o mld_dilu0_fact.o\ mld_dmlprec_bld.o mld_dsp_renum.o mld_dfact_bld.o mld_dilu_bld.o \ - mld_dprecbld.o mld_dprecfree.o mld_dprecset.o mld_dprecinit.o\ mld_dbaseprec_bld.o mld_ddiag_bld.o mld_daggrmap_bld.o \ - mld_dprec_aply.o mld_dmlprec_aply.o mld_dslud_bld.o\ - mld_dbaseprec_aply.o mld_dsub_aply.o mld_dsub_solve.o mld_das_aply.o mld_daggrmat_asb.o \ + mld_dmlprec_aply.o mld_dslud_bld.o\ + mld_dbaseprec_aply.o mld_dsub_aply.o mld_dsub_solve.o \ + mld_das_aply.o mld_daggrmat_asb.o \ mld_zas_bld.o mld_zslu_bld.o mld_zumf_bld.o mld_zilu0_fact.o\ mld_zmlprec_bld.o mld_zsp_renum.o mld_zfact_bld.o mld_zilu_bld.o \ - mld_zprecbld.o mld_zprecfree.o mld_zprecset.o mld_zprecinit.o \ mld_zbaseprec_bld.o mld_zdiag_bld.o mld_zaggrmap_bld.o \ - mld_zprec_aply.o mld_zmlprec_aply.o mld_zslud_bld.o\ - mld_zbaseprec_aply.o mld_zsub_aply.o mld_zsub_solve.o mld_zas_aply.o mld_zaggrmat_asb.o\ + mld_zmlprec_aply.o mld_zslud_bld.o\ + mld_zbaseprec_aply.o mld_zsub_aply.o mld_zsub_solve.o \ + mld_zas_aply.o mld_zaggrmat_asb.o\ mld_diluk_fact.o mld_ziluk_fact.o mld_dilut_fact.o mld_zilut_fact.o \ $(MPFOBJS) +OUTEROBJS=mld_dprecbld.o mld_dprecfree.o mld_dprecset.o mld_dprecinit.o\ + mld_dprec_aply.o \ + mld_zprecbld.o mld_zprecfree.o mld_zprecset.o mld_zprecinit.o \ + mld_zprec_aply.o +F90OBJS=$(OUTEROBJS) $(INNEROBJS) + COBJS=mld_dslu_interface.o mld_dumf_interface.o mld_zslu_interface.o mld_zumf_interface.o OBJS=$(F90OBJS) $(COBJS) $(MPFOBJS) $(MPCOBJS) $(MODOBJS) LIBMOD=mld_prec_mod$(.mod) -LOCAL_MODS=$(LIBMOD) mld_prec_type$(.mod) +LOCAL_MODS=$(LIBMOD) mld_prec_type$(.mod) mld_inner_mod$(.mod) LIBNAME=libmld_prec.a lib: mpobjs $(OBJS) @@ -38,7 +44,7 @@ lib: mpobjs $(OBJS) /bin/cp -p $(LIBMOD) $(LOCAL_MODS) $(LIBDIR) $(F90OBJS) $(MPFOBJS): $(MODOBJS:.o=$(.mod)) -mld_prec_mod$(.mod): mld_prec_type$(.mod) +mld_prec_mod.o mld_innner_mod.o: mld_prec_type.o $(MODOBJS): $(PSBLIBDIR)/psb_base_mod$(.mod) diff --git a/mlprec/mld_daggrmap_bld.f90 b/mlprec/mld_daggrmap_bld.f90 index bacdd302..f46f6fa1 100644 --- a/mlprec/mld_daggrmap_bld.f90 +++ b/mlprec/mld_daggrmap_bld.f90 @@ -75,7 +75,7 @@ subroutine mld_daggrmap_bld(aggr_type,a,desc_a,nlaggr,ilaggr,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_daggrmap_bld + use mld_inner_mod, mld_protect_name => mld_daggrmap_bld implicit none diff --git a/mlprec/mld_daggrmat_asb.f90 b/mlprec/mld_daggrmat_asb.f90 index d0eb8456..f626938a 100644 --- a/mlprec/mld_daggrmat_asb.f90 +++ b/mlprec/mld_daggrmat_asb.f90 @@ -94,7 +94,7 @@ subroutine mld_daggrmat_asb(a,desc_a,ac,desc_ac,p,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_daggrmat_asb + use mld_inner_mod, mld_protect_name => mld_daggrmat_asb implicit none diff --git a/mlprec/mld_daggrmat_raw_asb.F90 b/mlprec/mld_daggrmat_raw_asb.F90 index d73dcbed..a28e70c6 100644 --- a/mlprec/mld_daggrmat_raw_asb.F90 +++ b/mlprec/mld_daggrmat_raw_asb.F90 @@ -76,7 +76,7 @@ ! subroutine mld_daggrmat_raw_asb(a,desc_a,ac,desc_ac,p,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_daggrmat_raw_asb + use mld_inner_mod, mld_protect_name => mld_daggrmat_raw_asb #ifdef MPI_MOD use mpi diff --git a/mlprec/mld_daggrmat_smth_asb.F90 b/mlprec/mld_daggrmat_smth_asb.F90 index 601695ba..fd965367 100644 --- a/mlprec/mld_daggrmat_smth_asb.F90 +++ b/mlprec/mld_daggrmat_smth_asb.F90 @@ -94,7 +94,7 @@ ! subroutine mld_daggrmat_smth_asb(a,desc_a,ac,desc_ac,p,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_daggrmat_smth_asb + use mld_inner_mod, mld_protect_name => mld_daggrmat_smth_asb #ifdef MPI_MOD use mpi diff --git a/mlprec/mld_das_aply.f90 b/mlprec/mld_das_aply.f90 index 1c6b0cda..0b80536f 100644 --- a/mlprec/mld_das_aply.f90 +++ b/mlprec/mld_das_aply.f90 @@ -75,7 +75,7 @@ subroutine mld_das_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_das_aply + use mld_inner_mod, mld_protect_name => mld_das_aply implicit none diff --git a/mlprec/mld_das_bld.f90 b/mlprec/mld_das_bld.f90 index db3b3f16..8e274a42 100644 --- a/mlprec/mld_das_bld.f90 +++ b/mlprec/mld_das_bld.f90 @@ -65,7 +65,7 @@ subroutine mld_das_bld(a,desc_a,p,upd,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_das_bld + use mld_inner_mod, mld_protect_name => mld_das_bld Implicit None diff --git a/mlprec/mld_dbaseprec_aply.f90 b/mlprec/mld_dbaseprec_aply.f90 index 1cb25e03..a03ef504 100644 --- a/mlprec/mld_dbaseprec_aply.f90 +++ b/mlprec/mld_dbaseprec_aply.f90 @@ -79,7 +79,7 @@ subroutine mld_dbaseprec_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_dbaseprec_aply + use mld_inner_mod, mld_protect_name => mld_dbaseprec_aply implicit none diff --git a/mlprec/mld_dbaseprec_bld.f90 b/mlprec/mld_dbaseprec_bld.f90 index 3fe58743..9e19076f 100644 --- a/mlprec/mld_dbaseprec_bld.f90 +++ b/mlprec/mld_dbaseprec_bld.f90 @@ -69,7 +69,7 @@ subroutine mld_dbaseprc_bld(a,desc_a,p,info,upd) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_dbaseprc_bld + use mld_inner_mod, mld_protect_name => mld_dbaseprc_bld Implicit None diff --git a/mlprec/mld_ddiag_bld.f90 b/mlprec/mld_ddiag_bld.f90 index c578dd77..fe585c56 100644 --- a/mlprec/mld_ddiag_bld.f90 +++ b/mlprec/mld_ddiag_bld.f90 @@ -58,7 +58,7 @@ subroutine mld_ddiag_bld(a,desc_a,p,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_ddiag_bld + use mld_inner_mod, mld_protect_name => mld_ddiag_bld Implicit None diff --git a/mlprec/mld_dfact_bld.f90 b/mlprec/mld_dfact_bld.f90 index 92af6339..26a71151 100644 --- a/mlprec/mld_dfact_bld.f90 +++ b/mlprec/mld_dfact_bld.f90 @@ -105,7 +105,7 @@ subroutine mld_dfact_bld(a,p,upd,info,blck) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_dfact_bld + use mld_inner_mod, mld_protect_name => mld_dfact_bld implicit none diff --git a/mlprec/mld_dilu0_fact.f90 b/mlprec/mld_dilu0_fact.f90 index a6a7e8a9..faaf9fe3 100644 --- a/mlprec/mld_dilu0_fact.f90 +++ b/mlprec/mld_dilu0_fact.f90 @@ -100,7 +100,7 @@ subroutine mld_dilu0_fact(ialg,a,l,u,d,info,blck) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_dilu0_fact + use mld_inner_mod, mld_protect_name => mld_dilu0_fact implicit none diff --git a/mlprec/mld_dilu_bld.f90 b/mlprec/mld_dilu_bld.f90 index c950c348..d3ae2696 100644 --- a/mlprec/mld_dilu_bld.f90 +++ b/mlprec/mld_dilu_bld.f90 @@ -89,7 +89,7 @@ subroutine mld_dilu_bld(a,p,upd,info,blck) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_dilu_bld + use mld_inner_mod, mld_protect_name => mld_dilu_bld implicit none diff --git a/mlprec/mld_diluk_fact.f90 b/mlprec/mld_diluk_fact.f90 index 4c1f4ccf..adf24ce2 100644 --- a/mlprec/mld_diluk_fact.f90 +++ b/mlprec/mld_diluk_fact.f90 @@ -97,7 +97,7 @@ subroutine mld_diluk_fact(fill_in,ialg,a,l,u,d,info,blck) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_diluk_fact + use mld_inner_mod, mld_protect_name => mld_diluk_fact implicit none diff --git a/mlprec/mld_dilut_fact.f90 b/mlprec/mld_dilut_fact.f90 index 088fee6f..7b2f48c6 100644 --- a/mlprec/mld_dilut_fact.f90 +++ b/mlprec/mld_dilut_fact.f90 @@ -93,7 +93,7 @@ subroutine mld_dilut_fact(fill_in,thres,a,l,u,d,info,blck) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_dilut_fact + use mld_inner_mod, mld_protect_name => mld_dilut_fact implicit none diff --git a/mlprec/mld_dmlprec_aply.f90 b/mlprec/mld_dmlprec_aply.f90 index 2ae9c7aa..0614e710 100644 --- a/mlprec/mld_dmlprec_aply.f90 +++ b/mlprec/mld_dmlprec_aply.f90 @@ -165,7 +165,7 @@ subroutine mld_dmlprec_aply(alpha,baseprecv,x,beta,y,desc_data,trans,work,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_dmlprec_aply + use mld_inner_mod, mld_protect_name => mld_dmlprec_aply implicit none diff --git a/mlprec/mld_dmlprec_bld.f90 b/mlprec/mld_dmlprec_bld.f90 index 3aa79803..1012f25d 100644 --- a/mlprec/mld_dmlprec_bld.f90 +++ b/mlprec/mld_dmlprec_bld.f90 @@ -60,7 +60,7 @@ subroutine mld_dmlprec_bld(a,desc_a,p,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_dmlprec_bld + use mld_inner_mod, mld_protect_name => mld_dmlprec_bld implicit none diff --git a/mlprec/mld_dprec_aply.f90 b/mlprec/mld_dprec_aply.f90 index a6f09082..d882bd72 100644 --- a/mlprec/mld_dprec_aply.f90 +++ b/mlprec/mld_dprec_aply.f90 @@ -72,6 +72,7 @@ subroutine mld_dprec_aply(prec,x,y,desc_data,info,trans,work) use psb_base_mod + use mld_inner_mod use mld_prec_mod, mld_protect_name => mld_dprec_aply implicit none @@ -197,6 +198,7 @@ end subroutine mld_dprec_aply subroutine mld_dprec_aply1(prec,x,desc_data,info,trans) use psb_base_mod + use mld_inner_mod use mld_prec_mod, mld_protect_name => mld_dprec_aply1 implicit none diff --git a/mlprec/mld_dprecbld.f90 b/mlprec/mld_dprecbld.f90 index 5f19e4c3..f69a3a24 100644 --- a/mlprec/mld_dprecbld.f90 +++ b/mlprec/mld_dprecbld.f90 @@ -64,6 +64,7 @@ subroutine mld_dprecbld(a,desc_a,p,info) use psb_base_mod + use mld_inner_mod use mld_prec_mod, protect => mld_dprecbld Implicit None diff --git a/mlprec/mld_dslu_bld.f90 b/mlprec/mld_dslu_bld.f90 index ef8c500f..638717d9 100644 --- a/mlprec/mld_dslu_bld.f90 +++ b/mlprec/mld_dslu_bld.f90 @@ -70,7 +70,7 @@ subroutine mld_dslu_bld(a,desc_a,p,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_dslu_bld + use mld_inner_mod, mld_protect_name => mld_dslu_bld implicit none diff --git a/mlprec/mld_dslud_bld.f90 b/mlprec/mld_dslud_bld.f90 index de65c3f8..08b4d6fe 100644 --- a/mlprec/mld_dslud_bld.f90 +++ b/mlprec/mld_dslud_bld.f90 @@ -67,7 +67,7 @@ subroutine mld_dsludist_bld(a,desc_a,p,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_dsludist_bld + use mld_inner_mod, mld_protect_name => mld_dsludist_bld implicit none diff --git a/mlprec/mld_dsp_renum.f90 b/mlprec/mld_dsp_renum.f90 index b213298a..3282e0d1 100644 --- a/mlprec/mld_dsp_renum.f90 +++ b/mlprec/mld_dsp_renum.f90 @@ -82,7 +82,7 @@ subroutine mld_dsp_renum(a,blck,p,atmp,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_dsp_renum + use mld_inner_mod, mld_protect_name => mld_dsp_renum implicit none diff --git a/mlprec/mld_dsub_aply.f90 b/mlprec/mld_dsub_aply.f90 index f4c6c8cc..f384289b 100644 --- a/mlprec/mld_dsub_aply.f90 +++ b/mlprec/mld_dsub_aply.f90 @@ -133,7 +133,7 @@ subroutine mld_dsub_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_dsub_aply + use mld_inner_mod, mld_protect_name => mld_dsub_aply implicit none diff --git a/mlprec/mld_dsub_solve.f90 b/mlprec/mld_dsub_solve.f90 index 98d26c99..6c75c1ac 100644 --- a/mlprec/mld_dsub_solve.f90 +++ b/mlprec/mld_dsub_solve.f90 @@ -100,7 +100,7 @@ subroutine mld_dsub_solve(alpha,prec,x,beta,y,desc_data,trans,work,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_dsub_solve + use mld_inner_mod, mld_protect_name => mld_dsub_solve implicit none diff --git a/mlprec/mld_dumf_bld.f90 b/mlprec/mld_dumf_bld.f90 index 0a2cd086..f176dd1b 100644 --- a/mlprec/mld_dumf_bld.f90 +++ b/mlprec/mld_dumf_bld.f90 @@ -76,7 +76,7 @@ subroutine mld_dumf_bld(a,desc_a,p,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_dumf_bld + use mld_inner_mod, mld_protect_name => mld_dumf_bld implicit none diff --git a/mlprec/mld_inner_mod.f90 b/mlprec/mld_inner_mod.f90 new file mode 100644 index 00000000..21bdf04c --- /dev/null +++ b/mlprec/mld_inner_mod.f90 @@ -0,0 +1,521 @@ +module mld_inner_mod + use mld_prec_type + interface mld_baseprec_aply + subroutine mld_dbaseprec_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) + use psb_base_mod + use mld_prec_type + type(psb_desc_type),intent(in) :: desc_data + type(mld_dbaseprc_type), intent(in) :: prec + real(kind(0.d0)),intent(in) :: x(:) + real(kind(0.d0)),intent(inout) :: y(:) + real(kind(0.d0)),intent(in) :: alpha,beta + character(len=1) :: trans + real(kind(0.d0)),target :: work(:) + integer, intent(out) :: info + end subroutine mld_dbaseprec_aply + subroutine mld_zbaseprec_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) + use psb_base_mod + use mld_prec_type + type(psb_desc_type),intent(in) :: desc_data + type(mld_zbaseprc_type), intent(in) :: prec + complex(kind(1.d0)),intent(in) :: x(:) + complex(kind(1.d0)),intent(inout) :: y(:) + complex(kind(1.d0)),intent(in) :: alpha,beta + character(len=1) :: trans + complex(kind(1.d0)),target :: work(:) + integer, intent(out) :: info + end subroutine mld_zbaseprec_aply + end interface + + interface mld_as_aply + subroutine mld_das_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) + use psb_base_mod + use mld_prec_type + type(psb_desc_type),intent(in) :: desc_data + type(mld_dbaseprc_type), intent(in) :: prec + real(kind(0.d0)),intent(in) :: x(:) + real(kind(0.d0)),intent(inout) :: y(:) + real(kind(0.d0)),intent(in) :: alpha,beta + character(len=1) :: trans + real(kind(0.d0)),target :: work(:) + integer, intent(out) :: info + end subroutine mld_das_aply + subroutine mld_zas_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) + use psb_base_mod + use mld_prec_type + type(psb_desc_type),intent(in) :: desc_data + type(mld_zbaseprc_type), intent(in) :: prec + complex(kind(1.d0)),intent(in) :: x(:) + complex(kind(1.d0)),intent(inout) :: y(:) + complex(kind(1.d0)),intent(in) :: alpha,beta + character(len=1) :: trans + complex(kind(1.d0)),target :: work(:) + integer, intent(out) :: info + end subroutine mld_zas_aply + end interface + + interface mld_mlprec_aply + subroutine mld_dmlprec_aply(alpha,baseprecv,x,beta,y,desc_data,trans,work,info) + use psb_base_mod + use mld_prec_type + type(psb_desc_type),intent(in) :: desc_data + type(mld_dbaseprc_type), intent(in) :: baseprecv(:) + real(kind(0.d0)),intent(in) :: alpha,beta + real(kind(0.d0)),intent(in) :: x(:) + real(kind(0.d0)),intent(inout) :: y(:) + character :: trans + real(kind(0.d0)),target :: work(:) + integer, intent(out) :: info + end subroutine mld_dmlprec_aply + subroutine mld_zmlprec_aply(alpha,baseprecv,x,beta,y,desc_data,trans,work,info) + use psb_base_mod + use mld_prec_type + type(psb_desc_type),intent(in) :: desc_data + type(mld_zbaseprc_type), intent(in) :: baseprecv(:) + complex(kind(0.d0)),intent(in) :: alpha,beta + complex(kind(0.d0)),intent(in) :: x(:) + complex(kind(0.d0)),intent(inout) :: y(:) + character :: trans + complex(kind(0.d0)),target :: work(:) + integer, intent(out) :: info + end subroutine mld_zmlprec_aply + end interface + + + interface mld_sub_aply + subroutine mld_dsub_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) + use psb_base_mod + use mld_prec_type + type(psb_desc_type), intent(in) :: desc_data + type(mld_dbaseprc_type), intent(in) :: prec + real(kind(0.d0)),intent(in) :: x(:) + real(kind(0.d0)),intent(inout) :: y(:) + real(kind(0.d0)),intent(in) :: alpha,beta + character(len=1),intent(in) :: trans + real(kind(0.d0)),target,intent(inout) :: work(:) + integer, intent(out) :: info + end subroutine mld_dsub_aply + subroutine mld_zsub_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) + use psb_base_mod + use mld_prec_type + type(psb_desc_type), intent(in) :: desc_data + type(mld_zbaseprc_type), intent(in) :: prec + complex(kind(0.d0)),intent(in) :: x(:) + complex(kind(0.d0)),intent(inout) :: y(:) + complex(kind(0.d0)),intent(in) :: alpha,beta + character(len=1),intent(in) :: trans + complex(kind(0.d0)),target,intent(inout) :: work(:) + integer, intent(out) :: info + end subroutine mld_zsub_aply + end interface + + + interface mld_sub_solve + subroutine mld_dsub_solve(alpha,prec,x,beta,y,desc_data,trans,work,info) + use psb_base_mod + use mld_prec_type + type(psb_desc_type), intent(in) :: desc_data + type(mld_dbaseprc_type), intent(in) :: prec + real(kind(0.d0)),intent(in) :: x(:) + real(kind(0.d0)),intent(inout) :: y(:) + real(kind(0.d0)),intent(in) :: alpha,beta + character(len=1),intent(in) :: trans + real(kind(0.d0)),target,intent(inout) :: work(:) + integer, intent(out) :: info + end subroutine mld_dsub_solve + subroutine mld_zsub_solve(alpha,prec,x,beta,y,desc_data,trans,work,info) + use psb_base_mod + use mld_prec_type + type(psb_desc_type), intent(in) :: desc_data + type(mld_zbaseprc_type), intent(in) :: prec + complex(kind(0.d0)),intent(in) :: x(:) + complex(kind(0.d0)),intent(inout) :: y(:) + complex(kind(0.d0)),intent(in) :: alpha,beta + character(len=1),intent(in) :: trans + complex(kind(0.d0)),target,intent(inout) :: work(:) + integer, intent(out) :: info + end subroutine mld_zsub_solve + end interface + + + interface mld_baseprc_bld + subroutine mld_dbaseprc_bld(a,desc_a,p,info,upd) + use psb_base_mod + use mld_prec_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_zbaseprc_bld(a,desc_a,p,info,upd) + use psb_base_mod + use mld_prec_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_das_bld(a,desc_a,p,upd,info) + use psb_base_mod + use mld_prec_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_zas_bld(a,desc_a,p,upd,info) + use psb_base_mod + use mld_prec_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_dmlprec_bld(a,desc_a,p,info) + use psb_base_mod + use mld_prec_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_zmlprec_bld(a,desc_a,p,info) + use psb_base_mod + use mld_prec_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_ddiag_bld(a,desc_data,p,info) + use psb_base_mod + use mld_prec_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_zdiag_bld(a,desc_data,p,info) + use psb_base_mod + use mld_prec_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_dfact_bld(a,p,upd,info,blck) + use psb_base_mod + use mld_prec_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_zfact_bld(a,p,upd,info,blck) + use psb_base_mod + use mld_prec_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_dilu_bld(a,p,upd,info,blck) + use psb_base_mod + use mld_prec_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_zilu_bld(a,p,upd,info,blck) + use psb_base_mod + use mld_prec_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_dsludist_bld(a,desc_a,p,info) + use psb_base_mod + use mld_prec_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_zsludist_bld(a,desc_a,p,info) + use psb_base_mod + use mld_prec_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_dslu_bld(a,desc_a,p,info) + use psb_base_mod + use mld_prec_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_zslu_bld(a,desc_a,p,info) + use psb_base_mod + use mld_prec_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_dumf_bld(a,desc_a,p,info) + use psb_base_mod + use mld_prec_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_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 + end interface + + interface mld_ilu0_fact + subroutine mld_dilu0_fact(ialg,a,l,u,d,info,blck) + use psb_base_mod + 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(kind(1.d0)), intent(inout) :: d(:) + end subroutine mld_dilu0_fact + subroutine mld_zilu0_fact(ialg,a,l,u,d,info,blck) + use psb_base_mod + 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(kind(1.d0)), intent(inout) :: d(:) + end subroutine mld_zilu0_fact + end interface + + interface mld_iluk_fact + subroutine mld_diluk_fact(fill_in,ialg,a,l,u,d,info,blck) + use psb_base_mod + 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(kind(1.d0)), intent(inout) :: d(:) + end subroutine mld_diluk_fact + subroutine mld_ziluk_fact(fill_in,ialg,a,l,u,d,info,blck) + use psb_base_mod + 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(kind(1.d0)), intent(inout) :: d(:) + end subroutine mld_ziluk_fact + end interface + + interface mld_ilut_fact + subroutine mld_dilut_fact(fill_in,thres,a,l,u,d,info,blck) + use psb_base_mod + integer, intent(in) :: fill_in + real(kind(1.d0)), 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(kind(1.d0)), intent(inout) :: d(:) + end subroutine mld_dilut_fact + subroutine mld_zilut_fact(fill_in,thres,a,l,u,d,info,blck) + use psb_base_mod + integer, intent(in) :: fill_in + real(kind(1.d0)), 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(kind(1.d0)), intent(inout) :: d(:) + end subroutine mld_zilut_fact + end interface + + interface mld_asmat_bld + Subroutine mld_dasmat_bld(ptype,novr,a,blk,desc_data,upd,desc_p,info,outfmt) + use psb_base_mod + use mld_prec_type + integer, intent(in) :: ptype,novr + Type(psb_dspmat_type), Intent(in) :: a + Type(psb_dspmat_type), Intent(out) :: blk + Type(psb_desc_type), Intent(inout) :: desc_p + Type(psb_desc_type), Intent(in) :: desc_data + Character, Intent(in) :: upd + integer, intent(out) :: info + character(len=5), optional :: outfmt + end Subroutine mld_dasmat_bld + Subroutine mld_zasmat_bld(ptype,novr,a,blk,desc_data,upd,desc_p,info,outfmt) + use psb_base_mod + use mld_prec_type + integer, intent(in) :: ptype,novr + Type(psb_zspmat_type), Intent(in) :: a + Type(psb_zspmat_type), Intent(out) :: blk + Type(psb_desc_type), Intent(inout) :: desc_p + Type(psb_desc_type), Intent(in) :: desc_data + Character, Intent(in) :: upd + integer, intent(out) :: info + character(len=5), optional :: outfmt + end Subroutine mld_zasmat_bld + end interface + + interface mld_sp_renum + subroutine mld_dsp_renum(a,blck,p,atmp,info) + use psb_base_mod + use mld_prec_type + type(psb_dspmat_type), intent(in) :: a,blck + type(psb_dspmat_type), intent(out) :: atmp + type(mld_dbaseprc_type), intent(inout) :: p + integer, intent(out) :: info + end subroutine mld_dsp_renum + subroutine mld_zsp_renum(a,blck,p,atmp,info) + use psb_base_mod + use mld_prec_type + type(psb_zspmat_type), intent(in) :: a,blck + type(psb_zspmat_type), intent(out) :: atmp + type(mld_zbaseprc_type), intent(inout) :: p + integer, intent(out) :: info + end subroutine mld_zsp_renum + end interface + + interface mld_aggrmap_bld + subroutine mld_daggrmap_bld(aggr_type,a,desc_a,nlaggr,ilaggr,info) + use psb_base_mod + use mld_prec_type + integer, intent(in) :: aggr_type + type(psb_dspmat_type), intent(in), target :: a + type(psb_desc_type), intent(in) :: desc_a + integer, allocatable, intent(out) :: ilaggr(:),nlaggr(:) + integer, intent(out) :: info + end subroutine mld_daggrmap_bld + subroutine mld_zaggrmap_bld(aggr_type,a,desc_a,nlaggr,ilaggr,info) + use psb_base_mod + use mld_prec_type + integer, intent(in) :: aggr_type + type(psb_zspmat_type), intent(in), target :: a + type(psb_desc_type), intent(in) :: desc_a + integer, allocatable, intent(out) :: ilaggr(:),nlaggr(:) + integer, intent(out) :: info + end subroutine mld_zaggrmap_bld + end interface + + interface mld_aggrmat_asb + subroutine mld_daggrmat_asb(a,desc_a,ac,desc_ac,p,info) + use psb_base_mod + use mld_prec_type + type(psb_dspmat_type), intent(in) :: a + type(psb_desc_type), intent(in) :: desc_a + type(psb_dspmat_type), intent(out) :: ac + type(psb_desc_type), intent(out) :: desc_ac + type(mld_dbaseprc_type), intent(inout), target :: p + integer, intent(out) :: info + end subroutine mld_daggrmat_asb + subroutine mld_zaggrmat_asb(a,desc_a,ac,desc_ac,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(psb_zspmat_type), intent(out) :: ac + type(psb_desc_type), intent(out) :: desc_ac + type(mld_zbaseprc_type), intent(inout), target :: p + integer, intent(out) :: info + end subroutine mld_zaggrmat_asb + end interface + + interface mld_aggrmat_raw_asb + subroutine mld_daggrmat_raw_asb(a,desc_a,ac,desc_ac,p,info) + use psb_base_mod + use mld_prec_type + type(psb_dspmat_type), intent(in) :: a + type(psb_desc_type), intent(in) :: desc_a + type(psb_dspmat_type), intent(out) :: ac + type(psb_desc_type), intent(out) :: desc_ac + type(mld_dbaseprc_type), intent(inout), target :: p + integer, intent(out) :: info + end subroutine mld_daggrmat_raw_asb + subroutine mld_zaggrmat_raw_asb(a,desc_a,ac,desc_ac,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(psb_zspmat_type), intent(out) :: ac + type(psb_desc_type), intent(out) :: desc_ac + type(mld_zbaseprc_type), intent(inout), target :: p + integer, intent(out) :: info + end subroutine mld_zaggrmat_raw_asb + end interface + + interface mld_aggrmat_smth_asb + subroutine mld_daggrmat_smth_asb(a,desc_a,ac,desc_ac,p,info) + use psb_base_mod + use mld_prec_type + type(psb_dspmat_type), intent(in) :: a + type(psb_desc_type), intent(in) :: desc_a + type(psb_dspmat_type), intent(out) :: ac + type(psb_desc_type), intent(out) :: desc_ac + type(mld_dbaseprc_type), intent(inout), target :: p + integer, intent(out) :: info + end subroutine mld_daggrmat_smth_asb + subroutine mld_zaggrmat_smth_asb(a,desc_a,ac,desc_ac,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(psb_zspmat_type), intent(out) :: ac + type(psb_desc_type), intent(out) :: desc_ac + type(mld_zbaseprc_type), intent(inout), target :: p + integer, intent(out) :: info + end subroutine mld_zaggrmat_smth_asb + end interface + +end module mld_inner_mod diff --git a/mlprec/mld_prec_mod.f90 b/mlprec/mld_prec_mod.f90 index e9ca5ef1..f7793843 100644 --- a/mlprec/mld_prec_mod.f90 +++ b/mlprec/mld_prec_mod.f90 @@ -179,144 +179,6 @@ module mld_prec_mod end subroutine mld_zprec_aply1 end interface - interface mld_baseprec_aply - subroutine mld_dbaseprec_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) - use psb_base_mod - use mld_prec_type - type(psb_desc_type),intent(in) :: desc_data - type(mld_dbaseprc_type), intent(in) :: prec - real(kind(0.d0)),intent(in) :: x(:) - real(kind(0.d0)),intent(inout) :: y(:) - real(kind(0.d0)),intent(in) :: alpha,beta - character(len=1) :: trans - real(kind(0.d0)),target :: work(:) - integer, intent(out) :: info - end subroutine mld_dbaseprec_aply - subroutine mld_zbaseprec_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) - use psb_base_mod - use mld_prec_type - type(psb_desc_type),intent(in) :: desc_data - type(mld_zbaseprc_type), intent(in) :: prec - complex(kind(1.d0)),intent(in) :: x(:) - complex(kind(1.d0)),intent(inout) :: y(:) - complex(kind(1.d0)),intent(in) :: alpha,beta - character(len=1) :: trans - complex(kind(1.d0)),target :: work(:) - integer, intent(out) :: info - end subroutine mld_zbaseprec_aply - end interface - - interface mld_as_aply - subroutine mld_das_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) - use psb_base_mod - use mld_prec_type - type(psb_desc_type),intent(in) :: desc_data - type(mld_dbaseprc_type), intent(in) :: prec - real(kind(0.d0)),intent(in) :: x(:) - real(kind(0.d0)),intent(inout) :: y(:) - real(kind(0.d0)),intent(in) :: alpha,beta - character(len=1) :: trans - real(kind(0.d0)),target :: work(:) - integer, intent(out) :: info - end subroutine mld_das_aply - subroutine mld_zas_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) - use psb_base_mod - use mld_prec_type - type(psb_desc_type),intent(in) :: desc_data - type(mld_zbaseprc_type), intent(in) :: prec - complex(kind(1.d0)),intent(in) :: x(:) - complex(kind(1.d0)),intent(inout) :: y(:) - complex(kind(1.d0)),intent(in) :: alpha,beta - character(len=1) :: trans - complex(kind(1.d0)),target :: work(:) - integer, intent(out) :: info - end subroutine mld_zas_aply - end interface - - interface mld_mlprec_aply - subroutine mld_dmlprec_aply(alpha,baseprecv,x,beta,y,desc_data,trans,work,info) - use psb_base_mod - use mld_prec_type - type(psb_desc_type),intent(in) :: desc_data - type(mld_dbaseprc_type), intent(in) :: baseprecv(:) - real(kind(0.d0)),intent(in) :: alpha,beta - real(kind(0.d0)),intent(in) :: x(:) - real(kind(0.d0)),intent(inout) :: y(:) - character :: trans - real(kind(0.d0)),target :: work(:) - integer, intent(out) :: info - end subroutine mld_dmlprec_aply - subroutine mld_zmlprec_aply(alpha,baseprecv,x,beta,y,desc_data,trans,work,info) - use psb_base_mod - use mld_prec_type - type(psb_desc_type),intent(in) :: desc_data - type(mld_zbaseprc_type), intent(in) :: baseprecv(:) - complex(kind(0.d0)),intent(in) :: alpha,beta - complex(kind(0.d0)),intent(in) :: x(:) - complex(kind(0.d0)),intent(inout) :: y(:) - character :: trans - complex(kind(0.d0)),target :: work(:) - integer, intent(out) :: info - end subroutine mld_zmlprec_aply - end interface - - - interface mld_sub_aply - subroutine mld_dsub_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) - use psb_base_mod - use mld_prec_type - type(psb_desc_type), intent(in) :: desc_data - type(mld_dbaseprc_type), intent(in) :: prec - real(kind(0.d0)),intent(in) :: x(:) - real(kind(0.d0)),intent(inout) :: y(:) - real(kind(0.d0)),intent(in) :: alpha,beta - character(len=1),intent(in) :: trans - real(kind(0.d0)),target,intent(inout) :: work(:) - integer, intent(out) :: info - end subroutine mld_dsub_aply - subroutine mld_zsub_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) - use psb_base_mod - use mld_prec_type - type(psb_desc_type), intent(in) :: desc_data - type(mld_zbaseprc_type), intent(in) :: prec - complex(kind(0.d0)),intent(in) :: x(:) - complex(kind(0.d0)),intent(inout) :: y(:) - complex(kind(0.d0)),intent(in) :: alpha,beta - character(len=1),intent(in) :: trans - complex(kind(0.d0)),target,intent(inout) :: work(:) - integer, intent(out) :: info - end subroutine mld_zsub_aply - end interface - - - interface mld_sub_solve - subroutine mld_dsub_solve(alpha,prec,x,beta,y,desc_data,trans,work,info) - use psb_base_mod - use mld_prec_type - type(psb_desc_type), intent(in) :: desc_data - type(mld_dbaseprc_type), intent(in) :: prec - real(kind(0.d0)),intent(in) :: x(:) - real(kind(0.d0)),intent(inout) :: y(:) - real(kind(0.d0)),intent(in) :: alpha,beta - character(len=1),intent(in) :: trans - real(kind(0.d0)),target,intent(inout) :: work(:) - integer, intent(out) :: info - end subroutine mld_dsub_solve - subroutine mld_zsub_solve(alpha,prec,x,beta,y,desc_data,trans,work,info) - use psb_base_mod - use mld_prec_type - type(psb_desc_type), intent(in) :: desc_data - type(mld_zbaseprc_type), intent(in) :: prec - complex(kind(0.d0)),intent(in) :: x(:) - complex(kind(0.d0)),intent(inout) :: y(:) - complex(kind(0.d0)),intent(in) :: alpha,beta - character(len=1),intent(in) :: trans - complex(kind(0.d0)),target,intent(inout) :: work(:) - integer, intent(out) :: info - end subroutine mld_zsub_solve - end interface - - interface mld_precbld subroutine mld_dprecbld(a,desc_a,prec,info) use psb_base_mod @@ -340,384 +202,4 @@ module mld_prec_mod end subroutine mld_zprecbld end interface - interface mld_baseprc_bld - subroutine mld_dbaseprc_bld(a,desc_a,p,info,upd) - use psb_base_mod - use mld_prec_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_zbaseprc_bld(a,desc_a,p,info,upd) - use psb_base_mod - use mld_prec_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_das_bld(a,desc_a,p,upd,info) - use psb_base_mod - use mld_prec_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_zas_bld(a,desc_a,p,upd,info) - use psb_base_mod - use mld_prec_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_dmlprec_bld(a,desc_a,p,info) - use psb_base_mod - use mld_prec_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_zmlprec_bld(a,desc_a,p,info) - use psb_base_mod - use mld_prec_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_ddiag_bld(a,desc_data,p,info) - use psb_base_mod - use mld_prec_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_zdiag_bld(a,desc_data,p,info) - use psb_base_mod - use mld_prec_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_dfact_bld(a,p,upd,info,blck) - use psb_base_mod - use mld_prec_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_zfact_bld(a,p,upd,info,blck) - use psb_base_mod - use mld_prec_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_dilu_bld(a,p,upd,info,blck) - use psb_base_mod - use mld_prec_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_zilu_bld(a,p,upd,info,blck) - use psb_base_mod - use mld_prec_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_dsludist_bld(a,desc_a,p,info) - use psb_base_mod - use mld_prec_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_zsludist_bld(a,desc_a,p,info) - use psb_base_mod - use mld_prec_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_dslu_bld(a,desc_a,p,info) - use psb_base_mod - use mld_prec_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_zslu_bld(a,desc_a,p,info) - use psb_base_mod - use mld_prec_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_dumf_bld(a,desc_a,p,info) - use psb_base_mod - use mld_prec_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_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 - end interface - - interface mld_ilu0_fact - subroutine mld_dilu0_fact(ialg,a,l,u,d,info,blck) - use psb_base_mod - 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(kind(1.d0)), intent(inout) :: d(:) - end subroutine mld_dilu0_fact - subroutine mld_zilu0_fact(ialg,a,l,u,d,info,blck) - use psb_base_mod - 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(kind(1.d0)), intent(inout) :: d(:) - end subroutine mld_zilu0_fact - end interface - - interface mld_iluk_fact - subroutine mld_diluk_fact(fill_in,ialg,a,l,u,d,info,blck) - use psb_base_mod - 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(kind(1.d0)), intent(inout) :: d(:) - end subroutine mld_diluk_fact - subroutine mld_ziluk_fact(fill_in,ialg,a,l,u,d,info,blck) - use psb_base_mod - 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(kind(1.d0)), intent(inout) :: d(:) - end subroutine mld_ziluk_fact - end interface - - interface mld_ilut_fact - subroutine mld_dilut_fact(fill_in,thres,a,l,u,d,info,blck) - use psb_base_mod - integer, intent(in) :: fill_in - real(kind(1.d0)), 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(kind(1.d0)), intent(inout) :: d(:) - end subroutine mld_dilut_fact - subroutine mld_zilut_fact(fill_in,thres,a,l,u,d,info,blck) - use psb_base_mod - integer, intent(in) :: fill_in - real(kind(1.d0)), 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(kind(1.d0)), intent(inout) :: d(:) - end subroutine mld_zilut_fact - end interface - - interface mld_asmat_bld - Subroutine mld_dasmat_bld(ptype,novr,a,blk,desc_data,upd,desc_p,info,outfmt) - use psb_base_mod - use mld_prec_type - integer, intent(in) :: ptype,novr - Type(psb_dspmat_type), Intent(in) :: a - Type(psb_dspmat_type), Intent(out) :: blk - Type(psb_desc_type), Intent(inout) :: desc_p - Type(psb_desc_type), Intent(in) :: desc_data - Character, Intent(in) :: upd - integer, intent(out) :: info - character(len=5), optional :: outfmt - end Subroutine mld_dasmat_bld - Subroutine mld_zasmat_bld(ptype,novr,a,blk,desc_data,upd,desc_p,info,outfmt) - use psb_base_mod - use mld_prec_type - integer, intent(in) :: ptype,novr - Type(psb_zspmat_type), Intent(in) :: a - Type(psb_zspmat_type), Intent(out) :: blk - Type(psb_desc_type), Intent(inout) :: desc_p - Type(psb_desc_type), Intent(in) :: desc_data - Character, Intent(in) :: upd - integer, intent(out) :: info - character(len=5), optional :: outfmt - end Subroutine mld_zasmat_bld - end interface - - interface mld_sp_renum - subroutine mld_dsp_renum(a,blck,p,atmp,info) - use psb_base_mod - use mld_prec_type - type(psb_dspmat_type), intent(in) :: a,blck - type(psb_dspmat_type), intent(out) :: atmp - type(mld_dbaseprc_type), intent(inout) :: p - integer, intent(out) :: info - end subroutine mld_dsp_renum - subroutine mld_zsp_renum(a,blck,p,atmp,info) - use psb_base_mod - use mld_prec_type - type(psb_zspmat_type), intent(in) :: a,blck - type(psb_zspmat_type), intent(out) :: atmp - type(mld_zbaseprc_type), intent(inout) :: p - integer, intent(out) :: info - end subroutine mld_zsp_renum - end interface - - interface mld_aggrmap_bld - subroutine mld_daggrmap_bld(aggr_type,a,desc_a,nlaggr,ilaggr,info) - use psb_base_mod - use mld_prec_type - integer, intent(in) :: aggr_type - type(psb_dspmat_type), intent(in), target :: a - type(psb_desc_type), intent(in) :: desc_a - integer, allocatable, intent(out) :: ilaggr(:),nlaggr(:) - integer, intent(out) :: info - end subroutine mld_daggrmap_bld - subroutine mld_zaggrmap_bld(aggr_type,a,desc_a,nlaggr,ilaggr,info) - use psb_base_mod - use mld_prec_type - integer, intent(in) :: aggr_type - type(psb_zspmat_type), intent(in), target :: a - type(psb_desc_type), intent(in) :: desc_a - integer, allocatable, intent(out) :: ilaggr(:),nlaggr(:) - integer, intent(out) :: info - end subroutine mld_zaggrmap_bld - end interface - - interface mld_aggrmat_asb - subroutine mld_daggrmat_asb(a,desc_a,ac,desc_ac,p,info) - use psb_base_mod - use mld_prec_type - type(psb_dspmat_type), intent(in) :: a - type(psb_desc_type), intent(in) :: desc_a - type(psb_dspmat_type), intent(out) :: ac - type(psb_desc_type), intent(out) :: desc_ac - type(mld_dbaseprc_type), intent(inout), target :: p - integer, intent(out) :: info - end subroutine mld_daggrmat_asb - subroutine mld_zaggrmat_asb(a,desc_a,ac,desc_ac,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(psb_zspmat_type), intent(out) :: ac - type(psb_desc_type), intent(out) :: desc_ac - type(mld_zbaseprc_type), intent(inout), target :: p - integer, intent(out) :: info - end subroutine mld_zaggrmat_asb - end interface - - interface mld_aggrmat_raw_asb - subroutine mld_daggrmat_raw_asb(a,desc_a,ac,desc_ac,p,info) - use psb_base_mod - use mld_prec_type - type(psb_dspmat_type), intent(in) :: a - type(psb_desc_type), intent(in) :: desc_a - type(psb_dspmat_type), intent(out) :: ac - type(psb_desc_type), intent(out) :: desc_ac - type(mld_dbaseprc_type), intent(inout), target :: p - integer, intent(out) :: info - end subroutine mld_daggrmat_raw_asb - subroutine mld_zaggrmat_raw_asb(a,desc_a,ac,desc_ac,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(psb_zspmat_type), intent(out) :: ac - type(psb_desc_type), intent(out) :: desc_ac - type(mld_zbaseprc_type), intent(inout), target :: p - integer, intent(out) :: info - end subroutine mld_zaggrmat_raw_asb - end interface - - interface mld_aggrmat_smth_asb - subroutine mld_daggrmat_smth_asb(a,desc_a,ac,desc_ac,p,info) - use psb_base_mod - use mld_prec_type - type(psb_dspmat_type), intent(in) :: a - type(psb_desc_type), intent(in) :: desc_a - type(psb_dspmat_type), intent(out) :: ac - type(psb_desc_type), intent(out) :: desc_ac - type(mld_dbaseprc_type), intent(inout), target :: p - integer, intent(out) :: info - end subroutine mld_daggrmat_smth_asb - subroutine mld_zaggrmat_smth_asb(a,desc_a,ac,desc_ac,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(psb_zspmat_type), intent(out) :: ac - type(psb_desc_type), intent(out) :: desc_ac - type(mld_zbaseprc_type), intent(inout), target :: p - integer, intent(out) :: info - end subroutine mld_zaggrmat_smth_asb - end interface - end module mld_prec_mod diff --git a/mlprec/mld_zaggrmap_bld.f90 b/mlprec/mld_zaggrmap_bld.f90 index 6269114b..fcf82ade 100644 --- a/mlprec/mld_zaggrmap_bld.f90 +++ b/mlprec/mld_zaggrmap_bld.f90 @@ -75,7 +75,7 @@ subroutine mld_zaggrmap_bld(aggr_type,a,desc_a,nlaggr,ilaggr,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_zaggrmap_bld + use mld_inner_mod, mld_protect_name => mld_zaggrmap_bld implicit none diff --git a/mlprec/mld_zaggrmat_asb.f90 b/mlprec/mld_zaggrmat_asb.f90 index 36e9368c..422ef3a0 100644 --- a/mlprec/mld_zaggrmat_asb.f90 +++ b/mlprec/mld_zaggrmat_asb.f90 @@ -94,7 +94,7 @@ subroutine mld_zaggrmat_asb(a,desc_a,ac,desc_ac,p,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_zaggrmat_asb + use mld_inner_mod, mld_protect_name => mld_zaggrmat_asb implicit none diff --git a/mlprec/mld_zaggrmat_raw_asb.F90 b/mlprec/mld_zaggrmat_raw_asb.F90 index b2486456..9ee8880f 100644 --- a/mlprec/mld_zaggrmat_raw_asb.F90 +++ b/mlprec/mld_zaggrmat_raw_asb.F90 @@ -76,7 +76,7 @@ ! subroutine mld_zaggrmat_raw_asb(a,desc_a,ac,desc_ac,p,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_zaggrmat_raw_asb + use mld_inner_mod, mld_protect_name => mld_zaggrmat_raw_asb #ifdef MPI_MOD use mpi diff --git a/mlprec/mld_zaggrmat_smth_asb.F90 b/mlprec/mld_zaggrmat_smth_asb.F90 index 3c48e346..287b0506 100644 --- a/mlprec/mld_zaggrmat_smth_asb.F90 +++ b/mlprec/mld_zaggrmat_smth_asb.F90 @@ -94,7 +94,7 @@ ! subroutine mld_zaggrmat_smth_asb(a,desc_a,ac,desc_ac,p,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_zaggrmat_smth_asb + use mld_inner_mod, mld_protect_name => mld_zaggrmat_smth_asb #ifdef MPI_MOD use mpi diff --git a/mlprec/mld_zas_aply.f90 b/mlprec/mld_zas_aply.f90 index 5e802a9f..c2ebfc13 100644 --- a/mlprec/mld_zas_aply.f90 +++ b/mlprec/mld_zas_aply.f90 @@ -75,7 +75,7 @@ subroutine mld_zas_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_zas_aply + use mld_inner_mod, mld_protect_name => mld_zas_aply implicit none diff --git a/mlprec/mld_zas_bld.f90 b/mlprec/mld_zas_bld.f90 index f55d3ef7..2c41ca37 100644 --- a/mlprec/mld_zas_bld.f90 +++ b/mlprec/mld_zas_bld.f90 @@ -65,7 +65,7 @@ subroutine mld_zas_bld(a,desc_a,p,upd,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_zas_bld + use mld_inner_mod, mld_protect_name => mld_zas_bld Implicit None diff --git a/mlprec/mld_zbaseprec_aply.f90 b/mlprec/mld_zbaseprec_aply.f90 index c282b4ea..b292725a 100644 --- a/mlprec/mld_zbaseprec_aply.f90 +++ b/mlprec/mld_zbaseprec_aply.f90 @@ -79,7 +79,7 @@ subroutine mld_zbaseprec_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_zbaseprec_aply + use mld_inner_mod, mld_protect_name => mld_zbaseprec_aply implicit none diff --git a/mlprec/mld_zbaseprec_bld.f90 b/mlprec/mld_zbaseprec_bld.f90 index 5d793600..1de7a9c1 100644 --- a/mlprec/mld_zbaseprec_bld.f90 +++ b/mlprec/mld_zbaseprec_bld.f90 @@ -69,7 +69,7 @@ subroutine mld_zbaseprc_bld(a,desc_a,p,info,upd) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_zbaseprc_bld + use mld_inner_mod, mld_protect_name => mld_zbaseprc_bld Implicit None diff --git a/mlprec/mld_zdiag_bld.f90 b/mlprec/mld_zdiag_bld.f90 index 73fbb299..e9b61971 100644 --- a/mlprec/mld_zdiag_bld.f90 +++ b/mlprec/mld_zdiag_bld.f90 @@ -58,7 +58,7 @@ subroutine mld_zdiag_bld(a,desc_a,p,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_zdiag_bld + use mld_inner_mod, mld_protect_name => mld_zdiag_bld Implicit None diff --git a/mlprec/mld_zfact_bld.f90 b/mlprec/mld_zfact_bld.f90 index bffa7ebe..d788fd0d 100644 --- a/mlprec/mld_zfact_bld.f90 +++ b/mlprec/mld_zfact_bld.f90 @@ -106,7 +106,7 @@ subroutine mld_zfact_bld(a,p,upd,info,blck) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_zfact_bld + use mld_inner_mod, mld_protect_name => mld_zfact_bld implicit none diff --git a/mlprec/mld_zilu0_fact.f90 b/mlprec/mld_zilu0_fact.f90 index 331ba4fd..62345172 100644 --- a/mlprec/mld_zilu0_fact.f90 +++ b/mlprec/mld_zilu0_fact.f90 @@ -100,7 +100,7 @@ subroutine mld_zilu0_fact(ialg,a,l,u,d,info,blck) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_zilu0_fact + use mld_inner_mod, mld_protect_name => mld_zilu0_fact implicit none ! Arguments diff --git a/mlprec/mld_zilu_bld.f90 b/mlprec/mld_zilu_bld.f90 index d674c064..47e32063 100644 --- a/mlprec/mld_zilu_bld.f90 +++ b/mlprec/mld_zilu_bld.f90 @@ -89,7 +89,7 @@ subroutine mld_zilu_bld(a,p,upd,info,blck) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_zilu_bld + use mld_inner_mod, mld_protect_name => mld_zilu_bld implicit none diff --git a/mlprec/mld_ziluk_fact.f90 b/mlprec/mld_ziluk_fact.f90 index 7195e658..37040478 100644 --- a/mlprec/mld_ziluk_fact.f90 +++ b/mlprec/mld_ziluk_fact.f90 @@ -96,7 +96,7 @@ subroutine mld_ziluk_fact(fill_in,ialg,a,l,u,d,info,blck) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_ziluk_fact + use mld_inner_mod, mld_protect_name => mld_ziluk_fact implicit none ! Arguments diff --git a/mlprec/mld_zilut_fact.f90 b/mlprec/mld_zilut_fact.f90 index 0604e761..f5b844c3 100644 --- a/mlprec/mld_zilut_fact.f90 +++ b/mlprec/mld_zilut_fact.f90 @@ -93,7 +93,7 @@ subroutine mld_zilut_fact(fill_in,thres,a,l,u,d,info,blck) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_zilut_fact + use mld_inner_mod, mld_protect_name => mld_zilut_fact implicit none ! Arguments diff --git a/mlprec/mld_zmlprec_aply.f90 b/mlprec/mld_zmlprec_aply.f90 index 7c7009dc..237d9235 100644 --- a/mlprec/mld_zmlprec_aply.f90 +++ b/mlprec/mld_zmlprec_aply.f90 @@ -165,7 +165,7 @@ subroutine mld_zmlprec_aply(alpha,baseprecv,x,beta,y,desc_data,trans,work,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_zmlprec_aply + use mld_inner_mod, mld_protect_name => mld_zmlprec_aply implicit none diff --git a/mlprec/mld_zmlprec_bld.f90 b/mlprec/mld_zmlprec_bld.f90 index d001d5cc..ffaeda90 100644 --- a/mlprec/mld_zmlprec_bld.f90 +++ b/mlprec/mld_zmlprec_bld.f90 @@ -60,7 +60,7 @@ subroutine mld_zmlprec_bld(a,desc_a,p,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_zmlprec_bld + use mld_inner_mod, mld_protect_name => mld_zmlprec_bld implicit none diff --git a/mlprec/mld_zprec_aply.f90 b/mlprec/mld_zprec_aply.f90 index 5cdb019e..aa91cea2 100644 --- a/mlprec/mld_zprec_aply.f90 +++ b/mlprec/mld_zprec_aply.f90 @@ -72,6 +72,7 @@ subroutine mld_zprec_aply(prec,x,y,desc_data,info,trans,work) use psb_base_mod + use mld_inner_mod use mld_prec_mod, mld_protect_name => mld_zprec_aply implicit none @@ -197,6 +198,7 @@ end subroutine mld_zprec_aply subroutine mld_zprec_aply1(prec,x,desc_data,info,trans) use psb_base_mod + use mld_inner_mod use mld_prec_mod, mld_protect_name => mld_zprec_aply1 implicit none diff --git a/mlprec/mld_zprecbld.f90 b/mlprec/mld_zprecbld.f90 index 6c9a537c..1416954e 100644 --- a/mlprec/mld_zprecbld.f90 +++ b/mlprec/mld_zprecbld.f90 @@ -64,6 +64,7 @@ subroutine mld_zprecbld(a,desc_a,p,info) use psb_base_mod + use mld_inner_mod use mld_prec_mod, mld_protect_name => mld_zprecbld Implicit None diff --git a/mlprec/mld_zslu_bld.f90 b/mlprec/mld_zslu_bld.f90 index b5be9719..be8430f2 100644 --- a/mlprec/mld_zslu_bld.f90 +++ b/mlprec/mld_zslu_bld.f90 @@ -70,7 +70,7 @@ subroutine mld_zslu_bld(a,desc_a,p,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_zslu_bld + use mld_inner_mod, mld_protect_name => mld_zslu_bld implicit none diff --git a/mlprec/mld_zslud_bld.f90 b/mlprec/mld_zslud_bld.f90 index b52c9d05..31b30a75 100644 --- a/mlprec/mld_zslud_bld.f90 +++ b/mlprec/mld_zslud_bld.f90 @@ -67,7 +67,7 @@ subroutine mld_zsludist_bld(a,desc_a,p,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_zsludist_bld + use mld_inner_mod, mld_protect_name => mld_zsludist_bld implicit none diff --git a/mlprec/mld_zsp_renum.f90 b/mlprec/mld_zsp_renum.f90 index 8eea1282..548bf372 100644 --- a/mlprec/mld_zsp_renum.f90 +++ b/mlprec/mld_zsp_renum.f90 @@ -82,7 +82,7 @@ subroutine mld_zsp_renum(a,blck,p,atmp,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_zsp_renum + use mld_inner_mod, mld_protect_name => mld_zsp_renum implicit none diff --git a/mlprec/mld_zsub_aply.f90 b/mlprec/mld_zsub_aply.f90 index 9c64eff9..751c7077 100644 --- a/mlprec/mld_zsub_aply.f90 +++ b/mlprec/mld_zsub_aply.f90 @@ -134,7 +134,7 @@ subroutine mld_zsub_aply(alpha,prec,x,beta,y,desc_data,trans,work,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_zsub_aply + use mld_inner_mod, mld_protect_name => mld_zsub_aply implicit none diff --git a/mlprec/mld_zsub_solve.f90 b/mlprec/mld_zsub_solve.f90 index bffbf0cd..3adca02a 100644 --- a/mlprec/mld_zsub_solve.f90 +++ b/mlprec/mld_zsub_solve.f90 @@ -101,7 +101,7 @@ subroutine mld_zsub_solve(alpha,prec,x,beta,y,desc_data,trans,work,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_zsub_solve + use mld_inner_mod, mld_protect_name => mld_zsub_solve implicit none diff --git a/mlprec/mld_zumf_bld.f90 b/mlprec/mld_zumf_bld.f90 index 6b2fb5d2..cf2a26ff 100644 --- a/mlprec/mld_zumf_bld.f90 +++ b/mlprec/mld_zumf_bld.f90 @@ -76,7 +76,7 @@ subroutine mld_zumf_bld(a,desc_a,p,info) use psb_base_mod - use mld_prec_mod, mld_protect_name => mld_zumf_bld + use mld_inner_mod, mld_protect_name => mld_zumf_bld implicit none