more flexible reporting
This commit is contained in:
parent
5f0ae4fe7a
commit
f90523eb07
25
src/IO.f90
25
src/IO.f90
|
@ -95,7 +95,7 @@ function IO_readlines(fileName) result(fileContent)
|
||||||
if (endPos - startPos > pStringLen-1) then
|
if (endPos - startPos > pStringLen-1) then
|
||||||
line = rawData(startPos:startPos+pStringLen-1)
|
line = rawData(startPos:startPos+pStringLen-1)
|
||||||
if (.not. warned) then
|
if (.not. warned) then
|
||||||
call IO_warning(207,ext_msg=trim(fileName),el=l)
|
call IO_warning(207,trim(fileName),label1='line',ID1=l)
|
||||||
warned = .true.
|
warned = .true.
|
||||||
endif
|
endif
|
||||||
else
|
else
|
||||||
|
@ -574,16 +574,19 @@ end subroutine IO_error
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
!> @brief Write warning statement to standard out.
|
!> @brief Write warning statement to standard out.
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
subroutine IO_warning(warning_ID,el,ip,ext_msg)
|
subroutine IO_warning(warning_ID,ext_msg,label1,ID1,label2,ID2)
|
||||||
|
|
||||||
integer, intent(in) :: warning_ID
|
integer, intent(in) :: warning_ID
|
||||||
integer, optional, intent(in) :: el,ip
|
character(len=*), optional, intent(in) :: ext_msg,label1,label2
|
||||||
character(len=*), optional, intent(in) :: ext_msg
|
integer, optional, intent(in) :: ID1,ID2
|
||||||
|
|
||||||
character(len=:), allocatable :: msg
|
character(len=:), allocatable :: msg
|
||||||
character(len=pStringLen) :: formatString
|
character(len=pStringLen) :: formatString
|
||||||
|
|
||||||
|
|
||||||
|
if (present(ID1) .and. .not. present(label1)) error stop 'warning value without label (1)'
|
||||||
|
if (present(ID2) .and. .not. present(label2)) error stop 'warning value without label (2)'
|
||||||
|
|
||||||
select case (warning_ID)
|
select case (warning_ID)
|
||||||
case (47)
|
case (47)
|
||||||
msg = 'invalid parameter for FFTW, using FFTW_PATIENT'
|
msg = 'invalid parameter for FFTW, using FFTW_PATIENT'
|
||||||
|
@ -612,10 +615,16 @@ subroutine IO_warning(warning_ID,el,ip,ext_msg)
|
||||||
max(1,72-len_trim(ext_msg)-4),'x,a)'
|
max(1,72-len_trim(ext_msg)-4),'x,a)'
|
||||||
write(IO_STDERR,formatString) '│ ',trim(ext_msg), '│'
|
write(IO_STDERR,formatString) '│ ',trim(ext_msg), '│'
|
||||||
endif
|
endif
|
||||||
if (present(el)) &
|
if (present(label1)) then
|
||||||
write(IO_STDERR,'(a19,1x,i9,44x,a3)') ' │ at element ',el, '│'
|
write(formatString,'(a,i6.6,a,i6.6,a)') '(1x,a7,a',max(1,len_trim(label1)),',i9,',&
|
||||||
if (present(ip)) &
|
max(1,72-len_trim(label1)-9-7),'x,a)'
|
||||||
write(IO_STDERR,'(a19,1x,i9,44x,a3)') ' │ at IP ',ip, '│'
|
write(IO_STDERR,formatString) '│ at ',trim(label1),ID1, '│'
|
||||||
|
endif
|
||||||
|
if (present(label2)) then
|
||||||
|
write(formatString,'(a,i6.6,a,i6.6,a)') '(1x,a7,a',max(1,len_trim(label2)),',i9,',&
|
||||||
|
max(1,72-len_trim(label2)-9-7),'x,a)'
|
||||||
|
write(IO_STDERR,formatString) '│ at ',trim(label2),ID2, '│'
|
||||||
|
endif
|
||||||
write(IO_STDERR,'(a,69x,a)') ' │', '│'
|
write(IO_STDERR,'(a,69x,a)') ' │', '│'
|
||||||
write(IO_STDERR,'(a)') ' └'//IO_DIVIDER//'┘'
|
write(IO_STDERR,'(a)') ' └'//IO_DIVIDER//'┘'
|
||||||
flush(IO_STDERR)
|
flush(IO_STDERR)
|
||||||
|
|
|
@ -240,7 +240,8 @@ subroutine materialpoint_general(mode, ffn, ffn1, temperature_inp, dt, elFE, ip,
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
if (all(abs(materialpoint_dcsdE(1:6,1:6,ip,elCP)) < 1e-10_pReal)) call IO_warning(601,elCP,ip)
|
if (all(abs(materialpoint_dcsdE(1:6,1:6,ip,elCP)) < 1e-10_pReal)) &
|
||||||
|
call IO_warning(601,label1='element (CP)',ID1=elCP,label2='IP',ID2=ip)
|
||||||
|
|
||||||
cauchyStress = materialpoint_cs (1:6, ip,elCP)
|
cauchyStress = materialpoint_cs (1:6, ip,elCP)
|
||||||
jacobian = materialpoint_dcsdE(1:6,1:6,ip,elCP)
|
jacobian = materialpoint_dcsdE(1:6,1:6,ip,elCP)
|
||||||
|
|
|
@ -249,7 +249,7 @@ subroutine spectral_utilities_init()
|
||||||
case('fftw_exhaustive')
|
case('fftw_exhaustive')
|
||||||
FFTW_planner_flag = FFTW_EXHAUSTIVE
|
FFTW_planner_flag = FFTW_EXHAUSTIVE
|
||||||
case default
|
case default
|
||||||
call IO_warning(warning_ID=47,ext_msg=trim(IO_lc(num_grid%get_asString('fftw_plan_mode'))))
|
call IO_warning(47,trim(num_grid%get_asString('fftw_plan_mode')))
|
||||||
FFTW_planner_flag = FFTW_MEASURE
|
FFTW_planner_flag = FFTW_MEASURE
|
||||||
end select
|
end select
|
||||||
|
|
||||||
|
|
|
@ -1167,8 +1167,8 @@ module function phase_mechanical_dPdF(Delta_t,co,ce) result(dPdF)
|
||||||
enddo; enddo
|
enddo; enddo
|
||||||
call math_invert(temp_99,error,math_3333to99(lhs_3333))
|
call math_invert(temp_99,error,math_3333to99(lhs_3333))
|
||||||
if (error) then
|
if (error) then
|
||||||
call IO_warning(warning_ID=600, &
|
call IO_warning(600,'inversion error in analytic tangent calculation', &
|
||||||
ext_msg='inversion error in analytic tangent calculation')
|
label1='phase',ID1=ph,label2='entry',ID2=en)
|
||||||
dFidS = 0.0_pReal
|
dFidS = 0.0_pReal
|
||||||
else
|
else
|
||||||
dFidS = math_mul3333xx3333(math_99to3333(temp_99),rhs_3333)
|
dFidS = math_mul3333xx3333(math_99to3333(temp_99),rhs_3333)
|
||||||
|
@ -1201,8 +1201,8 @@ module function phase_mechanical_dPdF(Delta_t,co,ce) result(dPdF)
|
||||||
|
|
||||||
call math_invert(temp_99,error,math_eye(9)+math_3333to99(lhs_3333))
|
call math_invert(temp_99,error,math_eye(9)+math_3333to99(lhs_3333))
|
||||||
if (error) then
|
if (error) then
|
||||||
call IO_warning(warning_ID=600, &
|
call IO_warning(600,'inversion error in analytic tangent calculation', &
|
||||||
ext_msg='inversion error in analytic tangent calculation')
|
label1='phase',ID1=ph,label2='entry',ID2=en)
|
||||||
dSdF = rhs_3333
|
dSdF = rhs_3333
|
||||||
else
|
else
|
||||||
dSdF = math_mul3333xx3333(math_99to3333(temp_99),rhs_3333)
|
dSdF = math_mul3333xx3333(math_99to3333(temp_99),rhs_3333)
|
||||||
|
|
Loading…
Reference in New Issue