Lines Matching refs:schur

52 …Mat                       schur;      /* The Schur complement S = A11 - A10 A00^{-1} A01, the KSP …  member
95 return jac->schur; in FieldSplitSchurPre()
189 if (jac->schur) { in PCView_FieldSplit_Schur()
190 PetscCall(MatSchurComplementGetAinvType(jac->schur, &atype)); in PCView_FieldSplit_Schur()
859 if (jac->schur) { in PCSetUp_FieldSplit()
869 PetscCall(MatSchurComplementGetKSP(jac->schur, &kspInner)); in PCSetUp_FieldSplit()
879 …PetscCall(MatSchurComplementUpdateSubMatrices(jac->schur, jac->mat[0], jac->pmat[0], jac->B, jac->… in PCSetUp_FieldSplit()
882 PetscCall(MatSchurComplementGetPmat(jac->schur, MAT_INITIAL_MATRIX, &jac->schurp)); in PCSetUp_FieldSplit()
885 PetscCall(MatSchurComplementComputeExplicitOperator(jac->schur, &jac->schur_user)); in PCSetUp_FieldSplit()
889 PetscCall(KSPSetOperators(jac->kspschur, jac->schur, FieldSplitSchurPre(jac))); in PCSetUp_FieldSplit()
908 PetscCall(MatCreate(((PetscObject)jac->mat[0])->comm, &jac->schur)); in PCSetUp_FieldSplit()
909 PetscCall(MatSetType(jac->schur, MATSCHURCOMPLEMENT)); in PCSetUp_FieldSplit()
910 …PetscCall(MatSchurComplementSetSubMatrices(jac->schur, jac->mat[0], jac->pmat[0], jac->B, jac->C, … in PCSetUp_FieldSplit()
912 PetscCall(MatSetOptionsPrefix(jac->schur, schurmatprefix)); in PCSetUp_FieldSplit()
913 PetscCall(MatSchurComplementGetKSP(jac->schur, &kspt)); in PCSetUp_FieldSplit()
918 if (sp) PetscCall(MatSetNullSpace(jac->schur, sp)); in PCSetUp_FieldSplit()
927 PetscCall(MatSchurComplementGetKSP(jac->schur, &kspInner)); in PCSetUp_FieldSplit()
953 PetscCall(MatSchurComplementSetKSP(jac->schur, jac->head->ksp)); in PCSetUp_FieldSplit()
957 PetscCall(MatSetFromOptions(jac->schur)); in PCSetUp_FieldSplit()
959 PetscCall(PetscObjectTypeCompare((PetscObject)jac->schur, MATSCHURCOMPLEMENT, &flg)); in PCSetUp_FieldSplit()
964 PetscCall(MatSchurComplementGetKSP(jac->schur, &kspInner)); in PCSetUp_FieldSplit()
997 …= PC_FIELDSPLIT_SCHUR_PRE_SELFP) PetscCall(MatSchurComplementGetPmat(jac->schur, MAT_INITIAL_MATRI… in PCSetUp_FieldSplit()
1008 … jac->head->ksp) PetscCall(MatSchurComplementComputeExplicitOperator(jac->schur, &jac->schur_user)… in PCSetUp_FieldSplit()
1010 PetscCall(KSPSetOperators(jac->kspschur, jac->schur, FieldSplitSchurPre(jac))); in PCSetUp_FieldSplit()
1026 PetscCall(MatAssemblyBegin(jac->schur, MAT_FINAL_ASSEMBLY)); in PCSetUp_FieldSplit()
1027 PetscCall(MatAssemblyEnd(jac->schur, MAT_FINAL_ASSEMBLY)); in PCSetUp_FieldSplit()
1028 if (issym) PetscCall(MatSetOption(jac->schur, MAT_SYMMETRIC, PETSC_TRUE)); in PCSetUp_FieldSplit()
1029 if (isspd) PetscCall(MatSetOption(jac->schur, MAT_SPD, PETSC_TRUE)); in PCSetUp_FieldSplit()
1035 if (LSC_L) PetscCall(PetscObjectCompose((PetscObject)jac->schur, "LSC_L", LSC_L)); in PCSetUp_FieldSplit()
1039 if (LSC_L) PetscCall(PetscObjectCompose((PetscObject)jac->schur, "LSC_Lp", LSC_L)); in PCSetUp_FieldSplit()
1136 PetscCall(PetscObjectQuery((PetscObject)jac->schur, "AinvB", (PetscObject *)&A)); in PCSetUpOnBlocks_FieldSplit_Schur()
1142 PetscCall(PetscObjectCompose((PetscObject)jac->schur, "AinvB", NULL)); in PCSetUpOnBlocks_FieldSplit_Schur()
1154 …PetscCall(MatCreateDenseFromVecType(PetscObjectComm((PetscObject)jac->schur), vtype, m, PETSC_DECI… in PCSetUpOnBlocks_FieldSplit_Schur()
1155 PetscCall(PetscObjectCompose((PetscObject)jac->schur, "AinvB", (PetscObject)A)); in PCSetUpOnBlocks_FieldSplit_Schur()
1274 PetscCall(PetscObjectQuery((PetscObject)jac->schur, "AinvB", (PetscObject *)&AinvB)); in PCApply_FieldSplit_Schur()
1286 …_HIP))) PetscCall(VecCreateMPIWithArray(PetscObjectComm((PetscObject)jac->schur), 1, m, M, array +… in PCApply_FieldSplit_Schur()
1288 …e)) PetscCall(VecCreateMPICUDAWithArray(PetscObjectComm((PetscObject)jac->schur), 1, m, M, array +… in PCApply_FieldSplit_Schur()
1291 …pe)) PetscCall(VecCreateMPIHIPWithArray(PetscObjectComm((PetscObject)jac->schur), 1, m, M, array +… in PCApply_FieldSplit_Schur()
1295 PetscCall(MatSchurComplementComputeExplicitOperator(jac->schur, &jac->schur_user)); in PCApply_FieldSplit_Schur()
1296 PetscCall(KSPSetOperators(jac->kspschur, jac->schur, jac->schur_user)); in PCApply_FieldSplit_Schur()
1461 PetscCall(PetscObjectQuery((PetscObject)jac->schur, "AinvB", (PetscObject *)&AinvB)); in PCMatApply_FieldSplit_Schur()
1482 …PetscCall(MatCreateDense(PetscObjectComm((PetscObject)jac->schur), m, PETSC_DECIDE, M, P + Q, arra… in PCMatApply_FieldSplit_Schur()
1488 …PetscCall(MatCreateDenseCUDA(PetscObjectComm((PetscObject)jac->schur), m, PETSC_DECIDE, M, P + Q, … in PCMatApply_FieldSplit_Schur()
1495 …PetscCall(MatCreateDenseHIP(PetscObjectComm((PetscObject)jac->schur), m, PETSC_DECIDE, M, P + Q, a… in PCMatApply_FieldSplit_Schur()
1500 …ed(HAVE_HIP))) PetscCall(MatCreateDense(PetscObjectComm((PetscObject)jac->schur), m, q, M, Q, arra… in PCMatApply_FieldSplit_Schur()
1502 …DA(mtype)) PetscCall(MatCreateDenseCUDA(PetscObjectComm((PetscObject)jac->schur), m, q, M, Q, arra… in PCMatApply_FieldSplit_Schur()
1505 …HIP(mtype)) PetscCall(MatCreateDenseHIP(PetscObjectComm((PetscObject)jac->schur), m, q, M, Q, arra… in PCMatApply_FieldSplit_Schur()
1509 PetscCall(MatSchurComplementComputeExplicitOperator(jac->schur, &jac->schur_user)); in PCMatApply_FieldSplit_Schur()
1510 PetscCall(KSPSetOperators(jac->kspschur, jac->schur, jac->schur_user)); in PCMatApply_FieldSplit_Schur()
2091 if (jac->schur) PetscCall(PetscObjectCompose((PetscObject)jac->schur, "AinvB", NULL)); in PCReset_FieldSplit()
2092 PetscCall(MatDestroy(&jac->schur)); in PCReset_FieldSplit()
2263 …PetscCheck(jac->schur, PetscObjectComm((PetscObject)pc), PETSC_ERR_ARG_WRONGSTATE, "Must call KSPS… in PCFieldSplitSchurGetSubKSP_FieldSplit()
2280 …PetscCheck(jac->schur, PetscObjectComm((PetscObject)pc), PETSC_ERR_ARG_WRONGSTATE, "Must call KSPS… in PCFieldSplitGetSubKSP_FieldSplit_Schur()
2282 PetscCall(MatSchurComplementGetKSP(jac->schur, *subksp)); in PCFieldSplitGetSubKSP_FieldSplit_Schur()
2951 if (S) *S = jac->schur; in PCFieldSplitSchurGetS()
2981 …PetscCheck(S && (*S == jac->schur), PETSC_COMM_SELF, PETSC_ERR_ARG_WRONG, "MatSchurComplement rest… in PCFieldSplitSchurRestoreS()