mirror of
https://github.com/sfilippone/amg4psblas.git
synced 2026-10-06 22:55:12 +00:00
mld2p4-smooth-2side
mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dprecset.F90 mlprec/mld_base_prec_type.F90 Cosmetic changes in base_prec. Fixed interface in precset.
This commit is contained in:
@@ -76,7 +76,7 @@
|
||||
! For this reason, the interface mld_precset to this routine has been built in
|
||||
! such a way that ilev is not visible to the user (see mld_prec_mod.f90).
|
||||
!
|
||||
subroutine mld_dcprecseti(p,what,val,info,ilev)
|
||||
subroutine mld_dcprecseti(p,what,val,info,ilev,pos)
|
||||
|
||||
use psb_base_mod
|
||||
use mld_d_prec_mod, mld_protect_name => mld_dcprecseti
|
||||
@@ -108,6 +108,7 @@ subroutine mld_dcprecseti(p,what,val,info,ilev)
|
||||
integer(psb_ipk_), intent(in) :: val
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
integer(psb_ipk_), optional, intent(in) :: ilev
|
||||
character(len=*), optional, intent(in) :: pos
|
||||
|
||||
! Local variables
|
||||
integer(psb_ipk_) :: ilev_, nlev_
|
||||
@@ -136,7 +137,6 @@ subroutine mld_dcprecseti(p,what,val,info,ilev)
|
||||
&': Error: invalid ILEV/NLEV combination',ilev_, nlev_
|
||||
return
|
||||
endif
|
||||
|
||||
if (psb_toupper(what) == 'COARSE_AGGR_SIZE') then
|
||||
p%coarse_aggr_size = max(val,-1)
|
||||
return
|
||||
@@ -717,7 +717,7 @@ end subroutine mld_dcprecseti
|
||||
! For this reason, the interface mld_precset to this routine has been built in
|
||||
! such a way that ilev is not visible to the user (see mld_prec_mod.f90).
|
||||
!
|
||||
subroutine mld_dcprecsetc(p,what,string,info,ilev)
|
||||
subroutine mld_dcprecsetc(p,what,string,info,ilev,pos)
|
||||
|
||||
use psb_base_mod
|
||||
use mld_d_prec_mod, mld_protect_name => mld_dcprecsetc
|
||||
@@ -730,6 +730,7 @@ subroutine mld_dcprecsetc(p,what,string,info,ilev)
|
||||
character(len=*), intent(in) :: string
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
integer(psb_ipk_), optional, intent(in) :: ilev
|
||||
character(len=*), optional, intent(in) :: pos
|
||||
|
||||
! Local variables
|
||||
integer(psb_ipk_) :: ilev_, nlev_,val
|
||||
@@ -804,7 +805,7 @@ end subroutine mld_dcprecsetc
|
||||
! For this reason, the interface mld_precset to this routine has been built in
|
||||
! such a way that ilev is not visible to the user (see mld_prec_mod.f90).
|
||||
!
|
||||
subroutine mld_dcprecsetr(p,what,val,info,ilev)
|
||||
subroutine mld_dcprecsetr(p,what,val,info,ilev,pos)
|
||||
|
||||
use psb_base_mod
|
||||
use mld_d_prec_mod, mld_protect_name => mld_dcprecsetr
|
||||
@@ -817,6 +818,7 @@ subroutine mld_dcprecsetr(p,what,val,info,ilev)
|
||||
real(psb_dpk_), intent(in) :: val
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
integer(psb_ipk_), optional, intent(in) :: ilev
|
||||
character(len=*), optional, intent(in) :: pos
|
||||
|
||||
! Local variables
|
||||
integer(psb_ipk_) :: ilev_,nlev_
|
||||
|
||||
@@ -867,7 +867,6 @@ subroutine mld_dprecsetsv(p,val,info,ilev,pos)
|
||||
do ilev_ = ilmin, ilmax
|
||||
if (allocated(p%precv(ilev_)%sm2a)) then
|
||||
if (allocated(p%precv(ilev_)%sm2a%sv)) then
|
||||
write(0,*)p%precv(ilev_)%sm2a%sv%get_fmt(),val%get_fmt()
|
||||
if (.not.same_type_as(p%precv(ilev_)%sm2a%sv,val)) then
|
||||
deallocate(p%precv(ilev_)%sm2a%sv,stat=info)
|
||||
if (info /= 0) then
|
||||
@@ -888,7 +887,7 @@ subroutine mld_dprecsetsv(p,val,info,ilev,pos)
|
||||
end if
|
||||
end if
|
||||
call p%precv(ilev_)%sm2a%sv%default()
|
||||
write(0,*)p%precv(ilev_)%sm2a%sv%get_fmt(),val%get_fmt()
|
||||
|
||||
else
|
||||
info = 3111
|
||||
write(psb_err_unit,*) name,&
|
||||
@@ -943,7 +942,7 @@ end subroutine mld_dprecsetsv
|
||||
! For this reason, the interface mld_precset to this routine has been built in
|
||||
! such a way that ilev is not visible to the user (see mld_prec_mod.f90).
|
||||
!
|
||||
subroutine mld_dprecsetc(p,what,string,info,ilev)
|
||||
subroutine mld_dprecsetc(p,what,string,info,ilev,pos)
|
||||
|
||||
use psb_base_mod
|
||||
use mld_d_prec_mod, mld_protect_name => mld_dprecsetc
|
||||
@@ -956,6 +955,7 @@ subroutine mld_dprecsetc(p,what,string,info,ilev)
|
||||
character(len=*), intent(in) :: string
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
integer(psb_ipk_), optional, intent(in) :: ilev
|
||||
character(len=*), optional, intent(in) :: pos
|
||||
|
||||
! Local variables
|
||||
integer(psb_ipk_) :: ilev_, nlev_,val
|
||||
@@ -1027,7 +1027,7 @@ end subroutine mld_dprecsetc
|
||||
! For this reason, the interface mld_precset to this routine has been built in
|
||||
! such a way that ilev is not visible to the user (see mld_prec_mod.f90).
|
||||
!
|
||||
subroutine mld_dprecsetr(p,what,val,info,ilev)
|
||||
subroutine mld_dprecsetr(p,what,val,info,ilev,pos)
|
||||
|
||||
use psb_base_mod
|
||||
use mld_d_prec_mod, mld_protect_name => mld_dprecsetr
|
||||
@@ -1040,6 +1040,7 @@ subroutine mld_dprecsetr(p,what,val,info,ilev)
|
||||
real(psb_dpk_), intent(in) :: val
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
integer(psb_ipk_), optional, intent(in) :: ilev
|
||||
character(len=*), optional, intent(in) :: pos
|
||||
|
||||
! Local variables
|
||||
integer(psb_ipk_) :: ilev_,nlev_
|
||||
|
||||
@@ -300,15 +300,15 @@ module mld_base_prec_type
|
||||
!
|
||||
! Fields for sparse matrices ensembles stored in av()
|
||||
!
|
||||
integer(psb_ipk_), parameter :: mld_l_pr_=1
|
||||
integer(psb_ipk_), parameter :: mld_u_pr_=2
|
||||
integer(psb_ipk_), parameter :: mld_bp_ilu_avsz_=2
|
||||
integer(psb_ipk_), parameter :: mld_ap_nd_=3
|
||||
integer(psb_ipk_), parameter :: mld_ac_=4
|
||||
integer(psb_ipk_), parameter :: mld_sm_pr_t_=5
|
||||
integer(psb_ipk_), parameter :: mld_sm_pr_=6
|
||||
integer(psb_ipk_), parameter :: mld_smth_avsz_=6
|
||||
integer(psb_ipk_), parameter :: mld_max_avsz_=mld_smth_avsz_
|
||||
integer(psb_ipk_), parameter :: mld_l_pr_ = 1
|
||||
integer(psb_ipk_), parameter :: mld_u_pr_ = 2
|
||||
integer(psb_ipk_), parameter :: mld_bp_ilu_avsz_ = 2
|
||||
integer(psb_ipk_), parameter :: mld_ap_nd_ = 3
|
||||
integer(psb_ipk_), parameter :: mld_ac_ = 4
|
||||
integer(psb_ipk_), parameter :: mld_sm_pr_t_ = 5
|
||||
integer(psb_ipk_), parameter :: mld_sm_pr_ = 6
|
||||
integer(psb_ipk_), parameter :: mld_smth_avsz_ = 6
|
||||
integer(psb_ipk_), parameter :: mld_max_avsz_ = mld_smth_avsz_
|
||||
|
||||
!
|
||||
! Character constants used by mld_file_prec_descr
|
||||
|
||||
Reference in New Issue
Block a user