mirror of
https://github.com/sfilippone/amg4psblas.git
synced 2026-10-06 22:55:12 +00:00
Taken out IALG from ILUT.
This commit is contained in:
@@ -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/))
|
||||
|
||||
Reference in New Issue
Block a user