Taken out IALG from ILUT.

stopcriterion
Salvatore Filippone 17 years ago
parent b42020e950
commit c8d4911e7c

@ -199,8 +199,7 @@ subroutine mld_dilu_bld(a,p,upd,info,blck)
case(0:)
! Fill-in >= 0
call mld_ilut_fct(p%iprcparm(mld_sub_fill_in_),p%dprcparm(mld_fact_thrs_),&
& p%iprcparm(mld_sub_solve_), a,&
& p%av(mld_l_pr_),p%av(mld_u_pr_),p%d,info,blck=blck)
& a, p%av(mld_l_pr_),p%av(mld_u_pr_),p%d,info,blck=blck)
end select
if(info/=0) then
info=4010

@ -90,7 +90,7 @@
! greater than 0. If the overlap is 0 or the matrix has been reordered
! (see mld_bjac_bld), then blck does not contain any row.
!
subroutine mld_dilut_fct(fill_in,thres,ialg,a,l,u,d,info,blck)
subroutine mld_dilut_fct(fill_in,thres,a,l,u,d,info,blck)
use psb_base_mod
use mld_prec_mod, mld_protect_name => mld_dilut_fct
@ -98,7 +98,7 @@ subroutine mld_dilut_fct(fill_in,thres,ialg,a,l,u,d,info,blck)
implicit none
! Arguments
integer, intent(in) :: fill_in, ialg
integer, intent(in) :: fill_in
real(kind(1.d0)), intent(in) :: thres
integer, intent(out) :: info
type(psb_dspmat_type),intent(in) :: a
@ -116,15 +116,6 @@ subroutine mld_dilut_fct(fill_in,thres,ialg,a,l,u,d,info,blck)
info = 0
call psb_erractionsave(err_act)
select case(ialg)
case(mld_ilu_n_,mld_milu_n_)
! Ok
case default
info=35
call psb_errpush(info,name,i_err=(/3,ialg,0,0,0/))
goto 9999
end select
if (fill_in < 0) then
info=35
call psb_errpush(info,name,i_err=(/1,fill_in,0,0,0/))

@ -535,9 +535,9 @@ module mld_prec_mod
end interface
interface mld_ilut_fct
subroutine mld_dilut_fct(fill_in,thres,ialg,a,l,u,d,info,blck)
subroutine mld_dilut_fct(fill_in,thres,a,l,u,d,info,blck)
use psb_base_mod
integer, intent(in) :: fill_in,ialg
integer, intent(in) :: fill_in
real(kind(1.d0)), intent(in) :: thres
integer, intent(out) :: info
type(psb_dspmat_type),intent(in) :: a
@ -545,9 +545,9 @@ module mld_prec_mod
type(psb_dspmat_type),intent(in), optional, target :: blck
real(kind(1.d0)), intent(inout) :: d(:)
end subroutine mld_dilut_fct
subroutine mld_zilut_fct(fill_in,thres,ialg,a,l,u,d,info,blck)
subroutine mld_zilut_fct(fill_in,thres,a,l,u,d,info,blck)
use psb_base_mod
integer, intent(in) :: fill_in,ialg
integer, intent(in) :: fill_in
real(kind(1.d0)), intent(in) :: thres
integer, intent(out) :: info
type(psb_zspmat_type),intent(in) :: a

@ -199,8 +199,7 @@ subroutine mld_zilu_bld(a,p,upd,info,blck)
case(0:)
! Fill-in >= 0
call mld_ilut_fct(p%iprcparm(mld_sub_fill_in_),p%dprcparm(mld_fact_thrs_),&
& p%iprcparm(mld_sub_solve_), a,&
& p%av(mld_l_pr_),p%av(mld_u_pr_),p%d,info,blck=blck)
& a, p%av(mld_l_pr_),p%av(mld_u_pr_),p%d,info,blck=blck)
end select
if(info/=0) then
info=4010

@ -90,14 +90,14 @@
! greater than 0. If the overlap is 0 or the matrix has been reordered
! (see mld_bjac_bld), then blck does not contain any row.
!
subroutine mld_zilut_fct(fill_in,thres,ialg,a,l,u,d,info,blck)
subroutine mld_zilut_fct(fill_in,thres,a,l,u,d,info,blck)
use psb_base_mod
use mld_prec_mod, mld_protect_name => mld_zilut_fct
implicit none
! Arguments
integer, intent(in) :: fill_in, ialg
integer, intent(in) :: fill_in
real(kind(1.d0)), intent(in) :: thres
integer, intent(out) :: info
type(psb_zspmat_type),intent(in) :: a
@ -115,15 +115,6 @@ subroutine mld_zilut_fct(fill_in,thres,ialg,a,l,u,d,info,blck)
info = 0
call psb_erractionsave(err_act)
select case(ialg)
case(mld_ilu_n_,mld_milu_n_)
! Ok
case default
info=35
call psb_errpush(info,name,i_err=(/3,ialg,0,0,0/))
goto 9999
end select
if (fill_in < 0) then
info=35
call psb_errpush(info,name,i_err=(/1,fill_in,0,0,0/))

Loading…
Cancel
Save