sils_control_type structure#

    struct sils_control_type{T,INT}
      f_indexing::Bool
      ICNTL::NTuple{30,INT}
      lp::INT
      wp::INT
      mp::INT
      sp::INT
      ldiag::INT
      la::INT
      liw::INT
      maxla::INT
      maxliw::INT
      pivoting::INT
      nemin::INT
      factorblocking::INT
      solveblocking::INT
      thresh::INT
      ordering::INT
      scaling::INT
      CNTL::NTuple{5,T}
      multiplier::T
      reduce::T
      u::T
      static_tolerance::T
      static_level::T
      tolerance::T
      convergence::T

detailed documentation#

control derived type as a Julia structure

components#

Bool f_indexing

use C or Fortran sparse matrix indexing

INT ICNTL[30]

MA27 internal integer controls.

INT lp

Unit for error messages.

INT wp

Unit for warning messages.

INT mp

Unit for monitor output.

INT sp

Unit for statistical output.

INT ldiag

Controls level of diagnostic output.

INT la

Initial size for real array for the factors. If less than nrlnec, default size used.

INT liw

Initial size for integer array for the factors. If less than nirnec, default size used.

INT maxla

Max. size for real array for the factors.

INT maxliw

Max. size for integer array for the factors.

INT pivoting

Controls pivoting. Possible values are:

  • 1 Numerical pivoting will be performed.

  • 2 No pivoting will be performed and an error exit will occur immediately a pivot sign change is detected.

  • 3 No pivoting will be performed and an error exit will occur if a zero pivot is detected.

  • 4 No pivoting is performed but pivots are changed to all be positive.

INT nemin

Minimum number of eliminations in a step (unused)

INT factorblocking

Level 3 blocking in factorize (unused)

INT solveblocking

Level 2 and 3 blocking in solve.

INT thresh

Controls threshold for detecting full rows in analyse, registered as percentage of N, 100 Only fully dense rows detected (default)

INT ordering

Controls ordering: Possible values are:

  • 0 AMD using HSL’s MC47

  • 1 User defined

  • 2 AMD using HSL’s MC50

  • 3 Min deg as in HSL’s MA57

  • 4 Metis_nodend ordering

  • 5 Ordering chosen depending on matrix characteristics. At the moment choices are HSL’s MC50 or Metis_nodend

  • >5 Presently equivalent to 5 but may chnage

INT scaling

Controls scaling: Possible values are:

  • 0 No scaling

  • >0 Scaling using HSL’s MC64 but may change for > 1

T CNTL[5]

MA27 internal real controls.

T multiplier

Factor by which arrays sizes are to be increased if they are too small.

T reduce

If previously allocated internal workspace arrays are greater than reduce times the currently required sizes, they are reset to current requirment.

T u

Pivot threshold.

T static_tolerance

used for setting static pivot level

T static_level

used for switch to static

T tolerance

Anything less than this is considered zero.

T convergence

used to monitor convergence in iterative refinement