Lines Matching refs:subset

104     PetscInt *subset, *perm;  in PetscDTAltVApply()  local
110 PetscCall(PetscMalloc2(k, &subset, k, &perm)); in PetscDTAltVApply()
114 PetscCall(PetscDTEnumSubset(N, k, i, subset)); in PetscDTAltVApply()
121 for (l = 0; l < k; l++) prod *= v[perm[l] * N + subset[l]]; in PetscDTAltVApply()
126 PetscCall(PetscFree2(subset, perm)); in PetscDTAltVApply()
182 PetscInt *subset, *subsetjk, *subsetj, *subsetk; in PetscDTAltVWedge() local
187 PetscCall(PetscMalloc4(j + k, &subset, j + k, &subsetjk, j, &subsetj, k, &subsetk)); in PetscDTAltVWedge()
192 PetscCall(PetscDTEnumSubset(N, j + k, i, subset)); in PetscDTAltVWedge()
198 for (m = 0; m < j; m++) subsetj[m] = subset[subsetjk[m]]; in PetscDTAltVWedge()
199 for (m = 0; m < k; m++) subsetk[m] = subset[subsetjk[j + m]]; in PetscDTAltVWedge()
206 PetscCall(PetscFree4(subset, subsetjk, subsetj, subsetk)); in PetscDTAltVWedge()
270 PetscInt *subset, *subsetjk, *subsetj, *subsetk; in PetscDTAltVWedgeMatrix() local
275 PetscCall(PetscMalloc4(j + k, &subset, j + k, &subsetjk, j, &subsetj, k, &subsetk)); in PetscDTAltVWedgeMatrix()
280 PetscCall(PetscDTEnumSubset(N, j + k, i, subset)); in PetscDTAltVWedgeMatrix()
286 for (m = 0; m < j; m++) subsetj[m] = subset[subsetjk[m]]; in PetscDTAltVWedgeMatrix()
287 for (m = 0; m < k; m++) subsetk[m] = subset[subsetjk[j + m]]; in PetscDTAltVWedgeMatrix()
293 PetscCall(PetscFree4(subset, subsetjk, subsetj, subsetk)); in PetscDTAltVWedgeMatrix()
585 PetscInt *subset, *work; in PetscDTAltVInterior() local
587 PetscCall(PetscMalloc2(k, &subset, k, &work)); in PetscDTAltVInterior()
592 PetscCall(PetscDTEnumSubset(N, k, i, subset)); in PetscDTAltVInterior()
598 if (l != j) work[m++] = subset[l]; in PetscDTAltVInterior()
601 wIntv[idx] += flip ? -(w[i] * v[subset[j]]) : (w[i] * v[subset[j]]); in PetscDTAltVInterior()
604 PetscCall(PetscFree2(subset, work)); in PetscDTAltVInterior()
651 PetscInt *subset, *work; in PetscDTAltVInteriorMatrix() local
653 PetscCall(PetscMalloc2(k, &subset, k, &work)); in PetscDTAltVInteriorMatrix()
658 PetscCall(PetscDTEnumSubset(N, k, i, subset)); in PetscDTAltVInteriorMatrix()
664 if (l != j) work[m++] = subset[l]; in PetscDTAltVInteriorMatrix()
667 intvMat[idx * Nk + i] += flip ? -v[subset[j]] : v[subset[j]]; in PetscDTAltVInteriorMatrix()
670 PetscCall(PetscFree2(subset, work)); in PetscDTAltVInteriorMatrix()
738 PetscInt *subset, *work; in PetscDTAltVInteriorPattern() local
740 PetscCall(PetscMalloc2(k, &subset, k, &work)); in PetscDTAltVInteriorPattern()
744 PetscCall(PetscDTEnumSubset(N, k, i, subset)); in PetscDTAltVInteriorPattern()
750 if (l != j) work[m++] = subset[l]; in PetscDTAltVInteriorPattern()
755 indices[i * k + j][2] = flip ? -(subset[j] + 1) : subset[j]; in PetscDTAltVInteriorPattern()
758 PetscCall(PetscFree2(subset, work)); in PetscDTAltVInteriorPattern()
808 PetscInt *subset; in PetscDTAltVStar() local
810 PetscCall(PetscMalloc1(N, &subset)); in PetscDTAltVStar()
817 PetscCall(PetscDTEnumSplit(N, l, i, subset, &sOdd)); in PetscDTAltVStar()
818 PetscCall(PetscDTSubsetIndex(N, l, subset, &idx)); in PetscDTAltVStar()
819 PetscCall(PetscDTSubsetIndex(N, N - l, &subset[l], &j)); in PetscDTAltVStar()
829 PetscCall(PetscFree(subset)); in PetscDTAltVStar()