1 #if !defined(PETSC4PY_COMPAT_TAO_H)
2 #define PETSC4PY_COMPAT_TAO_H
3 #if defined(PETSC_USE_COMPLEX)
4
5 #define PetscTaoError do { \
6 PetscFunctionBegin; \
7 SETERRQ(PETSC_COMM_SELF,PETSC_ERR_SUP,"%s() not supported with complex scalars",PETSC_FUNCTION_NAME); \
8 PetscFunctionReturn(PETSC_ERR_SUP);} while (0)
9
TaoSetLMVMMatrix(PETSC_UNUSED Tao tao,PETSC_UNUSED Mat mat)10 PetscErrorCode TaoSetLMVMMatrix(PETSC_UNUSED Tao tao,PETSC_UNUSED Mat mat) {PetscTaoError;}
TaoGetLMVMMatrix(PETSC_UNUSED Tao tao,PETSC_UNUSED Mat * mat)11 PetscErrorCode TaoGetLMVMMatrix(PETSC_UNUSED Tao tao,PETSC_UNUSED Mat *mat) {PetscTaoError;}
12
TaoLMVMSetH0(PETSC_UNUSED Tao tao,PETSC_UNUSED Mat mat)13 PetscErrorCode TaoLMVMSetH0(PETSC_UNUSED Tao tao,PETSC_UNUSED Mat mat) {PetscTaoError;}
TaoLMVMGetH0(PETSC_UNUSED Tao tao,PETSC_UNUSED Mat * mat)14 PetscErrorCode TaoLMVMGetH0(PETSC_UNUSED Tao tao,PETSC_UNUSED Mat *mat) {PetscTaoError;}
TaoLMVMGetH0KSP(PETSC_UNUSED Tao tao,PETSC_UNUSED KSP * ksp)15 PetscErrorCode TaoLMVMGetH0KSP(PETSC_UNUSED Tao tao,PETSC_UNUSED KSP *ksp) {PetscTaoError;}
16
TaoBRGNGetSubsolver(PETSC_UNUSED Tao tao,PETSC_UNUSED Tao * subsolver)17 PetscErrorCode TaoBRGNGetSubsolver(PETSC_UNUSED Tao tao,PETSC_UNUSED Tao *subsolver) {PetscTaoError;}
TaoBRGNSetRegularizerObjectiveAndGradientRoutine(PETSC_UNUSED Tao tao,PETSC_UNUSED PetscErrorCode (* func)(Tao,Vec,PetscReal *,Vec,void *),PETSC_UNUSED PetscCtx ctx)18 PetscErrorCode TaoBRGNSetRegularizerObjectiveAndGradientRoutine(PETSC_UNUSED Tao tao,PETSC_UNUSED PetscErrorCode (*func)(Tao,Vec,PetscReal*,Vec,void*),PETSC_UNUSED PetscCtx ctx) {PetscTaoError;}
TaoBRGNSetRegularizerHessianRoutine(PETSC_UNUSED Tao tao,PETSC_UNUSED Mat H,PETSC_UNUSED PetscErrorCode (* func)(Tao,Vec,Mat,void *),PETSC_UNUSED PetscCtx ctx)19 PetscErrorCode TaoBRGNSetRegularizerHessianRoutine(PETSC_UNUSED Tao tao,PETSC_UNUSED Mat H,PETSC_UNUSED PetscErrorCode (*func)(Tao,Vec,Mat,void*),PETSC_UNUSED PetscCtx ctx) {PetscTaoError;}
TaoBRGNSetRegularizerWeight(PETSC_UNUSED Tao tao,PETSC_UNUSED PetscReal weight)20 PetscErrorCode TaoBRGNSetRegularizerWeight(PETSC_UNUSED Tao tao,PETSC_UNUSED PetscReal weight) {PetscTaoError;}
TaoBRGNSetL1SmoothEpsilon(PETSC_UNUSED Tao tao,PETSC_UNUSED PetscReal epsilon)21 PetscErrorCode TaoBRGNSetL1SmoothEpsilon(PETSC_UNUSED Tao tao,PETSC_UNUSED PetscReal epsilon) {PetscTaoError;}
TaoBRGNSetDictionaryMatrix(PETSC_UNUSED Tao tao,PETSC_UNUSED Mat D)22 PetscErrorCode TaoBRGNSetDictionaryMatrix(PETSC_UNUSED Tao tao,PETSC_UNUSED Mat D) {PetscTaoError;}
TaoBRGNGetDampingVector(PETSC_UNUSED Tao tao,PETSC_UNUSED Vec * d)23 PetscErrorCode TaoBRGNGetDampingVector(PETSC_UNUSED Tao tao,PETSC_UNUSED Vec *d) {PetscTaoError;}
24
TaoBNCGSetType(PETSC_UNUSED Tao tao,PETSC_UNUSED TaoBNCGType type)25 PetscErrorCode TaoBNCGSetType(PETSC_UNUSED Tao tao, PETSC_UNUSED TaoBNCGType type) {PetscTaoError;}
TaoBNCGGetType(PETSC_UNUSED Tao tao,PETSC_UNUSED TaoBNCGType * type)26 PetscErrorCode TaoBNCGGetType(PETSC_UNUSED Tao tao, PETSC_UNUSED TaoBNCGType *type) {PetscTaoError;}
27
TaoALMMGetSubsolver(PETSC_UNUSED Tao tao,PETSC_UNUSED Tao * subsolver)28 PetscErrorCode TaoALMMGetSubsolver(PETSC_UNUSED Tao tao, PETSC_UNUSED Tao *subsolver) {PetscTaoError;}
TaoALMMSetSubsolver(PETSC_UNUSED Tao tao,PETSC_UNUSED Tao subsolver)29 PetscErrorCode TaoALMMSetSubsolver(PETSC_UNUSED Tao tao, PETSC_UNUSED Tao subsolver) {PetscTaoError;}
TaoALMMGetType(PETSC_UNUSED Tao tao,PETSC_UNUSED TaoALMMType * type)30 PetscErrorCode TaoALMMGetType(PETSC_UNUSED Tao tao, PETSC_UNUSED TaoALMMType *type) {PetscTaoError;}
TaoALMMSetType(PETSC_UNUSED Tao tao,PETSC_UNUSED TaoALMMType type)31 PetscErrorCode TaoALMMSetType(PETSC_UNUSED Tao tao, PETSC_UNUSED TaoALMMType type) {PetscTaoError;}
32
33 #undef PetscTaoError
34
35 #endif/*PETSC_USE_COMPLEX*/
36 #endif/*PETSC4PY_COMPAT_TAO_H*/
37