6.3.1. Tpetra Solver Block

6.3.1.1. Tpetra Equation Solver

Scope

Sierra

Summary

Use a Tpetra-based linear solver.

Description

If the linear solve fails it will report an error code. While these codes are not universally standardized across linear solvers, they can generally be interpreted with the following rules:

  • Error 1 (or -1): The linear solver reached the maximum number of linear solver iterations and did not reach a solution. Check the final linear solver residual to see if this is serious or not. Even if the error is not serious (residuals are small) this usually means the solve is much more expensive than necessary and a better solver/preconditioner combination should be used.

  • Error 2 (or -2, 4, -4, 5, -5): The linear solver encountered a fatal internal error. This is often because of a singular matrix or a NaN or Infinite term. This is almost always a serious error.

  • Error 3 (or -3): The linear solver had an internal loss of precision. This is often not a serious error, but may indicate the need for a better solver/preconditioner combination. As always, check the final linear solver residual reported in the log file to determine if it is serious or not.

begin Tpetra Equation Solver Solver Name

   Bc Enforcement {=} {exact | exact_no_column_mod | remove | solver | solver_no_column_mod}

   Failed Solve Matrix Output {=} value

   Matrix Output {=} value

   Matrix Output Time Range {=} value1[ value2]

   Matrix Scaling {=} {diagonal | one_norm}

   begin Bicgstab Solver
   end

   begin Cg Solver
   end

   begin Expert Belos Solver
   end

   begin Gcrodr Solver
   end

   begin Gmres Solver
   end

   begin Klu2 Solver
   end

   begin Poly Solver
   end

   begin Preset Solver
   end

   begin Superlu Solver
   end

   begin Umfpack Solver
   end

end Tpetra Equation Solver Solver Name

6.3.1.1.1. Line Commands

Bc Enforcement

Syntax

Bc Enforcement {=} {exact | exact_no_column_mod | remove | solver | solver_no_column_mod}

Summary

Control how Dirichlet BC’s are enforced. Fuego only.

Parameter

Value

Default

{=}

{= | are | is}

value

{exact | exact_no_column_mod | remove | solver | solver_no_column_mod}


Failed Solve Matrix Output

Syntax

Failed Solve Matrix Output {=} value

Summary

On a failed linear solve, output the matrix to the specified file name.

Parameter

Value

Default

{=}

{= | are | is}

value

string


Matrix Output

Syntax

Matrix Output {=} value

Summary

Output the matrix to the specified file name.

Parameter

Value

Default

{=}

{= | are | is}

value

string


Matrix Output Time Range

Syntax

Matrix Output Time Range {=} value1[ value2]

Summary

Range of simulation time to output the matrix to file, default is dump out all matrices per step.

Parameter

Value

Default

{=}

{= | are | is}

value

real1[ real2]


Matrix Scaling

Syntax

Matrix Scaling {=} {diagonal | one_norm}

Summary

Apply a pre-solve scaling to the matrix.

Description

In some problems scaling the matrix prior to the linear solve can help reduce the condition number of the matrix. This should be used in addition to an appropriate preconditioner.

Parameter

Value

Default

{=}

{= | are | is}

value

{diagonal | one_norm}