:orphan: # KSPHPDDMPrecision Precision of Krylov bases used by `KSPHPDDM` ## Synopsis ``` typedef enum { KSP_HPDDM_PRECISION_HALF = 0, KSP_HPDDM_PRECISION_SINGLE = 1, KSP_HPDDM_PRECISION_DOUBLE = 2, KSP_HPDDM_PRECISION_QUADRUPLE = 3 } KSPHPDDMPrecision; ``` ## Values - ***`KSP_HPDDM_PRECISION_HALF` -*** default when PETSc is configured `--with-precision=__fp16` - ***`KSP_HPDDM_PRECISION_SINGLE` -*** default when PETSc is configured `--with-precision=single` - ***`KSP_HPDDM_PRECISION_DOUBLE` -*** default when PETSc is configured `--with-precision=double` - ***`KSP_HPDDM_PRECISION_QUADRUPLE` -*** default when PETSc is configured `--with-precision=__float128` ## See Also [](ch_ksp), `KSP`, `KSPHPDDM` ## Level intermediate ## Location include/petscksp.h --- [Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/include/petscksp.h) [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)