| /petsc/src/mat/graphops/order/ |
| H A D | rcm.c | 37 …, const PetscInt *xadj, const PetscInt *adjncy, PetscInt *mask, PetscInt *perm, PetscInt *ccsize, … in SPARSEPACKrcm() argument 52 --perm; in SPARSEPACKrcm() 57 PetscCall(SPARSEPACKdegree(root, &xadj[1], &adjncy[1], &mask[1], °[1], ccsize, &perm[1])); in SPARSEPACKrcm() 70 node = perm[i]; in SPARSEPACKrcm() 85 perm[lnbr] = nbr; in SPARSEPACKrcm() 96 nbr = perm[k]; in SPARSEPACKrcm() 99 lperm = perm[l]; in SPARSEPACKrcm() 101 perm[l + 1] = lperm; in SPARSEPACKrcm() 105 perm[l + 1] = nbr; in SPARSEPACKrcm() 117 lperm = perm[l]; in SPARSEPACKrcm() [all …]
|
| H A D | gennd.c | 6 PetscErrorCode SPARSEPACKrevrse(const PetscInt *n, PetscInt *perm) in SPARSEPACKrevrse() argument 16 --perm; in SPARSEPACKrevrse() 22 swap = perm[i]; in SPARSEPACKrevrse() 23 perm[i] = perm[in]; in SPARSEPACKrevrse() 24 perm[in] = swap; in SPARSEPACKrevrse() 54 …, const PetscInt *xadj, const PetscInt *adjncy, PetscInt *mask, PetscInt *perm, PetscInt *xls, Pet… in SPARSEPACKgennd() argument 67 --perm; in SPARSEPACKgennd() 82 …PetscCall(SPARSEPACKfndsep(&root, &xadj[1], &adjncy[1], &mask[1], &nsep, &perm[num + 1], &xls[1], … in SPARSEPACKgennd() 92 PetscCall(SPARSEPACKrevrse(neqns, &perm[1])); in SPARSEPACKgennd()
|
| H A D | sprcm.c | 9 PetscInt i, *mask, *xls, nrow, *perm; in MatGetOrdering_RCM() local 17 PetscCall(PetscMalloc3(nrow, &mask, nrow, &perm, 2 * nrow, &xls)); in MatGetOrdering_RCM() 18 PetscCall(SPARSEPACKgenrcm(&nrow, ia, ja, perm, mask, xls)); in MatGetOrdering_RCM() 22 for (i = 0; i < nrow; i++) perm[i]--; in MatGetOrdering_RCM() 23 PetscCall(ISCreateGeneral(PETSC_COMM_SELF, nrow, perm, PETSC_COPY_VALUES, row)); in MatGetOrdering_RCM() 24 PetscCall(ISCreateGeneral(PETSC_COMM_SELF, nrow, perm, PETSC_COPY_VALUES, col)); in MatGetOrdering_RCM() 25 PetscCall(PetscFree3(mask, perm, xls)); in MatGetOrdering_RCM()
|
| H A D | sp1wd.c | 9 PetscInt i, *mask, *xls, nblks, *xblk, *ls, nrow, *perm; in MatGetOrdering_1WD() local 17 PetscCall(PetscMalloc5(nrow, &mask, nrow + 1, &xls, nrow, &ls, nrow + 1, &xblk, nrow, &perm)); in MatGetOrdering_1WD() 18 PetscCall(SPARSEPACKgen1wd(&nrow, ia, ja, mask, &nblks, xblk, perm, xls, ls)); in MatGetOrdering_1WD() 21 for (i = 0; i < nrow; i++) perm[i]--; in MatGetOrdering_1WD() 23 PetscCall(ISCreateGeneral(PETSC_COMM_SELF, nrow, perm, PETSC_COPY_VALUES, row)); in MatGetOrdering_1WD() 24 PetscCall(ISCreateGeneral(PETSC_COMM_SELF, nrow, perm, PETSC_COPY_VALUES, col)); in MatGetOrdering_1WD() 25 PetscCall(PetscFree5(mask, xls, ls, xblk, perm)); in MatGetOrdering_1WD()
|
| H A D | spnd.c | 9 PetscInt i, *mask, *xls, *ls, nrow, *perm; in MatGetOrdering_ND() local 21 PetscCall(PetscMalloc4(nrow, &mask, nrow, &perm, nrow + 1, &xls, nrow, &ls)); in MatGetOrdering_ND() 22 PetscCall(SPARSEPACKgennd(&nrow, ia, ja, mask, perm, xls, ls)); in MatGetOrdering_ND() 31 for (i = 0; i < nrow; i++) perm[i]--; in MatGetOrdering_ND() 33 PetscCall(ISCreateGeneral(PETSC_COMM_SELF, nrow, perm, PETSC_COPY_VALUES, row)); in MatGetOrdering_ND() 34 PetscCall(ISCreateGeneral(PETSC_COMM_SELF, nrow, perm, PETSC_COPY_VALUES, col)); in MatGetOrdering_ND() 35 PetscCall(PetscFree4(mask, perm, xls, ls)); in MatGetOrdering_ND()
|
| H A D | spectral.c | 134 PetscInt n, i, evInd, *perm, tmp; in MatGetOrdering_Spectral() local 151 PetscCall(PetscMalloc1(n, &perm)); in MatGetOrdering_Spectral() 152 for (i = 0; i < n; ++i) perm[i] = i; in MatGetOrdering_Spectral() 153 PetscCall(PetscSortRealWithPermutation(n, realpart, perm)); in MatGetOrdering_Spectral() 154 evInd = perm[0]; in MatGetOrdering_Spectral() 156 evInd = perm[1]; in MatGetOrdering_Spectral() 158 evInd = perm[0]; in MatGetOrdering_Spectral() 163 evInd = perm[1]; in MatGetOrdering_Spectral() 164 for (i = 0; i < n; ++i) perm[i] = i; in MatGetOrdering_Spectral() 165 PetscCall(PetscSortRealWithPermutation(n, &eigvec[evInd * n], perm)); in MatGetOrdering_Spectral() [all …]
|
| H A D | spqmd.c | 9 PetscInt i, *deg, *marker, *rchset, *nbrhd, *qsize, *qlink, nofsub, *iperm, nrow, *perm; in MatGetOrdering_QMD() local 17 PetscCall(PetscMalloc1(nrow, &perm)); in MatGetOrdering_QMD() 21 …PetscCall(SPARSEPACKgenqmd(&nrow, ia, ja, perm, iperm, deg, marker, rchset, nbrhd, qsize, qlink, &… in MatGetOrdering_QMD() 26 for (i = 0; i < nrow; i++) perm[i]--; in MatGetOrdering_QMD() 27 PetscCall(ISCreateGeneral(PETSC_COMM_SELF, nrow, perm, PETSC_COPY_VALUES, row)); in MatGetOrdering_QMD() 28 PetscCall(ISCreateGeneral(PETSC_COMM_SELF, nrow, perm, PETSC_OWN_POINTER, col)); in MatGetOrdering_QMD()
|
| H A D | genrcm.c | 36 … PetscInt *neqns, const PetscInt *xadj, const PetscInt *adjncy, PetscInt *perm, PetscInt *mask, Pe… in SPARSEPACKgenrcm() argument 48 perm[0] = 1; in SPARSEPACKgenrcm() 57 --perm; in SPARSEPACKgenrcm() 74 PetscCall(SPARSEPACKfnroot(&root, &xadj[1], &adjncy[1], &mask[1], &nlvl, &xls[1], &perm[num])); in SPARSEPACKgenrcm() 75 PetscCall(SPARSEPACKrcm(&root, &xadj[1], &adjncy[1], &mask[1], &perm[num], &ccsize, &xls[1])); in SPARSEPACKgenrcm()
|
| H A D | gen1wd.c | 30 …scInt *adjncy, PetscInt *mask, PetscInt *nblks, PetscInt *xblk, PetscInt *perm, PetscInt *xls, Pet… in SPARSEPACKgen1wd() argument 44 --perm; in SPARSEPACKgen1wd() 59 …PetscCall(SPARSEPACKfn1wd(&root, &xadj[1], &adjncy[1], &mask[1], &nsep, &perm[num + 1], &nlvl, &xl… in SPARSEPACKgen1wd() 71 …PetscCall(SPARSEPACKrootls(&node, &xadj[1], &adjncy[1], &mask[1], &nlvl, &xls[1], &perm[num + 1])); in SPARSEPACKgen1wd() 78 node = perm[k]; in SPARSEPACKgen1wd() 90 PetscCall(SPARSEPACKrevrse(neqns, &perm[1])); in SPARSEPACKgen1wd()
|
| H A D | genqmd.c | 44 … PetscInt *neqns, const PetscInt *xadj, const PetscInt *adjncy, PetscInt *perm, PetscInt *invp, Pe… in SPARSEPACKgenqmd() argument 65 --perm; in SPARSEPACKgenqmd() 73 perm[node] = node; in SPARSEPACKgenqmd() 94 node = perm[j]; in SPARSEPACKgenqmd() 115 ip = perm[num]; in SPARSEPACKgenqmd() 116 perm[np] = ip; in SPARSEPACKgenqmd() 118 perm[num] = nxnode; in SPARSEPACKgenqmd()
|
| H A D | wbm.c | 37 PetscInt *perm, nrow, ncol, nnz, liw, *iw, ldw; in MatGetOrdering_WBM() local 72 PetscCall(PetscMalloc3(liw, &iw, ldw, &dw, nrow, &perm)); in MatGetOrdering_WBM() 79 …PetscCallExternal(mc64ad_dist, &job, &nrow, &nnz, ia, ja, a, &num, perm, &liw, iw, &ldw, dw, icntl… in MatGetOrdering_WBM() 81 for (i = 0; i < nrow; ++i) perm[i]--; in MatGetOrdering_WBM() 84 PetscCall(ISCreateGeneral(PETSC_COMM_SELF, nrow, perm, PETSC_COPY_VALUES, col)); in MatGetOrdering_WBM() 85 PetscCall(PetscFree3(iw, dw, perm)); in MatGetOrdering_WBM()
|
| /petsc/src/ksp/ksp/impls/gmres/ |
| H A D | gmreig.c | 46 PetscInt n = gmres->it + 1, N = gmres->max_k + 1, i, *perm; in KSPComputeEigenvalues_GMRES() local 69 PetscCall(PetscMalloc1(n, &perm)); in KSPComputeEigenvalues_GMRES() 70 for (i = 0; i < n; i++) perm[i] = i; in KSPComputeEigenvalues_GMRES() 71 PetscCall(PetscSortRealWithPermutation(n, realpart, perm)); in KSPComputeEigenvalues_GMRES() 73 r[i] = realpart[perm[i]]; in KSPComputeEigenvalues_GMRES() 74 c[i] = imagpart[perm[i]]; in KSPComputeEigenvalues_GMRES() 76 PetscCall(PetscFree(perm)); in KSPComputeEigenvalues_GMRES() 79 PetscInt n = gmres->it + 1, N = gmres->max_k + 1, i, *perm; in KSPComputeEigenvalues_GMRES() 101 PetscCall(PetscMalloc1(n, &perm)); in KSPComputeEigenvalues_GMRES() 102 for (i = 0; i < n; i++) perm[i] = i; in KSPComputeEigenvalues_GMRES() [all …]
|
| /petsc/src/dm/impls/plex/ |
| H A D | plexreorder.c | 7 PetscInt *perm, *iperm; in DMPlexCreateOrderingClosure_Static() local 13 PetscCall(PetscMalloc1(pEnd - pStart, &perm)); in DMPlexCreateOrderingClosure_Static() 25 perm[p] = pperm[p]; in DMPlexCreateOrderingClosure_Static() 28 point = perm[p]; in DMPlexCreateOrderingClosure_Static() 36 perm[fMax] = oldc; in DMPlexCreateOrderingClosure_Static() 43 *clperm = perm; in DMPlexCreateOrderingClosure_Static() 69 PetscErrorCode DMPlexGetOrdering(DM dm, MatOrderingType otype, DMLabel label, IS *perm) in DMPlexGetOrdering() argument 76 PetscAssertPointer(perm, 4); in DMPlexGetOrdering() 132 …reateGeneral(PetscObjectComm((PetscObject)dm), pEnd - pStart, invclperm, PETSC_OWN_POINTER, perm)); in DMPlexGetOrdering() 151 PetscErrorCode DMPlexGetOrdering1D(DM dm, IS *perm) in DMPlexGetOrdering1D() argument [all …]
|
| /petsc/src/mat/tests/ |
| H A D | ex182.c | 10 IS perm; in main() local 31 PetscCall(ISCreateStride(PETSC_COMM_SELF, m, 0, 1, &perm)); in main() 32 PetscCall(MatLUFactorSymbolic(F, A, perm, perm, &info)); in main() 35 PetscCall(ISDestroy(&perm)); in main()
|
| H A D | ex28.c | 13 IS perm, iperm; in main() local 74 PetscCall(MatGetOrdering(A[0], MATORDERINGNATURAL, &perm, &iperm)); in main() 77 PetscCall(MatLUFactorSymbolic(F, A[0], perm, iperm, &info)); in main() 80 PetscCall(MatILUFactorSymbolic(F, A[0], perm, iperm, &info)); in main() 83 PetscCall(MatICCFactorSymbolic(F, A[0], perm, &info)); in main() 86 PetscCall(MatCholeskyFactorSymbolic(F, A[0], perm, &info)); in main() 120 PetscCall(ISDestroy(&perm)); in main()
|
| H A D | ex13.c | 10 IS perm, iperm; in main() local 45 PetscCall(MatGetOrdering(A, MATORDERINGND, &perm, &iperm)); in main() 46 PetscCall(ISView(perm, PETSC_VIEWER_STDOUT_SELF)); in main() 50 PetscCall(ISDestroy(&perm)); in main()
|
| H A D | ex6.c | 10 IS perm, iperm; in main() local 47 PetscCall(MatGetOrdering(C, MATORDERINGND, &perm, &iperm)); in main() 48 PetscCall(ISView(perm, PETSC_VIEWER_STDOUT_SELF)); in main() 52 PetscCall(ISDestroy(&perm)); in main()
|
| H A D | ex168.c | 13 IS perm, iperm; in main() local 44 PetscCall(MatGetOrdering(A, MATORDERINGNATURAL, &perm, &iperm)); in main() 50 PetscCall(MatCholeskyFactorSymbolic(F, A, perm, &info)); in main() 73 PetscCall(ISDestroy(&perm)); in main()
|
| /petsc/src/mat/impls/sbaij/seq/ |
| H A D | sro.c | 31 PetscErrorCode MatReorderingSeqSBAIJ(Mat A, IS perm) in MatReorderingSeqSBAIJ() argument 44 PetscCall(ISGetIndices(perm,&rip)); in MatReorderingSeqSBAIJ() 46 PetscCall(ISInvertPermutation(perm,PETSC_DECIDE,&iperm)); in MatReorderingSeqSBAIJ() 127 PetscCall(ISRestoreIndices(perm,&rip)); in MatReorderingSeqSBAIJ() 134 PetscCall(PetscObjectReference((PetscObject)perm)); in MatReorderingSeqSBAIJ() 136 a->row = perm; in MatReorderingSeqSBAIJ() 137 PetscCall(PetscObjectReference((PetscObject)perm)); in MatReorderingSeqSBAIJ() 139 a->icol = perm; in MatReorderingSeqSBAIJ()
|
| /petsc/src/ksp/ksp/impls/gmres/agmres/ |
| H A D | agmresdeflation.c | 17 …ErrorCode KSPAGMRESQuickSort(PetscScalar *val_r, PetscScalar *val_i, PetscInt size, PetscInt *perm) in KSPAGMRESQuickSort() argument 28 for (j = 0; j < size; j++) perm[j] = j; in KSPAGMRESQuickSort() 40 ipivot = perm[L]; in KSPAGMRESQuickSort() 51 perm[L] = perm[R]; in KSPAGMRESQuickSort() 62 perm[R] = perm[L]; in KSPAGMRESQuickSort() 68 perm[L] = ipivot; in KSPAGMRESQuickSort() 105 PetscInt *perm = agmres->perm; in KSPAGMRESSchurForm() local 143 PetscCall(KSPAGMRESQuickSort(wr, wi, KspSize, perm)); in KSPAGMRESSchurForm() 154 for (j = 0; j < r; j++) select[perm[j]] = 1; in KSPAGMRESSchurForm() 156 for (j = 0; j < r; j++) select[perm[KspSize - j - 1]] = 1; in KSPAGMRESSchurForm()
|
| /petsc/src/mat/graphops/order/amd/ |
| H A D | amd.c | 21 PetscInt nrow, *perm; in MatGetOrdering_AMD() local 51 PetscCall(PetscMalloc1(nrow, &perm)); in MatGetOrdering_AMD() 52 status = amd_AMD_order(nrow, ia, ja, perm, Control, Info); in MatGetOrdering_AMD() 71 PetscCall(ISCreateGeneral(PETSC_COMM_SELF, nrow, perm, PETSC_COPY_VALUES, row)); in MatGetOrdering_AMD() 72 PetscCall(ISCreateGeneral(PETSC_COMM_SELF, nrow, perm, PETSC_OWN_POINTER, col)); in MatGetOrdering_AMD()
|
| /petsc/src/mat/graphops/order/metisnd/ |
| H A D | metisnd.c | 10 PetscInt i, j, iptr, ival, nrow, *xadj, *adjncy, *perm, *iperm; in MatGetOrdering_METISND() local 45 PetscCall(PetscMalloc4(nrow + 1, &xadj, ia[nrow], &adjncy, nrow, &perm, nrow, &iperm)); in MatGetOrdering_METISND() 57 …status = METIS_NodeND(&nrow, (idx_t *)xadj, (idx_t *)adjncy, NULL, options, (idx_t *)perm, (idx_t … in MatGetOrdering_METISND() 78 PetscCall(ISCreateGeneral(PETSC_COMM_SELF, nrow, perm, PETSC_COPY_VALUES, row)); in MatGetOrdering_METISND() 79 PetscCall(ISCreateGeneral(PETSC_COMM_SELF, nrow, perm, PETSC_COPY_VALUES, col)); in MatGetOrdering_METISND() 80 PetscCall(PetscFree4(xadj, adjncy, perm, iperm)); in MatGetOrdering_METISND()
|
| /petsc/src/ksp/ksp/interface/ |
| H A D | eige.c | 159 PetscInt *perm; in KSPComputeEigenvaluesExplicitly() local 177 PetscCall(PetscMalloc1(n, &perm)); in KSPComputeEigenvaluesExplicitly() 179 for (i = 0; i < n; i++) perm[i] = i; in KSPComputeEigenvaluesExplicitly() 180 PetscCall(PetscSortRealWithPermutation(n, realpart, perm)); in KSPComputeEigenvaluesExplicitly() 182 r[i] = realpart[perm[i]]; in KSPComputeEigenvaluesExplicitly() 183 c[i] = imagpart[perm[i]]; in KSPComputeEigenvaluesExplicitly() 185 PetscCall(PetscFree(perm)); in KSPComputeEigenvaluesExplicitly() 193 PetscInt *perm; in KSPComputeEigenvaluesExplicitly() local 212 PetscCall(PetscMalloc1(n, &perm)); in KSPComputeEigenvaluesExplicitly() 213 for (i = 0; i < n; i++) perm[i] = i; in KSPComputeEigenvaluesExplicitly() [all …]
|
| /petsc/src/dm/impls/plex/tests/ |
| H A D | ex10.c | 60 IS perm; in TestReordering() local 66 PetscCall(DMPlexGetOrdering(dm, order, NULL, &perm)); in TestReordering() 67 PetscCall(DMPlexPermute(dm, perm, &pdm)); in TestReordering() 70 PetscCall(ISDestroy(&perm)); in TestReordering() 114 IS perm; in TestReorderingByGroup() local 118 PetscCall(DMPlexGetOrdering(dm, order, label, &perm)); in TestReorderingByGroup() 120 PetscCall(DMPlexPermute(dm, perm, &pdm)); in TestReorderingByGroup() 125 PetscCall(ISDestroy(&perm)); in TestReorderingByGroup()
|
| /petsc/src/mat/impls/aij/seq/bas/ |
| H A D | basfactor.c | 5 static PetscErrorCode MatICCFactorSymbolic_SeqAIJ_Bas(Mat fact, Mat A, IS perm, const MatFactorInfo… in MatICCFactorSymbolic_SeqAIJ_Bas() argument 22 PetscCall(ISIdentity(perm, &perm_identity)); in MatICCFactorSymbolic_SeqAIJ_Bas() 23 PetscCall(ISInvertPermutation(perm, PETSC_DECIDE, &iperm)); in MatICCFactorSymbolic_SeqAIJ_Bas() 40 PetscCall(ISGetIndices(perm, &rip)); in MatICCFactorSymbolic_SeqAIJ_Bas() 70 b->row = perm; in MatICCFactorSymbolic_SeqAIJ_Bas() 71 b->col = perm; in MatICCFactorSymbolic_SeqAIJ_Bas() 73 PetscCall(PetscObjectReference((PetscObject)perm)); in MatICCFactorSymbolic_SeqAIJ_Bas() 74 PetscCall(PetscObjectReference((PetscObject)perm)); in MatICCFactorSymbolic_SeqAIJ_Bas()
|