Fix error message for wrong IRST.

merge-paraggr
Salvatore Filippone 5 years ago
parent e95063701b
commit 59e640c8a1

@ -309,5 +309,8 @@ module psb_const_mod
integer(psb_ipk_), parameter, public :: psb_err_alloc_request_=4025
integer(psb_ipk_), parameter, public :: psb_err_from_subroutine_non_=4011
integer(psb_ipk_), parameter, public :: psb_err_invalid_istop_=5001
integer(psb_ipk_), parameter, public :: psb_err_invalid_irst_ =5002
integer(psb_ipk_), parameter, public :: psb_err_invalid_preci_=5003
integer(psb_ipk_), parameter, public :: psb_err_invalid_preca_=5004
end module psb_const_mod

@ -1043,12 +1043,17 @@ contains
achmsg(1) = tmpmsg
write(achmsg(2),'("Invalid ISTOP: ",i0)')e_e_d(1)
case(5002)
case(psb_err_invalid_irst_)
allocate(achmsg(2))
achmsg(1) = tmpmsg
write(achmsg(2),'("Invalid IRST: ",i0)')e_e_d(1)
case(psb_err_invalid_preci_)
allocate(achmsg(2))
achmsg(1) = tmpmsg
write(achmsg(2),'("Invalid PREC: ",i0)')e_e_d(1)
case(5003)
case(psb_err_invalid_preca_)
allocate(achmsg(2))
achmsg(1) = tmpmsg
write(achmsg(2),'("Invalid PREC: ",a3)')a_e_d(1:3)

@ -198,7 +198,7 @@ Subroutine psb_ccgstabl_vect(a,prec,b,x,eps,desc_a,info,&
& ' not present: irst: ',irst,nl
endif
if (nl <=0 ) then
info=psb_err_invalid_istop_
info=psb_err_invalid_irst_
err=info
call psb_errpush(info,name,i_err=(/nl/))
goto 9999

@ -211,7 +211,8 @@ Subroutine psb_ckrylov_vect(method,a,prec,b,x,eps,desc_a,info,&
if ((info==psb_success_).and.do_alloc_wrk) call prec%free_wrk(info)
if(info /= psb_success_) then
call psb_errpush(info,name)
info = psb_err_from_subroutine_
call psb_errpush(info,name,a_err=trim(method))
goto 9999
end if

@ -209,7 +209,7 @@ subroutine psb_crgmres_vect(a,prec,b,x,eps,desc_a,info,&
& ' not present: irst: ',irst,nl
endif
if (nl <=0 ) then
info=psb_err_invalid_istop_
info=psb_err_invalid_irst_
err=info
call psb_errpush(info,name,i_err=(/nl/))
goto 9999

@ -198,7 +198,7 @@ Subroutine psb_dcgstabl_vect(a,prec,b,x,eps,desc_a,info,&
& ' not present: irst: ',irst,nl
endif
if (nl <=0 ) then
info=psb_err_invalid_istop_
info=psb_err_invalid_irst_
err=info
call psb_errpush(info,name,i_err=(/nl/))
goto 9999

@ -211,7 +211,8 @@ Subroutine psb_dkrylov_vect(method,a,prec,b,x,eps,desc_a,info,&
if ((info==psb_success_).and.do_alloc_wrk) call prec%free_wrk(info)
if(info /= psb_success_) then
call psb_errpush(info,name)
info = psb_err_from_subroutine_
call psb_errpush(info,name,a_err=trim(method))
goto 9999
end if

@ -209,7 +209,7 @@ subroutine psb_drgmres_vect(a,prec,b,x,eps,desc_a,info,&
& ' not present: irst: ',irst,nl
endif
if (nl <=0 ) then
info=psb_err_invalid_istop_
info=psb_err_invalid_irst_
err=info
call psb_errpush(info,name,i_err=(/nl/))
goto 9999

@ -198,7 +198,7 @@ Subroutine psb_scgstabl_vect(a,prec,b,x,eps,desc_a,info,&
& ' not present: irst: ',irst,nl
endif
if (nl <=0 ) then
info=psb_err_invalid_istop_
info=psb_err_invalid_irst_
err=info
call psb_errpush(info,name,i_err=(/nl/))
goto 9999

@ -211,7 +211,8 @@ Subroutine psb_skrylov_vect(method,a,prec,b,x,eps,desc_a,info,&
if ((info==psb_success_).and.do_alloc_wrk) call prec%free_wrk(info)
if(info /= psb_success_) then
call psb_errpush(info,name)
info = psb_err_from_subroutine_
call psb_errpush(info,name,a_err=trim(method))
goto 9999
end if

@ -209,7 +209,7 @@ subroutine psb_srgmres_vect(a,prec,b,x,eps,desc_a,info,&
& ' not present: irst: ',irst,nl
endif
if (nl <=0 ) then
info=psb_err_invalid_istop_
info=psb_err_invalid_irst_
err=info
call psb_errpush(info,name,i_err=(/nl/))
goto 9999

@ -198,7 +198,7 @@ Subroutine psb_zcgstabl_vect(a,prec,b,x,eps,desc_a,info,&
& ' not present: irst: ',irst,nl
endif
if (nl <=0 ) then
info=psb_err_invalid_istop_
info=psb_err_invalid_irst_
err=info
call psb_errpush(info,name,i_err=(/nl/))
goto 9999

@ -211,7 +211,8 @@ Subroutine psb_zkrylov_vect(method,a,prec,b,x,eps,desc_a,info,&
if ((info==psb_success_).and.do_alloc_wrk) call prec%free_wrk(info)
if(info /= psb_success_) then
call psb_errpush(info,name)
info = psb_err_from_subroutine_
call psb_errpush(info,name,a_err=trim(method))
goto 9999
end if

@ -209,7 +209,7 @@ subroutine psb_zrgmres_vect(a,prec,b,x,eps,desc_a,info,&
& ' not present: irst: ',irst,nl
endif
if (nl <=0 ) then
info=psb_err_invalid_istop_
info=psb_err_invalid_irst_
err=info
call psb_errpush(info,name,i_err=(/nl/))
goto 9999

@ -65,7 +65,7 @@ subroutine psb_cprecinit(ictxt,p,ptype,info)
case default
write(psb_err_unit,*) 'Unknown preconditioner type request "',ptype,'"'
info = psb_err_pivot_too_small_
info = psb_err_invalid_preca_
end select
if (info == psb_success_) call p%prec%precinit(info)

@ -65,7 +65,7 @@ subroutine psb_dprecinit(ictxt,p,ptype,info)
case default
write(psb_err_unit,*) 'Unknown preconditioner type request "',ptype,'"'
info = psb_err_pivot_too_small_
info = psb_err_invalid_preca_
end select
if (info == psb_success_) call p%prec%precinit(info)

@ -65,7 +65,7 @@ subroutine psb_sprecinit(ictxt,p,ptype,info)
case default
write(psb_err_unit,*) 'Unknown preconditioner type request "',ptype,'"'
info = psb_err_pivot_too_small_
info = psb_err_invalid_preca_
end select
if (info == psb_success_) call p%prec%precinit(info)

@ -65,7 +65,7 @@ subroutine psb_zprecinit(ictxt,p,ptype,info)
case default
write(psb_err_unit,*) 'Unknown preconditioner type request "',ptype,'"'
info = psb_err_pivot_too_small_
info = psb_err_invalid_preca_
end select
if (info == psb_success_) call p%prec%precinit(info)

Loading…
Cancel
Save