Lines Matching refs:field

18 static PetscErrorCode DMFieldDestroy_DS(DMField field)  in DMFieldDestroy_DS()  argument
20 DMField_DS *dsfield = (DMField_DS *)field->data; in DMFieldDestroy_DS()
35 static PetscErrorCode DMFieldView_DS(DMField field, PetscViewer viewer) in DMFieldView_DS() argument
37 DMField_DS *dsfield = (DMField_DS *)field->data; in DMFieldView_DS()
51 …PetscCheck(!dsfield->multifieldVec, PetscObjectComm((PetscObject)field), PETSC_ERR_SUP, "View of s… in DMFieldView_DS()
57 static PetscErrorCode DMFieldDSGetHeightDisc(DMField field, PetscInt height, PetscObject discList[]… in DMFieldDSGetHeightDisc() argument
86 static PetscErrorCode DMFieldGetClosure_Internal(DMField field, PetscInt cell, PetscBool *isDG, Pet… in DMFieldGetClosure_Internal() argument
88 DMField_DS *dsfield = (DMField_DS *)field->data; in DMFieldGetClosure_Internal()
120 PetscCall(DMFieldGetDM(field, &fdm)); in DMFieldGetClosure_Internal()
127 static PetscErrorCode DMFieldRestoreClosure_Internal(DMField field, PetscInt cell, PetscBool *isDG,… in DMFieldRestoreClosure_Internal() argument
129 DMField_DS *dsfield = (DMField_DS *)field->data; in DMFieldRestoreClosure_Internal()
137 PetscCall(DMFieldGetDM(field, &fdm)); in DMFieldRestoreClosure_Internal()
145 static PetscErrorCode DMFieldEvaluateFE_DS(DMField field, IS pointIS, PetscQuadrature quad, PetscDa… in DMFieldEvaluateFE_DS() argument
147 DMField_DS *dsfield = (DMField_DS *)field->data; in DMFieldEvaluateFE_DS()
161 dm = field->dm; in DMFieldEvaluateFE_DS()
162 nc = field->numComponents; in DMFieldEvaluateFE_DS()
164 PetscCall(DMFieldDSGetHeightDisc(field, dsfield->height - 1 - dim, dsfield->disc, &disc)); in DMFieldEvaluateFE_DS()
174 …PetscCheck(classid == PETSCFE_CLASSID, PetscObjectComm((PetscObject)field), PETSC_ERR_SUP, "Not im… in DMFieldEvaluateFE_DS()
185 PetscCall(DMFieldGetClosure_Internal(field, c, &isDG, &closureSize, &array, &elem)); in DMFieldEvaluateFE_DS()
220 PetscCall(DMFieldRestoreClosure_Internal(field, c, &isDG, &closureSize, &array, &elem)); in DMFieldEvaluateFE_DS()
227 static PetscErrorCode DMFieldEvaluate_DS(DMField field, Vec points, PetscDataType datatype, void *B… in DMFieldEvaluate_DS() argument
229 DMField_DS *dsfield = (DMField_DS *)field->data; in DMFieldEvaluate_DS()
250 nc = field->numComponents; in DMFieldEvaluate_DS()
251 PetscCall(DMGetLocalSection(field->dm, &section)); in DMFieldEvaluate_DS()
252 PetscCall(DMFieldDSGetHeightDisc(field, 0, dsfield->disc, &cellDisc)); in DMFieldEvaluate_DS()
257 PetscCall(DMGetCoordinateDim(field->dm, &dim)); in DMFieldEvaluate_DS()
258 PetscCall(DMGetDimension(field->dm, &dimR)); in DMFieldEvaluate_DS()
259 PetscCall(DMLocatePoints(field->dm, points, DM_POINTLOCATION_NONE, &cellSF)); in DMFieldEvaluate_DS()
294 PetscCall(DMPlexCoordinatesToReference(field->dm, c, nq, coordsReal, coordsRef)); in DMFieldEvaluate_DS()
300 PetscCall(DMPlexComputeCellGeometryFEM(field->dm, c, quad, v, J, invJ, detJ)); in DMFieldEvaluate_DS()
302 PetscCall(DMFieldGetClosure_Internal(field, c, &isDG, &closureSize, &array, &elem)); in DMFieldEvaluate_DS()
396 PetscCall(DMFieldRestoreClosure_Internal(field, c, &isDG, &closureSize, &array, &elem)); in DMFieldEvaluate_DS()
449 static PetscErrorCode DMFieldEvaluateFV_DS(DMField field, IS pointIS, PetscDataType type, void *B, … in DMFieldEvaluateFV_DS() argument
451 DMField_DS *dsfield = (DMField_DS *)field->data; in DMFieldEvaluateFV_DS()
467 Nc = field->numComponents; in DMFieldEvaluateFV_DS()
468 PetscCall(DMGetCoordinateDim(field->dm, &dimC)); in DMFieldEvaluateFV_DS()
469 PetscCall(DMGetDimension(field->dm, &dim)); in DMFieldEvaluateFV_DS()
475 PetscCall(DMPlexGetHeightStratum(field->dm, h, NULL, &hEnd)); in DMFieldEvaluateFV_DS()
479 PetscCall(DMFieldDSGetHeightDisc(field, h, dsfield->disc, &disc)); in DMFieldEvaluateFV_DS()
482 PetscCall(DMGetCoordinateField(field->dm, &coordField)); in DMFieldEvaluateFV_DS()
485 if (!quad) PetscCall(DMFieldCreateDefaultQuadrature(field, pointIS, &quad)); in DMFieldEvaluateFV_DS()
491 if (B) PetscCall(DMGetWorkArray(field->dm, N, mpitype, &qB)); in DMFieldEvaluateFV_DS()
492 if (D) PetscCall(DMGetWorkArray(field->dm, N * dimC, mpitype, &qD)); in DMFieldEvaluateFV_DS()
493 if (H) PetscCall(DMGetWorkArray(field->dm, N * dimC * dimC, mpitype, &qH)); in DMFieldEvaluateFV_DS()
494 PetscCall(DMFieldEvaluateFE(field, pointIS, quad, type, qB, qD, qH)); in DMFieldEvaluateFV_DS()
648 if (B) PetscCall(DMRestoreWorkArray(field->dm, N, mpitype, &qB)); in DMFieldEvaluateFV_DS()
649 if (D) PetscCall(DMRestoreWorkArray(field->dm, N * dimC, mpitype, &qD)); in DMFieldEvaluateFV_DS()
650 if (H) PetscCall(DMRestoreWorkArray(field->dm, N * dimC * dimC, mpitype, &qH)); in DMFieldEvaluateFV_DS()
656 static PetscErrorCode DMFieldGetDegree_DS(DMField field, IS pointIS, PetscInt *minDegree, PetscInt … in DMFieldGetDegree_DS() argument
664 dsfield = (DMField_DS *)field->data; in DMFieldGetDegree_DS()
672 PetscCall(DMPlexGetHeightStratum(field->dm, h, NULL, &hEnd)); in DMFieldGetDegree_DS()
676 PetscCall(DMFieldDSGetHeightDisc(field, h, dsfield->disc, &disc)); in DMFieldGetDegree_DS()
688 PetscErrorCode DMFieldGetFVQuadrature_Internal(DMField field, IS pointIS, PetscQuadrature *quad) in DMFieldGetFVQuadrature_Internal() argument
690 DM dm = field->dm; in DMFieldGetFVQuadrature_Internal()
712 } else PetscCall(DMFieldCreateDefaultQuadrature(field, pointIS, quad)); in DMFieldGetFVQuadrature_Internal()
716 static PetscErrorCode DMFieldCreateDefaultQuadrature_DS(DMField field, IS pointIS, PetscQuadrature … in DMFieldCreateDefaultQuadrature_DS() argument
726 dm = field->dm; in DMFieldCreateDefaultQuadrature_DS()
727 dsfield = (DMField_DS *)field->data; in DMFieldCreateDefaultQuadrature_DS()
740 PetscCall(DMFieldDSGetHeightDisc(field, h, dsfield->disc, &disc)); in DMFieldCreateDefaultQuadrature_DS()
750 static PetscErrorCode DMFieldCreateDefaultFaceQuadrature_DS(DMField field, IS pointIS, PetscQuadrat… in DMFieldCreateDefaultFaceQuadrature_DS() argument
760 dm = field->dm; in DMFieldCreateDefaultFaceQuadrature_DS()
761 dsfield = (DMField_DS *)field->data; in DMFieldCreateDefaultFaceQuadrature_DS()
776 PetscCall(DMFieldDSGetHeightDisc(field, h, dsfield->disc, &disc)); in DMFieldCreateDefaultFaceQuadrature_DS()
786 static PetscErrorCode DMFieldComputeFaceData_DS(DMField field, IS pointIS, PetscQuadrature quad, Pe… in DMFieldComputeFaceData_DS() argument
793 DM dm = field->dm; in DMFieldComputeFaceData_DS()
800 PetscCall(DMFieldGetDegree(field, cellIS, NULL, &maxDegree)); in DMFieldComputeFaceData_DS()
846 PetscCall(DMFieldGetDM(field, &dm)); in DMFieldComputeFaceData_DS()
883 PetscCall(DMFieldCreateFEGeom(field, suppIS, cellQuad, PETSC_FEGEOM_BASIC, &cellGeom)); in DMFieldComputeFaceData_DS()
904 DMField_DS *dsfield = (DMField_DS *)field->data; in DMFieldComputeFaceData_DS()
923 PetscCall(DMFieldDSGetHeightDisc(field, 1, dsfield->disc, &faceDisc)); in DMFieldComputeFaceData_DS()
924 PetscCall(DMFieldDSGetHeightDisc(field, 0, dsfield->disc, &cellDisc)); in DMFieldComputeFaceData_DS()
1100 PetscCall(DMFieldCreateFEGeom(field, suppIS, cellQuad, PETSC_FEGEOM_BASIC, &cellGeom)); in DMFieldComputeFaceData_DS()
1131 static PetscErrorCode DMFieldInitialize_DS(DMField field) in DMFieldInitialize_DS() argument
1134 field->ops->destroy = DMFieldDestroy_DS; in DMFieldInitialize_DS()
1135 field->ops->evaluate = DMFieldEvaluate_DS; in DMFieldInitialize_DS()
1136 field->ops->evaluateFE = DMFieldEvaluateFE_DS; in DMFieldInitialize_DS()
1137 field->ops->evaluateFV = DMFieldEvaluateFV_DS; in DMFieldInitialize_DS()
1138 field->ops->getDegree = DMFieldGetDegree_DS; in DMFieldInitialize_DS()
1139 field->ops->createDefaultQuadrature = DMFieldCreateDefaultQuadrature_DS; in DMFieldInitialize_DS()
1140 field->ops->createDefaultFaceQuadrature = DMFieldCreateDefaultFaceQuadrature_DS; in DMFieldInitialize_DS()
1141 field->ops->view = DMFieldView_DS; in DMFieldInitialize_DS()
1142 field->ops->computeFaceData = DMFieldComputeFaceData_DS; in DMFieldInitialize_DS()
1146 PETSC_INTERN PetscErrorCode DMFieldCreate_DS(DMField field) in DMFieldCreate_DS() argument
1152 field->data = dsfield; in DMFieldCreate_DS()
1153 PetscCall(DMFieldInitialize_DS(field)); in DMFieldCreate_DS()
1157 …orCode DMFieldCreateDSWithDG(DM dm, DM dmDG, PetscInt fieldNum, Vec vec, Vec vecDG, DMField *field) in DMFieldCreateDSWithDG() argument
1215 *field = b; in DMFieldCreateDSWithDG()
1219 PetscErrorCode DMFieldCreateDS(DM dm, PetscInt fieldNum, Vec vec, DMField *field) in DMFieldCreateDS() argument
1222 PetscCall(DMFieldCreateDSWithDG(dm, NULL, fieldNum, vec, NULL, field)); in DMFieldCreateDS()