ir_control_type structure#

    struct ir_control_type{T}
      f_indexing::Bool
      error::Int32
      out::Int32
      print_level::Int32
      itref_max::Int32
      acceptable_residual_relative::T
      acceptable_residual_absolute::T
      required_residual_relative::T
      record_residuals::Bool
      space_critical::Bool
      deallocate_error_fatal::Bool
      prefix::NTuple{31,Cchar}

detailed documentation#

control derived type as a Julia structure

components#

Bool f_indexing

use C or Fortran sparse matrix indexing

Int32 error

unit for error messages

Int32 out

unit for monitor output

Int32 print_level

controls level of diagnostic output

Int32 itref_max

maximum number of iterative refinements allowed

T acceptable_residual_relative

refinement will cease as soon as the residual \(\|Ax-b\|\) falls below max( acceptable_residual_relative \* \(\|b\|\), acceptable_residual_absolute )

T acceptable_residual_absolute

see acceptable_residual_relative

T required_residual_relative

refinement will be judged to have failed if the residual \(\|Ax-b\| \geq\) required_residual_relative \* \(\|b\|\). No checking if required_residual_relative < 0

Bool record_residuals

record the initial and final residual

Bool space_critical

if space is critical, ensure allocated arrays are no bigger than needed

Bool deallocate_error_fatal

exit if any deallocation fails

NTuple{31,Cchar} prefix

all output lines will be prefixed by prefix(2:LEN(TRIM(.prefix))-1) where prefix contains the required string enclosed in quotes, e.g. “string” or ‘string’