1 #if !defined(PETSC4PY_COMPAT_H2OPUS_H) 2 #define PETSC4PY_COMPAT_H2OPUS_H 3 4 #if !defined(PETSC_HAVE_H2OPUS) 5 6 #define PetscMatH2OPUSError do { \ 7 PetscFunctionBegin; \ 8 SETERRQ(PETSC_COMM_SELF,PETSC_ERR_SUP,"%s() requires H2OPUS",PETSC_FUNCTION_NAME); \ 9 PetscFunctionReturn(PETSC_ERR_SUP);} while (0) 10 11 PetscErrorCode MatCreateH2OpusFromMat(PETSC_UNUSED Mat a,PETSC_UNUSED PetscInt b,PETSC_UNUSED const PetscReal c[],PETSC_UNUSED PetscBool d,PETSC_UNUSED PetscReal e,PETSC_UNUSED PetscInt f,PETSC_UNUSED PetscInt g,PETSC_UNUSED PetscInt h,PETSC_UNUSED PetscReal i,PETSC_UNUSED Mat* l) {PetscMatH2OPUSError;} 12 PetscErrorCode MatH2OpusOrthogonalize(PETSC_UNUSED Mat a) {PetscMatH2OPUSError;} 13 PetscErrorCode MatH2OpusCompress(PETSC_UNUSED Mat a,PETSC_UNUSED PetscReal b) {PetscMatH2OPUSError;} 14 PetscErrorCode MatH2OpusLowRankUpdate(PETSC_UNUSED Mat a,PETSC_UNUSED Mat b,PETSC_UNUSED Mat c,PETSC_UNUSED PetscScalar d) {PetscMatH2OPUSError;} 15 16 #undef PetscMatH2OPUSError 17 18 #endif 19 20 #endif/*PETSC4PY_COMPAT_H2OPUS_H*/ 21