Added "COARSE_INVFILL"

This commit is contained in:
Salvatore Filippone
2024-02-21 11:51:18 +01:00
parent c2fd0ac66d
commit 2ef4459b18
4 changed files with 56 additions and 0 deletions
+14
View File
@@ -194,6 +194,15 @@ subroutine amg_ccprecseti(p,what,val,info,ilev,ilmax,pos,idx)
end if
call p%precv(nlev_)%set('SUB_FILLIN',val,info,pos=pos)
case('COARSE_INVFILL')
if (ilev_ /= nlev_) then
write(psb_err_unit,*) name,&
& ': Error: Inconsistent specification of WHAT vs. ILEV'
info = -2
return
end if
call p%precv(nlev_)%set('INV_FILLIN',val,info,pos=pos)
case('BJAC_ITRACE')
if (ilev_ /= nlev_) then
write(psb_err_unit,*) name,&
@@ -243,6 +252,11 @@ subroutine amg_ccprecseti(p,what,val,info,ilev,ilmax,pos,idx)
call p%precv(nlev_)%set('SUB_FILLIN',val,info,pos=pos)
end if
case('COARSE_INVFILL')
if (nlev_ > 1) then
call p%precv(nlev_)%set('INV_FILLIN',val,info,pos=pos)
end if
case('BJAC_ITRACE')
if (nlev_ > 1) then
call p%precv(nlev_)%set('SMOOTHER_ITRACE',val,info,pos=pos)
+14
View File
@@ -200,6 +200,15 @@ subroutine amg_dcprecseti(p,what,val,info,ilev,ilmax,pos,idx)
end if
call p%precv(nlev_)%set('SUB_FILLIN',val,info,pos=pos)
case('COARSE_INVFILL')
if (ilev_ /= nlev_) then
write(psb_err_unit,*) name,&
& ': Error: Inconsistent specification of WHAT vs. ILEV'
info = -2
return
end if
call p%precv(nlev_)%set('INV_FILLIN',val,info,pos=pos)
case('BJAC_ITRACE')
if (ilev_ /= nlev_) then
write(psb_err_unit,*) name,&
@@ -249,6 +258,11 @@ subroutine amg_dcprecseti(p,what,val,info,ilev,ilmax,pos,idx)
call p%precv(nlev_)%set('SUB_FILLIN',val,info,pos=pos)
end if
case('COARSE_INVFILL')
if (nlev_ > 1) then
call p%precv(nlev_)%set('INV_FILLIN',val,info,pos=pos)
end if
case('BJAC_ITRACE')
if (nlev_ > 1) then
call p%precv(nlev_)%set('SMOOTHER_ITRACE',val,info,pos=pos)
+14
View File
@@ -194,6 +194,15 @@ subroutine amg_scprecseti(p,what,val,info,ilev,ilmax,pos,idx)
end if
call p%precv(nlev_)%set('SUB_FILLIN',val,info,pos=pos)
case('COARSE_INVFILL')
if (ilev_ /= nlev_) then
write(psb_err_unit,*) name,&
& ': Error: Inconsistent specification of WHAT vs. ILEV'
info = -2
return
end if
call p%precv(nlev_)%set('INV_FILLIN',val,info,pos=pos)
case('BJAC_ITRACE')
if (ilev_ /= nlev_) then
write(psb_err_unit,*) name,&
@@ -243,6 +252,11 @@ subroutine amg_scprecseti(p,what,val,info,ilev,ilmax,pos,idx)
call p%precv(nlev_)%set('SUB_FILLIN',val,info,pos=pos)
end if
case('COARSE_INVFILL')
if (nlev_ > 1) then
call p%precv(nlev_)%set('INV_FILLIN',val,info,pos=pos)
end if
case('BJAC_ITRACE')
if (nlev_ > 1) then
call p%precv(nlev_)%set('SMOOTHER_ITRACE',val,info,pos=pos)
+14
View File
@@ -200,6 +200,15 @@ subroutine amg_zcprecseti(p,what,val,info,ilev,ilmax,pos,idx)
end if
call p%precv(nlev_)%set('SUB_FILLIN',val,info,pos=pos)
case('COARSE_INVFILL')
if (ilev_ /= nlev_) then
write(psb_err_unit,*) name,&
& ': Error: Inconsistent specification of WHAT vs. ILEV'
info = -2
return
end if
call p%precv(nlev_)%set('INV_FILLIN',val,info,pos=pos)
case('BJAC_ITRACE')
if (ilev_ /= nlev_) then
write(psb_err_unit,*) name,&
@@ -249,6 +258,11 @@ subroutine amg_zcprecseti(p,what,val,info,ilev,ilmax,pos,idx)
call p%precv(nlev_)%set('SUB_FILLIN',val,info,pos=pos)
end if
case('COARSE_INVFILL')
if (nlev_ > 1) then
call p%precv(nlev_)%set('INV_FILLIN',val,info,pos=pos)
end if
case('BJAC_ITRACE')
if (nlev_ > 1) then
call p%precv(nlev_)%set('SMOOTHER_ITRACE',val,info,pos=pos)