#include "petscsnes.h" #include "petscdm.h" PetscErrorCode SNESComputeJacobianDefaultColor(SNES snes,Vec x1,Mat J,Mat B,void *ctx)Collective on SNES
snes | - nonlinear solver object | |
x1 | - location at which to evaluate Jacobian | |
ctx | - MatFDColoring context or NULL |
J | - Jacobian matrix (not altered in this routine) | |
B | - newly computed Jacobian matrix to use with preconditioner (generally the same as J) |
-snes_fd_color_use_mat | - use a matrix coloring from the explicit matrix nonzero pattern instead of from the DM providing the matrix | |
-snes_fd_color | - Activates SNESComputeJacobianDefaultColor() in SNESSetFromOptions() | |
-mat_fd_coloring_err <err> | - Sets <err> (square root of relative error in the function) | |
-mat_fd_coloring_umin <umin> | - Sets umin, the minimum allowable u-value magnitude | |
-mat_fd_type | - Either wp or ds (see MATMFFD_WP or MATMFFD_DS) | |
-snes_mf_operator | - Use matrix free Section 1.5 Writing Application Codes with PETSc of Jacobian | |
-snes_mf | - Use matrix free Jacobian with not explicit Jacobian represenation |
SNES supports three approaches for computing (approximate) Jacobians: user provided via SNESSetJacobian(), matrix free via SNESSetUseMatrixFree, and computing explictly with finite differences and coloring using MatFDColoring. It is also possible to use automatic differentiation and the MatFDColoring object.