Lines Matching refs:sum

152   PetscSpace_Sum *sum = (PetscSpace_Sum *)space->data;  in PetscSpaceSumGetNumSubspaces_Sum()  local
155 *numSumSpaces = sum->numSumSpaces; in PetscSpaceSumGetNumSubspaces_Sum()
161 PetscSpace_Sum *sum = (PetscSpace_Sum *)space->data; in PetscSpaceSumSetNumSubspaces_Sum() local
162 PetscInt Ns = sum->numSumSpaces; in PetscSpaceSumSetNumSubspaces_Sum()
165 …PetscCheck(!sum->setupcalled, PetscObjectComm((PetscObject)space), PETSC_ERR_ARG_WRONGSTATE, "Cann… in PetscSpaceSumSetNumSubspaces_Sum()
169 for (s = 0; s < Ns; ++s) PetscCall(PetscSpaceDestroy(&sum->sumspaces[s])); in PetscSpaceSumSetNumSubspaces_Sum()
170 PetscCall(PetscFree(sum->sumspaces)); in PetscSpaceSumSetNumSubspaces_Sum()
173 Ns = sum->numSumSpaces = numSumSpaces; in PetscSpaceSumSetNumSubspaces_Sum()
174 PetscCall(PetscCalloc1(Ns, &sum->sumspaces)); in PetscSpaceSumSetNumSubspaces_Sum()
180 PetscSpace_Sum *sum = (PetscSpace_Sum *)sp->data; in PetscSpaceSumGetConcatenate_Sum() local
183 *concatenate = sum->concatenate; in PetscSpaceSumGetConcatenate_Sum()
189 PetscSpace_Sum *sum = (PetscSpace_Sum *)sp->data; in PetscSpaceSumSetConcatenate_Sum() local
192 …PetscCheck(!sum->setupcalled, PetscObjectComm((PetscObject)sp), PETSC_ERR_ARG_WRONGSTATE, "Cannot … in PetscSpaceSumSetConcatenate_Sum()
194 sum->concatenate = concatenate; in PetscSpaceSumSetConcatenate_Sum()
200 PetscSpace_Sum *sum = (PetscSpace_Sum *)space->data; in PetscSpaceSumGetSubspace_Sum() local
201 PetscInt Ns = sum->numSumSpaces; in PetscSpaceSumGetSubspace_Sum()
207 *subspace = sum->sumspaces[s]; in PetscSpaceSumGetSubspace_Sum()
213 PetscSpace_Sum *sum = (PetscSpace_Sum *)space->data; in PetscSpaceSumSetSubspace_Sum() local
214 PetscInt Ns = sum->numSumSpaces; in PetscSpaceSumSetSubspace_Sum()
217 …PetscCheck(!sum->setupcalled, PetscObjectComm((PetscObject)space), PETSC_ERR_ARG_WRONGSTATE, "Cann… in PetscSpaceSumSetSubspace_Sum()
222 PetscCall(PetscSpaceDestroy(&sum->sumspaces[s])); in PetscSpaceSumSetSubspace_Sum()
223 sum->sumspaces[s] = subspace; in PetscSpaceSumSetSubspace_Sum()
229 PetscSpace_Sum *sum = (PetscSpace_Sum *)sp->data; in PetscSpaceSetFromOptions_Sum() local
248 if (Ns != sum->numSumSpaces) PetscCall(PetscSpaceSumSetNumSubspaces(sp, Ns)); in PetscSpaceSetFromOptions_Sum()
274 PetscSpace_Sum *sum = (PetscSpace_Sum *)sp->data; in PetscSpaceSetUp_Sum() local
281 if (sum->setupcalled) PetscFunctionReturn(PETSC_SUCCESS); in PetscSpaceSetUp_Sum()
333 sum->concatenate = concatenate; in PetscSpaceSetUp_Sum()
334 sum->uniform = uniform; in PetscSpaceSetUp_Sum()
335 sum->setupcalled = PETSC_TRUE; in PetscSpaceSetUp_Sum()
341 PetscSpace_Sum *sum = (PetscSpace_Sum *)sp->data; in PetscSpaceSumView_Ascii() local
342 PetscBool concatenate = sum->concatenate; in PetscSpaceSumView_Ascii()
343 PetscInt i, Ns = sum->numSumSpaces; in PetscSpaceSumView_Ascii()
346 …Printf(v, "Sum space of %" PetscInt_FMT " concatenated subspaces%s\n", Ns, sum->uniform ? " (all i… in PetscSpaceSumView_Ascii()
347 …else PetscCall(PetscViewerASCIIPrintf(v, "Sum space of %" PetscInt_FMT " subspaces%s\n", Ns, sum->… in PetscSpaceSumView_Ascii()
348 for (i = 0; i < (sum->uniform ? (Ns > 0 ? 1 : 0) : Ns); ++i) { in PetscSpaceSumView_Ascii()
350 PetscCall(PetscSpaceView(sum->sumspaces[i], v)); in PetscSpaceSumView_Ascii()
368 PetscSpace_Sum *sum = (PetscSpace_Sum *)sp->data; in PetscSpaceDestroy_Sum() local
369 PetscInt i, Ns = sum->numSumSpaces; in PetscSpaceDestroy_Sum()
372 for (i = 0; i < Ns; ++i) PetscCall(PetscSpaceDestroy(&sum->sumspaces[i])); in PetscSpaceDestroy_Sum()
373 PetscCall(PetscFree(sum->sumspaces)); in PetscSpaceDestroy_Sum()
374 if (sum->heightsubspaces) { in PetscSpaceDestroy_Sum()
379 for (d = 0; d < sp->Nv; ++d) PetscCall(PetscSpaceDestroy(&sum->heightsubspaces[d])); in PetscSpaceDestroy_Sum()
381 PetscCall(PetscFree(sum->heightsubspaces)); in PetscSpaceDestroy_Sum()
390 PetscCall(PetscFree(sum)); in PetscSpaceDestroy_Sum()
396 PetscSpace_Sum *sum = (PetscSpace_Sum *)sp->data; in PetscSpaceGetDimension_Sum() local
397 PetscInt i, d = 0, Ns = sum->numSumSpaces; in PetscSpaceGetDimension_Sum()
400 if (!sum->setupcalled) { in PetscSpaceGetDimension_Sum()
409 PetscCall(PetscSpaceGetDimension(sum->sumspaces[i], &id)); in PetscSpaceGetDimension_Sum()
419 PetscSpace_Sum *sum = (PetscSpace_Sum *)sp->data; in PetscSpaceEvaluate_Sum() local
420 PetscBool concatenate = sum->concatenate; in PetscSpaceEvaluate_Sum()
422 PetscInt Nc = sp->Nc, Nv = sp->Nv, Ns = sum->numSumSpaces; in PetscSpaceEvaluate_Sum()
427 if (!sum->setupcalled) { in PetscSpaceEvaluate_Sum()
449 PetscCall(PetscSpaceGetNumVariables(sum->sumspaces[s], &sNv)); in PetscSpaceEvaluate_Sum()
450 PetscCall(PetscSpaceGetNumComponents(sum->sumspaces[s], &sNc)); in PetscSpaceEvaluate_Sum()
451 PetscCall(PetscSpaceGetDimension(sum->sumspaces[s], &spdim)); in PetscSpaceEvaluate_Sum()
453 …if (s == 0 || !sum->uniform) PetscCall(PetscSpaceEvaluate(sum->sumspaces[s], npoints, points, sB, … in PetscSpaceEvaluate_Sum()
460 PetscInt b = sum->interleave_basis ? (j * Ns + s) : (j + offset); in PetscSpaceEvaluate_Sum()
465 … compoffset = concatenate ? (sum->interleave_components ? (c * Ns + s) : (c + ncoffset)) : c; in PetscSpaceEvaluate_Sum()
507 PetscSpace_Sum *sum = (PetscSpace_Sum *)sp->data; in PetscSpaceGetHeightSubspace_Sum() local
517 if (!sum->heightsubspaces) PetscCall(PetscCalloc1(dim, &sum->heightsubspaces)); in PetscSpaceGetHeightSubspace_Sum()
519 if (!sum->heightsubspaces[height - 1]) { in PetscSpaceGetHeightSubspace_Sum()
527 PetscCall(PetscSpaceSumSetNumSubspaces(sub, sum->numSumSpaces)); in PetscSpaceGetHeightSubspace_Sum()
528 PetscCall(PetscSpaceSumSetConcatenate(sub, sum->concatenate)); in PetscSpaceGetHeightSubspace_Sum()
531 for (PetscInt i = 0; i < sum->numSumSpaces; i++) { in PetscSpaceGetHeightSubspace_Sum()
534 PetscCall(PetscSpaceGetHeightSubspace(sum->sumspaces[i], height, &subh)); in PetscSpaceGetHeightSubspace_Sum()
538 sum->heightsubspaces[height - 1] = sub; in PetscSpaceGetHeightSubspace_Sum()
540 *subsp = sum->heightsubspaces[height - 1]; in PetscSpaceGetHeightSubspace_Sum()
572 PetscSpace_Sum *sum = (PetscSpace_Sum *)sp->data; in PetscSpaceSumSetInterleave_Sum() local
575 sum->interleave_basis = interleave_basis; in PetscSpaceSumSetInterleave_Sum()
576 sum->interleave_components = interleave_components; in PetscSpaceSumSetInterleave_Sum()
609 PetscSpace_Sum *sum = (PetscSpace_Sum *)sp->data; in PetscSpaceSumGetInterleave_Sum() local
612 if (interleave_basis) *interleave_basis = sum->interleave_basis; in PetscSpaceSumGetInterleave_Sum()
613 if (interleave_components) *interleave_components = sum->interleave_components; in PetscSpaceSumGetInterleave_Sum()
654 PetscSpace_Sum *sum; in PetscSpaceCreate_Sum() local
658 PetscCall(PetscNew(&sum)); in PetscSpaceCreate_Sum()
659 sum->numSumSpaces = PETSC_DEFAULT; in PetscSpaceCreate_Sum()
660 sp->data = sum; in PetscSpaceCreate_Sum()