static PetscErrorCode PCView_Cholesky(PC pc,PetscViewer viewer) { PC_Cholesky *chol = (PC_Cholesky*)pc->data; PetscErrorCode ierr; PetscBool iascii; PetscFunctionBegin; ierr = PetscObjectTypeCompare((PetscObject)viewer,PETSCVIEWERASCII,&iascii); CHKERRQ(ierr); if (iascii) { if (chol->hdr.inplace) { ierr = PetscViewerASCIIPrintf(viewer," Cholesky: in-place factorization\n"); CHKERRQ(ierr); } else { ierr = PetscViewerASCIIPrintf(viewer," Cholesky: out-of-place factorization\n"); CHKERRQ(ierr); } if (chol->hdr.reusefill) { ierr = PetscViewerASCIIPrintf(viewer," Reusing fill from past factorization\n"); CHKERRQ(ierr); } if (chol->hdr.reuseordering) { ierr = PetscViewerASCIIPrintf(viewer," Reusing reordering from past factorization\n"); CHKERRQ(ierr); } } ierr = PCView_Factor(pc,viewer); CHKERRQ(ierr); PetscFunctionReturn(0); }
static PetscErrorCode PCView_ILU(PC pc,PetscViewer viewer) { PetscErrorCode ierr; PetscFunctionBegin; ierr = PCView_Factor(pc,viewer);CHKERRQ(ierr); PetscFunctionReturn(0); }
static PetscErrorCode PCView_LU(PC pc,PetscViewer viewer) { PC_LU *lu = (PC_LU*)pc->data; PetscErrorCode ierr; PetscTruth iascii; PetscFunctionBegin; ierr = PetscTypeCompare((PetscObject)viewer,PETSC_VIEWER_ASCII,&iascii);CHKERRQ(ierr); if (iascii) { if (lu->inplace) { ierr = PetscViewerASCIIPrintf(viewer," LU: in-place factorization\n");CHKERRQ(ierr); } else { ierr = PetscViewerASCIIPrintf(viewer," LU: out-of-place factorization\n");CHKERRQ(ierr); } if (lu->reusefill) {ierr = PetscViewerASCIIPrintf(viewer," Reusing fill from past factorization\n");CHKERRQ(ierr);} if (lu->reuseordering) {ierr = PetscViewerASCIIPrintf(viewer," Reusing reordering from past factorization\n");CHKERRQ(ierr);} } ierr = PCView_Factor(pc,viewer);CHKERRQ(ierr); PetscFunctionReturn(0); }