sha_control_type structure#
struct sha_control_type f_indexing::Bool error::Int32 out::Int32 print_level::Int32 approximation_algorithm::Int32 dense_linear_solver::Int32 extra_differences::Int32 sparse_row::Int32 recursion_max::Int32 recursion_entries_required::Int32 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
error and warning diagnostics occur on stream error
Int32 out
general output occurs on stream out
Int32 print_level
the level of output required. <= 0 gives no output, = 1 gives a one-line summary for every iteration, = 2 gives a summary of the inner iteration for each iteration, >= 3 gives increasingly verbose (debugging) output
Int32 approximation_algorithm
which approximation algorithm should be used?
1 : unsymmetric, parallel (Alg 2.1 in paper)
2 : symmetric (Alg 2.2 in pape)
3 : composite, parallel (Alg 2.3 in paper)
4 : composite, block parallel (Alg 2.4 in paper)
Int32 dense_linear_solver
which dense linear equation solver should be used?
1 : Gaussian elimination
2 : QR factorization
3 : singular-value decomposition
4 : singular-value decomposition with divide-and-conquer
Int32 extra_differences
if available use an addition extra_differences differences
Int32 sparse_row
a row is considered sparse if it has no more than .sparse_row entries
ipc_ recursion_max
limit on the maximum number of levels of recursion (Alg. 2.4)
ipc_ recursion_entries_required
the minimum number of entries in a reduced row that are required if a further level of recuresion is allowed (Alg. 2.4)
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’