:orphan: # KSPGetResidualHistory Gets the array used to hold the residual history and the number of residuals it contains. ## Synopsis ``` #include "petscksp.h" #include "petscmat.h" PetscErrorCode KSPGetResidualHistory(KSP ksp, const PetscReal *a[], PetscInt *na) ``` Not Collective ## Input Parameter - ***ksp -*** iterative context obtained from `KSPCreate()` ## Output Parameters - ***a -*** pointer to array to hold history (or `NULL`) - ***na -*** number of used entries in a (or `NULL`) ## Note This array is borrowed and should not be freed by the caller. Can only be called after a `KSPSetResidualHistory()` otherwise a and na are set to zero ## Fortran Note The Fortran version of this routine has a calling sequence ```none call KSPGetResidualHistory(KSP ksp, integer na, integer ierr) ``` note that you have passed a Fortran array into `KSPSetResidualHistory()` and you need to access the residual values from this Fortran array you provided. Only the `na` (number of residual norms currently held) is set. ## See Also [](ch_ksp), `KSPSetResidualHistory()`, `KSP` ## Level advanced ## Location src/ksp/ksp/interface/itfunc.c --- [Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/ksp/ksp/interface/itfunc.c) [Index of all KSP routines](index.md) [Table of Contents for all manual pages](/manualpages/index.md) [Index of all manual pages](/manualpages/singleindex.md)