mirror of
https://github.com/sfilippone/psblas3.git
synced 2026-10-17 19:32:08 +00:00
Added info to error message for ILU factorization error.
This commit is contained in:
@@ -35,10 +35,10 @@ module psb_error_mod
|
||||
end type psb_errstack
|
||||
|
||||
|
||||
type(psb_errstack) :: error_stack ! the PSBLAS-2.0 error stack
|
||||
integer :: error_status=0 ! the error status (maybe not here)
|
||||
integer :: verbosity_level=1 ! the verbosity level (maybe not here)
|
||||
integer :: err_action=1
|
||||
type(psb_errstack),save :: error_stack ! the PSBLAS-2.0 error stack
|
||||
integer,save :: error_status=0 ! the error status (maybe not here)
|
||||
integer,save :: verbosity_level=1 ! the verbosity level (maybe not here)
|
||||
integer,save :: err_action=1
|
||||
|
||||
contains
|
||||
|
||||
@@ -252,7 +252,7 @@ contains
|
||||
case(:0)
|
||||
write (0,'("error on calling sperror. err_c must be greater than 0")')
|
||||
case(2)
|
||||
write (0,'("pivot too small")')
|
||||
write (0,'("pivot too small: ",i0,1x,a)')i_e_d(1),a_e_d
|
||||
case(3)
|
||||
write (0,'("Invalid number of ovr:",i0)')i_e_d(1)
|
||||
case(5)
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
module psb_sparse_mod
|
||||
use psb_blacs_mod
|
||||
use psb_descriptor_type
|
||||
use psb_prec_type
|
||||
use psb_serial_mod
|
||||
|
||||
@@ -110,6 +110,7 @@ contains
|
||||
integer, parameter :: nrb=16
|
||||
logical,parameter :: debug=.false.
|
||||
type(psb_dspmat_type) :: trw
|
||||
integer :: int_err(5)
|
||||
character(len=20) :: name, ch_err
|
||||
|
||||
name='psb_dspluint'
|
||||
@@ -264,7 +265,9 @@ contains
|
||||
! Pivot too small: unstable factorization
|
||||
!
|
||||
info = 2
|
||||
call psb_errpush(info,name)
|
||||
int_err(1) = i
|
||||
write(ch_err,'(g20.10)'),dia
|
||||
call psb_errpush(info,name,i_err=int_err,a_err=ch_err)
|
||||
goto 9999
|
||||
else
|
||||
dia = 1.d0/dia
|
||||
@@ -401,8 +404,10 @@ contains
|
||||
!
|
||||
! Pivot too small: unstable factorization
|
||||
!
|
||||
int_err(1) = i
|
||||
write(ch_err,'(g20.10)'),dia
|
||||
info = 2
|
||||
call psb_errpush(info,name)
|
||||
call psb_errpush(info,name,i_err=int_err,a_err=ch_err)
|
||||
goto 9999
|
||||
else
|
||||
dia = 1.d0/dia
|
||||
|
||||
Reference in New Issue
Block a user