Lines Matching refs:tens
30 PetscSpace_Tensor *tens = (PetscSpace_Tensor *)sp->data; in PetscSpaceSetFromOptions_Tensor() local
61 if (Ns != tens->numTensSpaces) PetscCall(PetscSpaceTensorSetNumSubspaces(sp, Ns)); in PetscSpaceSetFromOptions_Tensor()
98 PetscSpace_Tensor *tens = (PetscSpace_Tensor *)sp->data; in PetscSpaceTensorView_Ascii() local
100 PetscInt Ns = tens->numTensSpaces, i, n; in PetscSpaceTensorView_Ascii()
104 if (tens->tensspaces[i] != tens->tensspaces[0]) { in PetscSpaceTensorView_Ascii()
114 PetscCall(PetscSpaceView(tens->tensspaces[i], v)); in PetscSpaceTensorView_Ascii()
132 PetscSpace_Tensor *tens = (PetscSpace_Tensor *)sp->data; in PetscSpaceSetUp_Tensor() local
139 if (tens->setupcalled) PetscFunctionReturn(PETSC_SUCCESS); in PetscSpaceSetUp_Tensor()
249 tens->uniform = uniform; in PetscSpaceSetUp_Tensor()
250 tens->setupcalled = PETSC_TRUE; in PetscSpaceSetUp_Tensor()
256 PetscSpace_Tensor *tens = (PetscSpace_Tensor *)sp->data; in PetscSpaceDestroy_Tensor() local
260 Ns = tens->numTensSpaces; in PetscSpaceDestroy_Tensor()
261 if (tens->heightsubspaces) { in PetscSpaceDestroy_Tensor()
266 for (d = 0; d < sp->Nv; ++d) PetscCall(PetscSpaceDestroy(&tens->heightsubspaces[d])); in PetscSpaceDestroy_Tensor()
268 PetscCall(PetscFree(tens->heightsubspaces)); in PetscSpaceDestroy_Tensor()
269 for (i = 0; i < Ns; i++) PetscCall(PetscSpaceDestroy(&tens->tensspaces[i])); in PetscSpaceDestroy_Tensor()
274 PetscCall(PetscFree(tens->tensspaces)); in PetscSpaceDestroy_Tensor()
275 PetscCall(PetscFree(tens)); in PetscSpaceDestroy_Tensor()
281 PetscSpace_Tensor *tens = (PetscSpace_Tensor *)sp->data; in PetscSpaceGetDimension_Tensor() local
286 Ns = tens->numTensSpaces; in PetscSpaceGetDimension_Tensor()
291 PetscCall(PetscSpaceGetDimension(tens->tensspaces[i], &id)); in PetscSpaceGetDimension_Tensor()
300 PetscSpace_Tensor *tens = (PetscSpace_Tensor *)sp->data; in PetscSpaceEvaluate_Tensor() local
309 if (!tens->setupcalled) { in PetscSpaceEvaluate_Tensor()
314 Ns = tens->numTensSpaces; in PetscSpaceEvaluate_Tensor()
333 PetscCall(PetscSpaceGetNumVariables(tens->tensspaces[s], &sNv)); in PetscSpaceEvaluate_Tensor()
334 PetscCall(PetscSpaceGetNumComponents(tens->tensspaces[s], &sNc)); in PetscSpaceEvaluate_Tensor()
335 PetscCall(PetscSpaceGetDimension(tens->tensspaces[s], &spdim)); in PetscSpaceEvaluate_Tensor()
343 PetscCall(PetscSpaceEvaluate(tens->tensspaces[s], npoints, lpoints, sB, sD, sH)); in PetscSpaceEvaluate_Tensor()
529 PetscSpace_Tensor *tens = (PetscSpace_Tensor *)space->data; in PetscSpaceTensorSetNumSubspaces_Tensor() local
533 …PetscCheck(!tens->setupcalled, PetscObjectComm((PetscObject)space), PETSC_ERR_ARG_WRONGSTATE, "Can… in PetscSpaceTensorSetNumSubspaces_Tensor()
534 Ns = tens->numTensSpaces; in PetscSpaceTensorSetNumSubspaces_Tensor()
539 for (s = 0; s < Ns; s++) PetscCall(PetscSpaceDestroy(&tens->tensspaces[s])); in PetscSpaceTensorSetNumSubspaces_Tensor()
540 PetscCall(PetscFree(tens->tensspaces)); in PetscSpaceTensorSetNumSubspaces_Tensor()
542 Ns = tens->numTensSpaces = numTensSpaces; in PetscSpaceTensorSetNumSubspaces_Tensor()
543 PetscCall(PetscCalloc1(Ns, &tens->tensspaces)); in PetscSpaceTensorSetNumSubspaces_Tensor()
549 PetscSpace_Tensor *tens = (PetscSpace_Tensor *)space->data; in PetscSpaceTensorGetNumSubspaces_Tensor() local
552 *numTensSpaces = tens->numTensSpaces; in PetscSpaceTensorGetNumSubspaces_Tensor()
558 PetscSpace_Tensor *tens = (PetscSpace_Tensor *)space->data; in PetscSpaceTensorSetSubspace_Tensor() local
562 …PetscCheck(!tens->setupcalled, PetscObjectComm((PetscObject)space), PETSC_ERR_ARG_WRONGSTATE, "Can… in PetscSpaceTensorSetSubspace_Tensor()
563 Ns = tens->numTensSpaces; in PetscSpaceTensorSetSubspace_Tensor()
567 PetscCall(PetscSpaceDestroy(&tens->tensspaces[s])); in PetscSpaceTensorSetSubspace_Tensor()
568 tens->tensspaces[s] = subspace; in PetscSpaceTensorSetSubspace_Tensor()
574 PetscSpace_Tensor *tens = (PetscSpace_Tensor *)sp->data; in PetscSpaceGetHeightSubspace_Tensor() local
580 …PetscCheck(tens->uniform && tens->numTensSpaces == dim, PETSC_COMM_SELF, PETSC_ERR_ARG_INCOMP, "Ca… in PetscSpaceGetHeightSubspace_Tensor()
584 if (!tens->heightsubspaces) PetscCall(PetscCalloc1(dim, &tens->heightsubspaces)); in PetscSpaceGetHeightSubspace_Tensor()
586 if (!tens->heightsubspaces[height - 1]) { in PetscSpaceGetHeightSubspace_Tensor()
601 tens->heightsubspaces[height - 1] = sub; in PetscSpaceGetHeightSubspace_Tensor()
603 *subsp = tens->heightsubspaces[height - 1]; in PetscSpaceGetHeightSubspace_Tensor()
612 PetscSpace_Tensor *tens = (PetscSpace_Tensor *)space->data; in PetscSpaceTensorGetSubspace_Tensor() local
616 Ns = tens->numTensSpaces; in PetscSpaceTensorGetSubspace_Tensor()
619 *subspace = tens->tensspaces[s]; in PetscSpaceTensorGetSubspace_Tensor()
652 PetscSpace_Tensor *tens; in PetscSpaceCreate_Tensor() local
656 PetscCall(PetscNew(&tens)); in PetscSpaceCreate_Tensor()
657 sp->data = tens; in PetscSpaceCreate_Tensor()
659 tens->numTensSpaces = PETSC_DEFAULT; in PetscSpaceCreate_Tensor()