petsc-3.7.7 2017-09-25
Report Typos and Errors

# KSPSetFromOptions

Sets KSP options from the options database. This routine must be called before KSPSetUp() if the user is to be allowed to set the Krylov type.

### Synopsis

    #include "petscksp.h"
    PetscErrorCode  KSPSetFromOptions(KSP ksp)

Collective on KSP

### Input Parameters

ksp -the Krylov space context

### Options Database Keys

| -ksp_max_it | - maximum number of linear iterations
| -ksp_rtol rtol | - relative tolerance used in default determination of convergence, i.e. if residual norm decreases by this factor than convergence is declared
| -ksp_atol abstol | - absolute tolerance used in default convergence test, i.e. if residual norm is less than this then convergence is declared
| -ksp_divtol tol | - if residual norm increases by this factor than divergence is declared
| -ksp_converged_use_initial_residual_norm | - see KSPConvergedDefaultSetUIRNorm()
| -ksp_converged_use_min_initial_residual_norm | - see KSPConvergedDefaultSetUMIRNorm()
| -ksp_norm_type | - none - skip norms used in convergence tests (useful only when not using convergence test (say you always want to run with 5 iterations) to save on communication overhead preconditioned - default for left preconditioning unpreconditioned - see KSPSetNormType() natural - see KSPSetNormType()
| -ksp_check_norm_iteration it | - do not compute residual norm until iteration number it (does compute at 0th iteration) works only for PCBCGS, PCIBCGS and and PCCG
| -ksp_lag_norm | - compute the norm of the residual for the ith iteration on the i+1 iteration; this means that one can use the norm of the residual for convergence test WITHOUT an extra MPI_Allreduce() limiting global synchronizations. This will require 1 more iteration of the solver than usual.
| -ksp_fischer_guess <model,size> | - uses the Fischer initial guess generator for repeated linear solves
| -ksp_constant_null_space | - assume the operator (matrix) has the constant vector in its null space
| -ksp_test_null_space | - tests the null space set with MatSetNullSpace() to see if it truly is a null space
| -ksp_knoll | - compute initial guess by applying the preconditioner to the right hand side
| -ksp_monitor_cancel | - cancel all previous convergene monitor routines set
| -ksp_monitor <optional filename> | - print residual norm at each iteration
| -ksp_monitor_lg_residualnorm | - plot residual norm at each iteration
| -ksp_monitor_solution [ascii binary or draw][:filename][:format option] | - plot solution at each iteration
| -ksp_monitor_singular_value | - monitor extreme singular values at each iteration

### Notes

To see all options, run your program with the -help option or consult Users-Manual: Chapter 4 KSP: Linear Equations Solvers

### Keywords

KSP, set, from, options, database

### See Also

KSPSetUseFischerGuess()

Level:beginner
Location:src/ksp/ksp/interface/itcl.c
Index of all KSP routines
Table of Contents for all manual pages
Index of all manual pages

### Examples

src/ksp/pc/examples/tutorials/ex1.c.html
src/ksp/pc/examples/tutorials/ex2.c.html
src/ksp/ksp/examples/tutorials/ex1.c.html
src/ksp/ksp/examples/tutorials/ex2.c.html
src/ksp/ksp/examples/tutorials/ex3.c.html
src/ksp/ksp/examples/tutorials/ex4.c.html
src/ksp/ksp/examples/tutorials/ex5.c.html
src/ksp/ksp/examples/tutorials/ex6.c.html
src/ksp/ksp/examples/tutorials/ex7.c.html
src/ksp/ksp/examples/tutorials/ex8.c.html
src/ksp/ksp/examples/tutorials/ex9.c.html