MatCreateLMVMBroyden#
Creates a limited-memory “good” Broyden-type approximation matrix used for a Jacobian. L-Brdn is not guaranteed to be symmetric or positive-definite.
Synopsis#
#include "petscksp.h"
PetscErrorCode MatCreateLMVMBroyden(MPI_Comm comm, PetscInt n, PetscInt N, Mat *B)
To use the L-Brdn matrix with other vector types, the matrix must be
created using MatCreate()
and MatSetType()
, followed by MatLMVMAllocate()
.
This ensures that the internal storage and work vectors are duplicated from the
correct type of vector.
Collective
Input Parameters#
comm - MPI communicator
n - number of local rows for storage vectors
N - global size of the storage vectors
Output Parameter#
B - the matrix
Note#
It is recommended that one use the MatCreate()
, MatSetType()
and/or MatSetFromOptions()
paradigm instead of this routine directly.
See Also#
KSP: Linear System Solvers, MatCreate()
, MATLMVM
, MATLMVMBRDN
, MatCreateLMVMDFP()
, MatCreateLMVMSR1()
,
MatCreateLMVMBFGS()
, MatCreateLMVMBadBrdn()
, MatCreateLMVMSymBrdn()
Level#
intermediate
Location#
src/ksp/ksp/utils/lmvm/brdn/brdn.c
Index of all KSP routines
Table of Contents for all manual pages
Index of all manual pages