6  use, 
intrinsic :: ieee_arithmetic, only: ieee_is_nan
 
   18    integer, 
intent(in) :: step
 
   19    real(kind=
rp), 
intent(in) :: t, dt
 
   20    character(len=LOG_SIZE) :: log_buf
 
   26    write(log_buf, 
'(A,A,A)') 
'Iterations:   ',&
 
   27         'Start residual:     ', 
'Final residual:' 
   29    write(log_buf, 
'(I11,3x, E15.7,5x, E15.7)') ksp_results(1)%iter, &
 
   30         ksp_results(1)%res_start, ksp_results(1)%res_final
 
   34    write(log_buf, 
'(A,A,A)') 
'Iterations:   ',&
 
   35         'Start residual:     ', 
'Final residual:' 
   37    write(log_buf, 
'(I11,3x, E15.7,5x, E15.7)') ksp_results(2)%iter, &
 
   38         ksp_results(2)%res_start, ksp_results(2)%res_final
 
   42    write(log_buf, 
'(A,A,A)') 
'Iterations:   ',&
 
   43         'Start residual:     ', 
'Final residual:' 
   45    write(log_buf, 
'(I11,3x, E15.7,5x, E15.7)') ksp_results(3)%iter, &
 
   46         ksp_results(3)%res_start, ksp_results(3)%res_final
 
   50    write(log_buf, 
'(A,A,A)') 
'Iterations:   ', &
 
   51         'Start residual:     ', 
'Final residual:' 
   53    write(log_buf, 
'(I11,3x, E15.7,5x, E15.7)') ksp_results(4)%iter, &
 
   54         ksp_results(4)%res_start, ksp_results(4)%res_final
 
   59       if (ieee_is_nan(ksp_results(i)%res_final)) 
then 
   60          call neko_log%error(
"Fluid solver diverged")
 
 
Auxiliary routines for fluid solvers.
 
subroutine, public fluid_step_info(step, t, dt, ksp_results)
Prints for prs, velx, vely, velz the following: Number of iterations, start residual,...
 
Implements the base abstract type for Krylov solvers plus helper types.
 
type(log_t), public neko_log
Global log stream.
 
integer, parameter, public log_size
 
integer, parameter, public rp
Global precision used in computations.
 
Type for storing initial and final residuals in a Krylov solver.