Fix error message for wrong IRST.

psblas-3.6-maint
Salvatore Filippone 5 years ago
parent c63d96de6a
commit 555205bb36

@ -248,5 +248,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

@ -1027,12 +1027,17 @@ contains
achmsg(1) = tmpmsg
write(achmsg(2),'("Invalid ISTOP: ",i0)')i_e_d(1)
case(5002)
case(psb_err_invalid_irst_)
allocate(achmsg(2))
achmsg(1) = tmpmsg
write(achmsg(2),'("Invalid IRST: ",i0)')i_e_d(1)
case(psb_err_invalid_preci_)
allocate(achmsg(2))
achmsg(1) = tmpmsg
write(achmsg(2),'("Invalid PREC: ",i0)')i_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)

@ -197,7 +197,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_
int_err(1)=nl
err=info
call psb_errpush(info,name,i_err=int_err)

@ -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_
int_err(1)=nl
err=info
call psb_errpush(info,name,i_err=int_err)

@ -197,7 +197,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_
int_err(1)=nl
err=info
call psb_errpush(info,name,i_err=int_err)

@ -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_
int_err(1)=nl
err=info
call psb_errpush(info,name,i_err=int_err)

@ -197,7 +197,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_
int_err(1)=nl
err=info
call psb_errpush(info,name,i_err=int_err)

@ -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_
int_err(1)=nl
err=info
call psb_errpush(info,name,i_err=int_err)

@ -197,7 +197,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_
int_err(1)=nl
err=info
call psb_errpush(info,name,i_err=int_err)

@ -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_
int_err(1)=nl
err=info
call psb_errpush(info,name,i_err=int_err)

Loading…
Cancel
Save