Actual source code: schurm.h

petsc-master 2019-08-22
Report Typos and Errors
  1:  #include <petsc/private/kspimpl.h>
  2:  #include <petsc/private/matimpl.h>
  3:  #include <petscksp.h>

  5: typedef struct {
  6:   Mat                        A,Ap,B,C,D;
  7:   KSP                        ksp;
  8:   Vec                        work1,work2;
  9:   MatSchurComplementAinvType ainvtype;
 10: } Mat_SchurComplement;

 12: PETSC_INTERN PetscErrorCode MatCreateVecs_SchurComplement(Mat N, Vec*, Vec*);
 13: PETSC_INTERN PetscErrorCode MatView_SchurComplement(Mat, PetscViewer);
 14: PETSC_INTERN PetscErrorCode MatMultTranspose_SchurComplement(Mat, Vec, Vec);
 15: PETSC_INTERN PetscErrorCode MatMult_SchurComplement(Mat, Vec, Vec);
 16: PETSC_INTERN PetscErrorCode MatMultAdd_SchurComplement(Mat, Vec, Vec, Vec);
 17: PETSC_INTERN PetscErrorCode MatSetFromOptions_SchurComplement(PetscOptionItems*, Mat);
 18: PETSC_INTERN PetscErrorCode MatDestroy_SchurComplement(Mat);
 19: PETSC_INTERN PetscErrorCode MatGetSchurComplement_Basic(Mat, IS, IS, IS, IS, MatReuse, Mat*, MatSchurComplementAinvType, MatReuse, Mat*);

 21: PETSC_EXTERN PetscErrorCode MatCreate_SchurComplement(Mat);