Lines Matching refs:op

138 int CeedOperatorSingleView(CeedOperator op, const char *tabs, FILE *stream) {  in CeedOperatorSingleView()  argument
145 CeedCall(CeedOperatorIsAtPoints(op, &is_at_points)); in CeedOperatorSingleView()
146 CeedCall(CeedOperatorGetNumElements(op, &num_elem)); in CeedOperatorSingleView()
147 CeedCall(CeedOperatorGetNumQuadraturePoints(op, &num_qpts)); in CeedOperatorSingleView()
148 CeedCall(CeedOperatorGetNumArgs(op, &total_fields)); in CeedOperatorSingleView()
149 …CeedCall(CeedOperatorGetFields(op, &num_input_fields, &op_input_fields, &num_output_fields, &op_ou… in CeedOperatorSingleView()
150 CeedCall(CeedOperatorGetQFunction(op, &qf)); in CeedOperatorSingleView()
158 CeedCall(CeedOperatorAtPointsGetPoints(op, &rstr_points, NULL)); in CeedOperatorSingleView()
187 static int CeedOperatorView_Object(CeedObject op, FILE *stream) { in CeedOperatorView_Object() argument
188 CeedCall(CeedOperatorView((CeedOperator)op, stream)); in CeedOperatorView_Object()
201 static int CeedOperatorDestroy_Object(CeedObject *op) { in CeedOperatorDestroy_Object() argument
202 CeedCall(CeedOperatorDestroy((CeedOperator *)op)); in CeedOperatorDestroy_Object()
218 int CeedOperatorGetActiveBasis(CeedOperator op, CeedBasis *active_basis) { in CeedOperatorGetActiveBasis() argument
219 CeedCall(CeedOperatorGetActiveBases(op, active_basis, NULL)); in CeedOperatorGetActiveBasis()
236 int CeedOperatorGetActiveBases(CeedOperator op, CeedBasis *active_input_basis, CeedBasis *active_ou… in CeedOperatorGetActiveBases() argument
241 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorGetActiveBases()
242 …CeedCall(CeedOperatorGetFields(op, &num_input_fields, &op_input_fields, &num_output_fields, &op_ou… in CeedOperatorGetActiveBases()
255 …CeedCheck(!*active_input_basis || *active_input_basis == basis, CeedOperatorReturnCeed(op), CEED_E… in CeedOperatorGetActiveBases()
262 …CeedCheck(*active_input_basis, CeedOperatorReturnCeed(op), CEED_ERROR_INCOMPLETE, "No active input… in CeedOperatorGetActiveBases()
276 …active_output_basis || *active_output_basis == basis, CeedOperatorReturnCeed(op), CEED_ERROR_MINOR, in CeedOperatorGetActiveBases()
283 …CeedCheck(*active_output_basis, CeedOperatorReturnCeed(op), CEED_ERROR_INCOMPLETE, "No active outp… in CeedOperatorGetActiveBases()
301 int CeedOperatorGetActiveElemRestriction(CeedOperator op, CeedElemRestriction *active_rstr) { in CeedOperatorGetActiveElemRestriction() argument
302 CeedCall(CeedOperatorGetActiveElemRestrictions(op, active_rstr, NULL)); in CeedOperatorGetActiveElemRestriction()
319 int CeedOperatorGetActiveElemRestrictions(CeedOperator op, CeedElemRestriction *active_input_rstr, … in CeedOperatorGetActiveElemRestrictions() argument
324 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorGetActiveElemRestrictions()
325 …CeedCall(CeedOperatorGetFields(op, &num_input_fields, &op_input_fields, &num_output_fields, &op_ou… in CeedOperatorGetActiveElemRestrictions()
338 …CeedCheck(!*active_input_rstr || *active_input_rstr == rstr, CeedOperatorReturnCeed(op), CEED_ERRO… in CeedOperatorGetActiveElemRestrictions()
345 …CeedCheck(*active_input_rstr, CeedOperatorReturnCeed(op), CEED_ERROR_INCOMPLETE, "No active input … in CeedOperatorGetActiveElemRestrictions()
359 …CeedCheck(!*active_output_rstr || *active_output_rstr == rstr, CeedOperatorReturnCeed(op), CEED_ER… in CeedOperatorGetActiveElemRestrictions()
366 …CeedCheck(*active_output_rstr, CeedOperatorReturnCeed(op), CEED_ERROR_INCOMPLETE, "No active outpu… in CeedOperatorGetActiveElemRestrictions()
387 static int CeedOperatorContextSetGeneric(CeedOperator op, CeedContextFieldLabel field_label, CeedCo… in CeedOperatorContextSetGeneric() argument
390 CeedCheck(field_label, CeedOperatorReturnCeed(op), CEED_ERROR_UNSUPPORTED, "Invalid field label"); in CeedOperatorContextSetGeneric()
396 for (CeedInt i = 0; i < op->num_context_labels; i++) { in CeedOperatorContextSetGeneric()
397 if (op->context_labels[i] == field_label) index = i; in CeedOperatorContextSetGeneric()
399 …CeedCheck(index != -1, CeedOperatorReturnCeed(op), CEED_ERROR_UNSUPPORTED, "ContextFieldLabel does… in CeedOperatorContextSetGeneric()
402 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorContextSetGeneric()
407 CeedCall(CeedOperatorCompositeGetNumSub(op, &num_sub)); in CeedOperatorContextSetGeneric()
408 CeedCall(CeedOperatorCompositeGetSubList(op, &sub_operators)); in CeedOperatorContextSetGeneric()
409 …CeedCheck(num_sub == field_label->num_sub_labels, CeedOperatorReturnCeed(op), CEED_ERROR_UNSUPPORT… in CeedOperatorContextSetGeneric()
425 CeedCall(CeedOperatorGetContext(op, &ctx)); in CeedOperatorContextSetGeneric()
426 …CeedCheck(ctx, CeedOperatorReturnCeed(op), CEED_ERROR_UNSUPPORTED, "QFunction does not have contex… in CeedOperatorContextSetGeneric()
430 CeedCall(CeedOperatorSetQFunctionAssemblyDataUpdateNeeded(op, true)); in CeedOperatorContextSetGeneric()
450 static int CeedOperatorContextGetGenericRead(CeedOperator op, CeedContextFieldLabel field_label, Ce… in CeedOperatorContextGetGenericRead() argument
454 CeedCheck(field_label, CeedOperatorReturnCeed(op), CEED_ERROR_UNSUPPORTED, "Invalid field label"); in CeedOperatorContextGetGenericRead()
463 for (CeedInt i = 0; i < op->num_context_labels; i++) { in CeedOperatorContextGetGenericRead()
464 if (op->context_labels[i] == field_label) index = i; in CeedOperatorContextGetGenericRead()
466 …CeedCheck(index != -1, CeedOperatorReturnCeed(op), CEED_ERROR_UNSUPPORTED, "ContextFieldLabel does… in CeedOperatorContextGetGenericRead()
469 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorContextGetGenericRead()
474 CeedCall(CeedOperatorCompositeGetNumSub(op, &num_sub)); in CeedOperatorContextGetGenericRead()
475 CeedCall(CeedOperatorCompositeGetSubList(op, &sub_operators)); in CeedOperatorContextGetGenericRead()
476 …CeedCheck(num_sub == field_label->num_sub_labels, CeedOperatorReturnCeed(op), CEED_ERROR_UNSUPPORT… in CeedOperatorContextGetGenericRead()
494 CeedCall(CeedOperatorGetContext(op, &ctx)); in CeedOperatorContextGetGenericRead()
495 …CeedCheck(ctx, CeedOperatorReturnCeed(op), CEED_ERROR_UNSUPPORTED, "QFunction does not have contex… in CeedOperatorContextGetGenericRead()
517 static int CeedOperatorContextRestoreGenericRead(CeedOperator op, CeedContextFieldLabel field_label… in CeedOperatorContextRestoreGenericRead() argument
520 CeedCheck(field_label, CeedOperatorReturnCeed(op), CEED_ERROR_UNSUPPORTED, "Invalid field label"); in CeedOperatorContextRestoreGenericRead()
526 for (CeedInt i = 0; i < op->num_context_labels; i++) { in CeedOperatorContextRestoreGenericRead()
527 if (op->context_labels[i] == field_label) index = i; in CeedOperatorContextRestoreGenericRead()
529 …CeedCheck(index != -1, CeedOperatorReturnCeed(op), CEED_ERROR_UNSUPPORTED, "ContextFieldLabel does… in CeedOperatorContextRestoreGenericRead()
532 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorContextRestoreGenericRead()
537 CeedCall(CeedOperatorCompositeGetNumSub(op, &num_sub)); in CeedOperatorContextRestoreGenericRead()
538 CeedCall(CeedOperatorCompositeGetSubList(op, &sub_operators)); in CeedOperatorContextRestoreGenericRead()
539 …CeedCheck(num_sub == field_label->num_sub_labels, CeedOperatorReturnCeed(op), CEED_ERROR_UNSUPPORT… in CeedOperatorContextRestoreGenericRead()
557 CeedCall(CeedOperatorGetContext(op, &ctx)); in CeedOperatorContextRestoreGenericRead()
558 …CeedCheck(ctx, CeedOperatorReturnCeed(op), CEED_ERROR_UNSUPPORTED, "QFunction does not have contex… in CeedOperatorContextRestoreGenericRead()
583 int CeedOperatorGetNumArgs(CeedOperator op, CeedInt *num_args) { in CeedOperatorGetNumArgs() argument
586 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorGetNumArgs()
587 …CeedCheck(!is_composite, CeedOperatorReturnCeed(op), CEED_ERROR_MINOR, "Not defined for composite … in CeedOperatorGetNumArgs()
588 *num_args = op->num_fields; in CeedOperatorGetNumArgs()
604 int CeedOperatorHasTensorBases(CeedOperator op, bool *has_tensor_bases) { in CeedOperatorHasTensorBases() argument
608 CeedCall(CeedOperatorGetFields(op, &num_inputs, &input_fields, &num_outputs, &output_fields)); in CeedOperatorHasTensorBases()
645 int CeedOperatorIsImmutable(CeedOperator op, bool *is_immutable) { in CeedOperatorIsImmutable() argument
646 *is_immutable = op->is_immutable; in CeedOperatorIsImmutable()
660 int CeedOperatorIsSetupDone(CeedOperator op, bool *is_setup_done) { in CeedOperatorIsSetupDone() argument
661 *is_setup_done = op->is_backend_setup; in CeedOperatorIsSetupDone()
675 int CeedOperatorGetQFunction(CeedOperator op, CeedQFunction *qf) { in CeedOperatorGetQFunction() argument
678 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorGetQFunction()
679 …CeedCheck(!is_composite, CeedOperatorReturnCeed(op), CEED_ERROR_MINOR, "Not defined for composite … in CeedOperatorGetQFunction()
681 CeedCall(CeedQFunctionReferenceCopy(op->qf, qf)); in CeedOperatorGetQFunction()
695 int CeedOperatorIsComposite(CeedOperator op, bool *is_composite) { in CeedOperatorIsComposite() argument
696 *is_composite = op->is_composite; in CeedOperatorIsComposite()
710 int CeedOperatorGetData(CeedOperator op, void *data) { in CeedOperatorGetData() argument
711 *(void **)data = op->data; in CeedOperatorGetData()
725 int CeedOperatorSetData(CeedOperator op, void *data) { in CeedOperatorSetData() argument
726 op->data = data; in CeedOperatorSetData()
739 int CeedOperatorReference(CeedOperator op) { in CeedOperatorReference() argument
740 CeedCall(CeedObjectReference((CeedObject)op)); in CeedOperatorReference()
753 int CeedOperatorSetSetupDone(CeedOperator op) { in CeedOperatorSetSetupDone() argument
754 op->is_backend_setup = true; in CeedOperatorSetSetupDone()
781 …ratorCreate(Ceed ceed, CeedQFunction qf, CeedQFunction dqf, CeedQFunction dqfT, CeedOperator *op) { in CeedOperatorCreate() argument
787 CeedCall(CeedOperatorCreate(delegate, qf, dqf, dqfT, op)); in CeedOperatorCreate()
794 CeedCall(CeedCalloc(1, op)); in CeedOperatorCreate()
795 …CeedCall(CeedObjectCreate(ceed, CeedOperatorView_Object, CeedOperatorDestroy_Object, &(*op)->obj)); in CeedOperatorCreate()
796 (*op)->input_size = -1; in CeedOperatorCreate()
797 (*op)->output_size = -1; in CeedOperatorCreate()
798 CeedCall(CeedQFunctionReferenceCopy(qf, &(*op)->qf)); in CeedOperatorCreate()
799 if (dqf && dqf != CEED_QFUNCTION_NONE) CeedCall(CeedQFunctionReferenceCopy(dqf, &(*op)->dqf)); in CeedOperatorCreate()
800 if (dqfT && dqfT != CEED_QFUNCTION_NONE) CeedCall(CeedQFunctionReferenceCopy(dqfT, &(*op)->dqfT)); in CeedOperatorCreate()
801 CeedCall(CeedCalloc(CEED_FIELD_MAX, &(*op)->input_fields)); in CeedOperatorCreate()
802 CeedCall(CeedCalloc(CEED_FIELD_MAX, &(*op)->output_fields)); in CeedOperatorCreate()
803 CeedCall(ceed->OperatorCreate(*op)); in CeedOperatorCreate()
823 …ateAtPoints(Ceed ceed, CeedQFunction qf, CeedQFunction dqf, CeedQFunction dqfT, CeedOperator *op) { in CeedOperatorCreateAtPoints() argument
829 CeedCall(CeedOperatorCreateAtPoints(delegate, qf, dqf, dqfT, op)); in CeedOperatorCreateAtPoints()
836 CeedCall(CeedCalloc(1, op)); in CeedOperatorCreateAtPoints()
837 …CeedCall(CeedObjectCreate(ceed, CeedOperatorView_Object, CeedOperatorDestroy_Object, &(*op)->obj)); in CeedOperatorCreateAtPoints()
838 (*op)->is_at_points = true; in CeedOperatorCreateAtPoints()
839 (*op)->input_size = -1; in CeedOperatorCreateAtPoints()
840 (*op)->output_size = -1; in CeedOperatorCreateAtPoints()
841 CeedCall(CeedQFunctionReferenceCopy(qf, &(*op)->qf)); in CeedOperatorCreateAtPoints()
842 if (dqf && dqf != CEED_QFUNCTION_NONE) CeedCall(CeedQFunctionReferenceCopy(dqf, &(*op)->dqf)); in CeedOperatorCreateAtPoints()
843 if (dqfT && dqfT != CEED_QFUNCTION_NONE) CeedCall(CeedQFunctionReferenceCopy(dqfT, &(*op)->dqfT)); in CeedOperatorCreateAtPoints()
844 CeedCall(CeedCalloc(CEED_FIELD_MAX, &(*op)->input_fields)); in CeedOperatorCreateAtPoints()
845 CeedCall(CeedCalloc(CEED_FIELD_MAX, &(*op)->output_fields)); in CeedOperatorCreateAtPoints()
846 CeedCall(ceed->OperatorCreateAtPoints(*op)); in CeedOperatorCreateAtPoints()
860 int CeedOperatorCreateComposite(Ceed ceed, CeedOperator *op) { in CeedOperatorCreateComposite() argument
866 CeedCall(CeedOperatorCreateComposite(delegate, op)); in CeedOperatorCreateComposite()
872 CeedCall(CeedCalloc(1, op)); in CeedOperatorCreateComposite()
873 …CeedCall(CeedObjectCreate(ceed, CeedOperatorView_Object, CeedOperatorDestroy_Object, &(*op)->obj)); in CeedOperatorCreateComposite()
874 (*op)->is_composite = true; in CeedOperatorCreateComposite()
875 CeedCall(CeedCalloc(CEED_COMPOSITE_MAX, &(*op)->sub_operators)); in CeedOperatorCreateComposite()
876 (*op)->input_size = -1; in CeedOperatorCreateComposite()
877 (*op)->output_size = -1; in CeedOperatorCreateComposite()
879 if (ceed->CompositeOperatorCreate) CeedCall(ceed->CompositeOperatorCreate(*op)); in CeedOperatorCreateComposite()
898 int CeedOperatorReferenceCopy(CeedOperator op, CeedOperator *op_copy) { in CeedOperatorReferenceCopy() argument
899 CeedCall(CeedOperatorReference(op)); in CeedOperatorReferenceCopy()
901 *op_copy = op; in CeedOperatorReferenceCopy()
928 int CeedOperatorSetField(CeedOperator op, const char *field_name, CeedElemRestriction rstr, CeedBas… in CeedOperatorSetField() argument
935 CeedCall(CeedOperatorIsAtPoints(op, &is_at_points)); in CeedOperatorSetField()
936 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorSetField()
937 CeedCall(CeedOperatorIsImmutable(op, &is_immutable)); in CeedOperatorSetField()
938 …CeedCheck(!is_composite, CeedOperatorReturnCeed(op), CEED_ERROR_INCOMPATIBLE, "Cannot add field to… in CeedOperatorSetField()
939 …CeedCheck(!is_immutable, CeedOperatorReturnCeed(op), CEED_ERROR_MAJOR, "Operator cannot be changed… in CeedOperatorSetField()
940 …CeedCheck(rstr, CeedOperatorReturnCeed(op), CEED_ERROR_INCOMPATIBLE, "CeedElemRestriction rstr for… in CeedOperatorSetField()
941 …CeedCheck(basis, CeedOperatorReturnCeed(op), CEED_ERROR_INCOMPATIBLE, "CeedBasis basis for field \… in CeedOperatorSetField()
942 …CeedCheck(vec, CeedOperatorReturnCeed(op), CEED_ERROR_INCOMPATIBLE, "CeedVector vec for field \"%s… in CeedOperatorSetField()
945 …(rstr == CEED_ELEMRESTRICTION_NONE || !op->has_restriction || num_elem == op->num_elem, CeedOperat… in CeedOperatorSetField()
946 …CeedInt_FMT " elements incompatible with prior %" CeedInt_FMT " elements", num_elem, op->num_elem); in CeedOperatorSetField()
952 CeedCheck(is_at_points, CeedOperatorReturnCeed(op), CEED_ERROR_UNSUPPORTED, in CeedOperatorSetField()
954 CeedCheck(basis == CEED_BASIS_NONE, CeedOperatorReturnCeed(op), CEED_ERROR_UNSUPPORTED, in CeedOperatorSetField()
956 if (!op->first_points_rstr) { in CeedOperatorSetField()
957 CeedCall(CeedElemRestrictionReferenceCopy(rstr, &op->first_points_rstr)); in CeedOperatorSetField()
961 … CeedCall(CeedElemRestrictionAtPointsAreCompatible(op->first_points_rstr, rstr, &are_compatible)); in CeedOperatorSetField()
962 CeedCheck(are_compatible, CeedOperatorReturnCeed(op), CEED_ERROR_INCOMPATIBLE, in CeedOperatorSetField()
970 …CeedCheck(op->num_qpts == 0 || num_qpts == op->num_qpts, CeedOperatorReturnCeed(op), CEED_ERROR_DI… in CeedOperatorSetField()
973 basis == CEED_BASIS_NONE ? "CeedElemRestriction" : "CeedBasis", num_qpts, op->num_qpts); in CeedOperatorSetField()
975 CeedCall(CeedOperatorGetQFunction(op, &qf)); in CeedOperatorSetField()
984 op_field = &op->input_fields[i]; in CeedOperatorSetField()
995 op_field = &op->output_fields[i]; in CeedOperatorSetField()
1000 …return CeedError(CeedOperatorReturnCeed(op), CEED_ERROR_INCOMPLETE, "CeedQFunction has no knowledg… in CeedOperatorSetField()
1003 CeedCall(CeedOperatorCheckField(CeedOperatorReturnCeed(op), qf_field, rstr, basis)); in CeedOperatorSetField()
1011 if (op->input_size == -1) op->input_size = l_size; in CeedOperatorSetField()
1012 CeedCheck(l_size == op->input_size, CeedOperatorReturnCeed(op), CEED_ERROR_INCOMPATIBLE, in CeedOperatorSetField()
1013 …or size %" CeedSize_FMT " does not match previous size %" CeedSize_FMT "", l_size, op->input_size); in CeedOperatorSetField()
1015 if (op->output_size == -1) op->output_size = l_size; in CeedOperatorSetField()
1016 CeedCheck(l_size == op->output_size, CeedOperatorReturnCeed(op), CEED_ERROR_INCOMPATIBLE, in CeedOperatorSetField()
1017 …r size %" CeedSize_FMT " does not match previous size %" CeedSize_FMT "", l_size, op->output_size); in CeedOperatorSetField()
1023 if (rstr != CEED_ELEMRESTRICTION_NONE && !op->has_restriction) { in CeedOperatorSetField()
1024 op->num_elem = num_elem; in CeedOperatorSetField()
1025 op->has_restriction = true; // Restriction set, but num_elem may be 0 in CeedOperatorSetField()
1028 …if (op->num_qpts == 0 && !is_at_points) op->num_qpts = num_qpts; // no consistent number of qpts … in CeedOperatorSetField()
1029 op->num_fields += 1; in CeedOperatorSetField()
1049 int CeedOperatorGetFields(CeedOperator op, CeedInt *num_input_fields, CeedOperatorField **input_fie… in CeedOperatorGetFields() argument
1054 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorGetFields()
1055 …CeedCheck(!is_composite, CeedOperatorReturnCeed(op), CEED_ERROR_MINOR, "Not defined for composite … in CeedOperatorGetFields()
1056 CeedCall(CeedOperatorCheckReady(op)); in CeedOperatorGetFields()
1058 CeedCall(CeedOperatorGetQFunction(op, &qf)); in CeedOperatorGetFields()
1061 if (input_fields) *input_fields = op->input_fields; in CeedOperatorGetFields()
1062 if (output_fields) *output_fields = op->output_fields; in CeedOperatorGetFields()
1079 int CeedOperatorAtPointsSetPoints(CeedOperator op, CeedElemRestriction rstr_points, CeedVector poin… in CeedOperatorAtPointsSetPoints() argument
1082 CeedCall(CeedOperatorIsAtPoints(op, &is_at_points)); in CeedOperatorAtPointsSetPoints()
1083 CeedCall(CeedOperatorIsImmutable(op, &is_immutable)); in CeedOperatorAtPointsSetPoints()
1084 …CeedCheck(is_at_points, CeedOperatorReturnCeed(op), CEED_ERROR_MINOR, "Only defined for operator a… in CeedOperatorAtPointsSetPoints()
1085 …CeedCheck(!is_immutable, CeedOperatorReturnCeed(op), CEED_ERROR_MAJOR, "Operator cannot be changed… in CeedOperatorAtPointsSetPoints()
1087 if (!op->first_points_rstr) { in CeedOperatorAtPointsSetPoints()
1088 CeedCall(CeedElemRestrictionReferenceCopy(rstr_points, &op->first_points_rstr)); in CeedOperatorAtPointsSetPoints()
1092 …CeedCall(CeedElemRestrictionAtPointsAreCompatible(op->first_points_rstr, rstr_points, &are_compati… in CeedOperatorAtPointsSetPoints()
1093 CeedCheck(are_compatible, CeedOperatorReturnCeed(op), CEED_ERROR_INCOMPATIBLE, in CeedOperatorAtPointsSetPoints()
1097 CeedCall(CeedElemRestrictionReferenceCopy(rstr_points, &op->rstr_points)); in CeedOperatorAtPointsSetPoints()
1098 CeedCall(CeedVectorReferenceCopy(point_coords, &op->point_coords)); in CeedOperatorAtPointsSetPoints()
1112 int CeedOperatorIsAtPoints(CeedOperator op, bool *is_at_points) { in CeedOperatorIsAtPoints() argument
1113 *is_at_points = op->is_at_points; in CeedOperatorIsAtPoints()
1130 int CeedOperatorAtPointsGetPoints(CeedOperator op, CeedElemRestriction *rstr_points, CeedVector *po… in CeedOperatorAtPointsGetPoints() argument
1133 CeedCall(CeedOperatorIsAtPoints(op, &is_at_points)); in CeedOperatorAtPointsGetPoints()
1134 …CeedCheck(is_at_points, CeedOperatorReturnCeed(op), CEED_ERROR_MINOR, "Only defined for operator a… in CeedOperatorAtPointsGetPoints()
1135 CeedCall(CeedOperatorCheckReady(op)); in CeedOperatorAtPointsGetPoints()
1139 CeedCall(CeedElemRestrictionReferenceCopy(op->rstr_points, rstr_points)); in CeedOperatorAtPointsGetPoints()
1143 CeedCall(CeedVectorReferenceCopy(op->point_coords, point_coords)); in CeedOperatorAtPointsGetPoints()
1163 int CeedOperatorGetFieldByName(CeedOperator op, const char *field_name, CeedOperatorField *op_field… in CeedOperatorGetFieldByName() argument
1169 …CeedCall(CeedOperatorGetFields(op, &num_input_fields, &input_fields, &num_output_fields, &output_f… in CeedOperatorGetFieldByName()
1331 int CeedOperatorCompositeGetNumSub(CeedOperator op, CeedInt *num_suboperators) { in CeedOperatorCompositeGetNumSub() argument
1334 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorCompositeGetNumSub()
1335 …CeedCheck(is_composite, CeedOperatorReturnCeed(op), CEED_ERROR_MINOR, "Only defined for a composit… in CeedOperatorCompositeGetNumSub()
1336 *num_suboperators = op->num_suboperators; in CeedOperatorCompositeGetNumSub()
1350 int CeedOperatorCompositeGetSubList(CeedOperator op, CeedOperator **sub_operators) { in CeedOperatorCompositeGetSubList() argument
1353 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorCompositeGetSubList()
1354 …CeedCheck(is_composite, CeedOperatorReturnCeed(op), CEED_ERROR_MINOR, "Only defined for a composit… in CeedOperatorCompositeGetSubList()
1355 *sub_operators = op->sub_operators; in CeedOperatorCompositeGetSubList()
1374 int CeedOperatorCompositeGetSubByName(CeedOperator op, const char *op_name, CeedOperator *sub_op) { in CeedOperatorCompositeGetSubByName() argument
1379 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorCompositeGetSubByName()
1380 …CeedCheck(is_composite, CeedOperatorReturnCeed(op), CEED_ERROR_MINOR, "Only defined for a composit… in CeedOperatorCompositeGetSubByName()
1382 CeedCall(CeedOperatorCompositeGetNumSub(op, &num_sub_ops)); in CeedOperatorCompositeGetSubByName()
1383 CeedCall(CeedOperatorCompositeGetSubList(op, &sub_ops)); in CeedOperatorCompositeGetSubByName()
1405 int CeedOperatorCompositeSetSequential(CeedOperator op, bool is_sequential) { in CeedOperatorCompositeSetSequential() argument
1408 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorCompositeSetSequential()
1409 …CeedCheck(is_composite, CeedOperatorReturnCeed(op), CEED_ERROR_MINOR, "Only defined for a composit… in CeedOperatorCompositeSetSequential()
1410 op->is_sequential = is_sequential; in CeedOperatorCompositeSetSequential()
1426 int CeedOperatorCompositeIsSequential(CeedOperator op, bool *is_sequential) { in CeedOperatorCompositeIsSequential() argument
1429 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorCompositeIsSequential()
1430 …CeedCheck(is_composite, CeedOperatorReturnCeed(op), CEED_ERROR_MINOR, "Only defined for a composit… in CeedOperatorCompositeIsSequential()
1431 *is_sequential = op->is_sequential; in CeedOperatorCompositeIsSequential()
1444 int CeedOperatorCheckReady(CeedOperator op) { in CeedOperatorCheckReady() argument
1448 if (op->is_interface_setup) return CEED_ERROR_SUCCESS; in CeedOperatorCheckReady()
1450 CeedCall(CeedOperatorIsAtPoints(op, &is_at_points)); in CeedOperatorCheckReady()
1451 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorCheckReady()
1452 if (!is_composite) CeedCall(CeedOperatorGetQFunction(op, &qf)); in CeedOperatorCheckReady()
1456 CeedCall(CeedOperatorCompositeGetNumSub(op, &num_suboperators)); in CeedOperatorCheckReady()
1459 op->input_size = 0; in CeedOperatorCheckReady()
1460 op->output_size = 0; in CeedOperatorCheckReady()
1464 CeedCall(CeedOperatorCompositeGetSubList(op, &sub_operators)); in CeedOperatorCheckReady()
1471 CeedCall(CeedOperatorGetActiveVectorLengths(op, &input_size, &output_size)); in CeedOperatorCheckReady()
1476 …CeedCheck(op->num_fields > 0, CeedOperatorReturnCeed(op), CEED_ERROR_INCOMPLETE, "No operator fiel… in CeedOperatorCheckReady()
1478 …CeedCheck(op->num_fields == num_input_fields + num_output_fields, CeedOperatorReturnCeed(op), CEED… in CeedOperatorCheckReady()
1480 …CeedCheck(op->has_restriction, CeedOperatorReturnCeed(op), CEED_ERROR_INCOMPLETE, "At least one re… in CeedOperatorCheckReady()
1481 CeedCheck(op->num_qpts > 0 || is_at_points, CeedOperatorReturnCeed(op), CEED_ERROR_INCOMPLETE, in CeedOperatorCheckReady()
1486 op->is_interface_setup = true; in CeedOperatorCheckReady()
1489 if (op->dqf && op->dqf != CEED_QFUNCTION_NONE) CeedCall(CeedQFunctionSetImmutable(op->dqf)); in CeedOperatorCheckReady()
1490 if (op->dqfT && op->dqfT != CEED_QFUNCTION_NONE) CeedCall(CeedQFunctionSetImmutable(op->dqfT)); in CeedOperatorCheckReady()
1507 int CeedOperatorGetActiveVectorLengths(CeedOperator op, CeedSize *input_size, CeedSize *output_size… in CeedOperatorGetActiveVectorLengths() argument
1510 if (input_size) *input_size = op->input_size; in CeedOperatorGetActiveVectorLengths()
1511 if (output_size) *output_size = op->output_size; in CeedOperatorGetActiveVectorLengths()
1513 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorGetActiveVectorLengths()
1514 if (is_composite && (op->input_size == -1 || op->output_size == -1)) { in CeedOperatorGetActiveVectorLengths()
1518 CeedCall(CeedOperatorCompositeGetNumSub(op, &num_suboperators)); in CeedOperatorGetActiveVectorLengths()
1519 CeedCall(CeedOperatorCompositeGetSubList(op, &sub_operators)); in CeedOperatorGetActiveVectorLengths()
1524 if (op->input_size == -1) op->input_size = sub_input_size; in CeedOperatorGetActiveVectorLengths()
1525 if (op->output_size == -1) op->output_size = sub_output_size; in CeedOperatorGetActiveVectorLengths()
1527 …(sub_input_size == -1 || sub_input_size == op->input_size) && (sub_output_size == -1 || sub_output… in CeedOperatorGetActiveVectorLengths()
1528 CeedOperatorReturnCeed(op), CEED_ERROR_MAJOR, in CeedOperatorGetActiveVectorLengths()
1532 op->input_size, op->output_size, input_size, output_size); in CeedOperatorGetActiveVectorLengths()
1551 int CeedOperatorSetQFunctionAssemblyReuse(CeedOperator op, bool reuse_assembly_data) { in CeedOperatorSetQFunctionAssemblyReuse() argument
1554 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorSetQFunctionAssemblyReuse()
1556 for (CeedInt i = 0; i < op->num_suboperators; i++) { in CeedOperatorSetQFunctionAssemblyReuse()
1557 CeedCall(CeedOperatorSetQFunctionAssemblyReuse(op->sub_operators[i], reuse_assembly_data)); in CeedOperatorSetQFunctionAssemblyReuse()
1562 CeedCall(CeedOperatorGetQFunctionAssemblyData(op, &data)); in CeedOperatorSetQFunctionAssemblyReuse()
1578 int CeedOperatorSetQFunctionAssemblyDataUpdateNeeded(CeedOperator op, bool needs_data_update) { in CeedOperatorSetQFunctionAssemblyDataUpdateNeeded() argument
1581 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorSetQFunctionAssemblyDataUpdateNeeded()
1586 CeedCall(CeedOperatorCompositeGetNumSub(op, &num_suboperators)); in CeedOperatorSetQFunctionAssemblyDataUpdateNeeded()
1587 CeedCall(CeedOperatorCompositeGetSubList(op, &sub_operators)); in CeedOperatorSetQFunctionAssemblyDataUpdateNeeded()
1594 CeedCall(CeedOperatorGetQFunctionAssemblyData(op, &data)); in CeedOperatorSetQFunctionAssemblyDataUpdateNeeded()
1610 int CeedOperatorSetName(CeedOperator op, const char *name) { in CeedOperatorSetName() argument
1614 CeedCall(CeedFree(&op->name)); in CeedOperatorSetName()
1618 op->name = name_copy; in CeedOperatorSetName()
1633 int CeedOperatorGetName(CeedOperator op, const char **name) { in CeedOperatorGetName() argument
1634 if (op->name) { in CeedOperatorGetName()
1635 *name = op->name; in CeedOperatorGetName()
1636 } else if (!op->is_composite) { in CeedOperatorGetName()
1639 CeedCall(CeedOperatorGetQFunction(op, &qf)); in CeedOperatorGetName()
1657 static int CeedOperatorView_Core(CeedOperator op, FILE *stream, bool is_full) { in CeedOperatorView_Core() argument
1663 CeedCall(CeedOperatorGetName(op, &name)); in CeedOperatorView_Core()
1665 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorView_Core()
1666 CeedCall(CeedOperatorIsAtPoints(op, &is_at_points)); in CeedOperatorView_Core()
1668 CeedCall(CeedOperatorGetNumViewTabs(op, &num_tabs)); in CeedOperatorView_Core()
1675 CeedCall(CeedOperatorCompositeGetNumSub(op, &num_suboperators)); in CeedOperatorView_Core()
1676 CeedCall(CeedOperatorCompositeGetSubList(op, &sub_operators)); in CeedOperatorView_Core()
1690 if (is_full) CeedCall(CeedOperatorSingleView(op, tabs, stream)); in CeedOperatorView_Core()
1706 int CeedOperatorSetNumViewTabs(CeedOperator op, CeedInt num_tabs) { in CeedOperatorSetNumViewTabs() argument
1707 CeedCall(CeedObjectSetNumViewTabs((CeedObject)op, num_tabs)); in CeedOperatorSetNumViewTabs()
1721 int CeedOperatorGetNumViewTabs(CeedOperator op, CeedInt *num_tabs) { in CeedOperatorGetNumViewTabs() argument
1722 CeedCall(CeedObjectGetNumViewTabs((CeedObject)op, num_tabs)); in CeedOperatorGetNumViewTabs()
1736 int CeedOperatorView(CeedOperator op, FILE *stream) { in CeedOperatorView() argument
1737 CeedCall(CeedOperatorView_Core(op, stream, true)); in CeedOperatorView()
1751 int CeedOperatorViewTerse(CeedOperator op, FILE *stream) { in CeedOperatorViewTerse() argument
1752 CeedCall(CeedOperatorView_Core(op, stream, false)); in CeedOperatorViewTerse()
1766 int CeedOperatorGetCeed(CeedOperator op, Ceed *ceed) { in CeedOperatorGetCeed() argument
1767 CeedCall(CeedObjectGetCeed((CeedObject)op, ceed)); in CeedOperatorGetCeed()
1780 Ceed CeedOperatorReturnCeed(CeedOperator op) { return CeedObjectReturnCeed((CeedObject)op); } in CeedOperatorReturnCeed() argument
1792 int CeedOperatorGetNumElements(CeedOperator op, CeedInt *num_elem) { in CeedOperatorGetNumElements() argument
1795 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorGetNumElements()
1796 …CeedCheck(!is_composite, CeedOperatorReturnCeed(op), CEED_ERROR_MINOR, "Not defined for composite … in CeedOperatorGetNumElements()
1797 *num_elem = op->num_elem; in CeedOperatorGetNumElements()
1811 int CeedOperatorGetNumQuadraturePoints(CeedOperator op, CeedInt *num_qpts) { in CeedOperatorGetNumQuadraturePoints() argument
1814 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorGetNumQuadraturePoints()
1815 …CeedCheck(!is_composite, CeedOperatorReturnCeed(op), CEED_ERROR_MINOR, "Not defined for composite … in CeedOperatorGetNumQuadraturePoints()
1816 *num_qpts = op->num_qpts; in CeedOperatorGetNumQuadraturePoints()
1828 int CeedOperatorGetFlopsEstimate(CeedOperator op, CeedSize *flops) { in CeedOperatorGetFlopsEstimate() argument
1831 CeedCall(CeedOperatorCheckReady(op)); in CeedOperatorGetFlopsEstimate()
1834 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorGetFlopsEstimate()
1838 CeedCall(CeedOperatorCompositeGetNumSub(op, &num_suboperators)); in CeedOperatorGetFlopsEstimate()
1840 CeedCall(CeedOperatorCompositeGetSubList(op, &sub_operators)); in CeedOperatorGetFlopsEstimate()
1856 CeedCall(CeedOperatorGetNumElements(op, &num_elem)); in CeedOperatorGetFlopsEstimate()
1858 CeedCall(CeedOperatorIsAtPoints(op, &is_at_points)); in CeedOperatorGetFlopsEstimate()
1863 CeedCall(CeedOperatorAtPointsGetPoints(op, &rstr_points, NULL)); in CeedOperatorGetFlopsEstimate()
1864 CeedCall(CeedGetPreferredMemType(CeedOperatorReturnCeed(op), &mem_type)); in CeedOperatorGetFlopsEstimate()
1880 CeedCall(CeedOperatorGetQFunction(op, &qf)); in CeedOperatorGetFlopsEstimate()
1883 CeedCall(CeedOperatorGetFields(op, NULL, &op_input_fields, NULL, &op_output_fields)); in CeedOperatorGetFlopsEstimate()
1915 else CeedCall(CeedOperatorGetNumQuadraturePoints(op, &num_qpts)); in CeedOperatorGetFlopsEstimate()
1916 CeedCall(CeedOperatorGetQFunction(op, &qf)); in CeedOperatorGetFlopsEstimate()
1919 CeedCheck(qf_flops > -1, CeedOperatorReturnCeed(op), CEED_ERROR_INCOMPLETE, in CeedOperatorGetFlopsEstimate()
1966 int CeedOperatorGetContext(CeedOperator op, CeedQFunctionContext *ctx) { in CeedOperatorGetContext() argument
1971 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorGetContext()
1972 …CeedCheck(!is_composite, CeedOperatorReturnCeed(op), CEED_ERROR_INCOMPATIBLE, "Cannot retrieve Cee… in CeedOperatorGetContext()
1973 CeedCall(CeedOperatorGetQFunction(op, &qf)); in CeedOperatorGetContext()
1994 int CeedOperatorGetContextFieldLabel(CeedOperator op, const char *field_name, CeedContextFieldLabel… in CeedOperatorGetContextFieldLabel() argument
1997 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorGetContextFieldLabel()
2002 for (CeedInt i = 0; i < op->num_context_labels; i++) { in CeedOperatorGetContextFieldLabel()
2003 if (!strcmp(op->context_labels[i]->name, field_name)) { in CeedOperatorGetContextFieldLabel()
2004 *field_label = op->context_labels[i]; in CeedOperatorGetContextFieldLabel()
2015 CeedCall(CeedOperatorCompositeGetNumSub(op, &num_sub)); in CeedOperatorGetContextFieldLabel()
2016 CeedCall(CeedOperatorCompositeGetSubList(op, &sub_operators)); in CeedOperatorGetContextFieldLabel()
2033 …return CeedError(CeedOperatorReturnCeed(op), CEED_ERROR_INCOMPATIBLE, "Incompatible field types on… in CeedOperatorGetContextFieldLabel()
2042 return CeedError(CeedOperatorReturnCeed(op), CEED_ERROR_INCOMPATIBLE, in CeedOperatorGetContextFieldLabel()
2067 CeedCall(CeedOperatorGetQFunction(op, &qf)); in CeedOperatorGetContextFieldLabel()
2082 if (op->num_context_labels == 0) { in CeedOperatorGetContextFieldLabel()
2083 CeedCall(CeedCalloc(1, &op->context_labels)); in CeedOperatorGetContextFieldLabel()
2084 op->max_context_labels = 1; in CeedOperatorGetContextFieldLabel()
2085 } else if (op->num_context_labels == op->max_context_labels) { in CeedOperatorGetContextFieldLabel()
2086 CeedCall(CeedRealloc(2 * op->num_context_labels, &op->context_labels)); in CeedOperatorGetContextFieldLabel()
2087 op->max_context_labels *= 2; in CeedOperatorGetContextFieldLabel()
2089 op->context_labels[op->num_context_labels] = *field_label; in CeedOperatorGetContextFieldLabel()
2090 op->num_context_labels++; in CeedOperatorGetContextFieldLabel()
2108 int CeedOperatorSetContextDouble(CeedOperator op, CeedContextFieldLabel field_label, double *values… in CeedOperatorSetContextDouble() argument
2109 return CeedOperatorContextSetGeneric(op, field_label, CEED_CONTEXT_FIELD_DOUBLE, values); in CeedOperatorSetContextDouble()
2126 int CeedOperatorGetContextDoubleRead(CeedOperator op, CeedContextFieldLabel field_label, size_t *nu… in CeedOperatorGetContextDoubleRead() argument
2127 …return CeedOperatorContextGetGenericRead(op, field_label, CEED_CONTEXT_FIELD_DOUBLE, num_values, v… in CeedOperatorGetContextDoubleRead()
2141 int CeedOperatorRestoreContextDoubleRead(CeedOperator op, CeedContextFieldLabel field_label, const … in CeedOperatorRestoreContextDoubleRead() argument
2142 return CeedOperatorContextRestoreGenericRead(op, field_label, CEED_CONTEXT_FIELD_DOUBLE, values); in CeedOperatorRestoreContextDoubleRead()
2158 int CeedOperatorSetContextInt32(CeedOperator op, CeedContextFieldLabel field_label, int32_t *values… in CeedOperatorSetContextInt32() argument
2159 return CeedOperatorContextSetGeneric(op, field_label, CEED_CONTEXT_FIELD_INT32, values); in CeedOperatorSetContextInt32()
2176 int CeedOperatorGetContextInt32Read(CeedOperator op, CeedContextFieldLabel field_label, size_t *num… in CeedOperatorGetContextInt32Read() argument
2177 …return CeedOperatorContextGetGenericRead(op, field_label, CEED_CONTEXT_FIELD_INT32, num_values, va… in CeedOperatorGetContextInt32Read()
2191 int CeedOperatorRestoreContextInt32Read(CeedOperator op, CeedContextFieldLabel field_label, const i… in CeedOperatorRestoreContextInt32Read() argument
2192 return CeedOperatorContextRestoreGenericRead(op, field_label, CEED_CONTEXT_FIELD_INT32, values); in CeedOperatorRestoreContextInt32Read()
2208 int CeedOperatorSetContextBoolean(CeedOperator op, CeedContextFieldLabel field_label, bool *values)… in CeedOperatorSetContextBoolean() argument
2209 return CeedOperatorContextSetGeneric(op, field_label, CEED_CONTEXT_FIELD_BOOL, values); in CeedOperatorSetContextBoolean()
2226 int CeedOperatorGetContextBooleanRead(CeedOperator op, CeedContextFieldLabel field_label, size_t *n… in CeedOperatorGetContextBooleanRead() argument
2227 …return CeedOperatorContextGetGenericRead(op, field_label, CEED_CONTEXT_FIELD_BOOL, num_values, val… in CeedOperatorGetContextBooleanRead()
2241 int CeedOperatorRestoreContextBooleanRead(CeedOperator op, CeedContextFieldLabel field_label, const… in CeedOperatorRestoreContextBooleanRead() argument
2242 return CeedOperatorContextRestoreGenericRead(op, field_label, CEED_CONTEXT_FIELD_BOOL, values); in CeedOperatorRestoreContextBooleanRead()
2262 int CeedOperatorApply(CeedOperator op, CeedVector in, CeedVector out, CeedRequest *request) { in CeedOperatorApply() argument
2265 CeedCall(CeedOperatorCheckReady(op)); in CeedOperatorApply()
2267 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorApply()
2268 if (is_composite && op->ApplyComposite) { in CeedOperatorApply()
2270 CeedCall(op->ApplyComposite(op, in, out, request)); in CeedOperatorApply()
2271 } else if (!is_composite && op->Apply) { in CeedOperatorApply()
2273 CeedCall(op->Apply(op, in, out, request)); in CeedOperatorApply()
2280 CeedCall(CeedOperatorApplyAddActive(op, in, out, request)); in CeedOperatorApply()
2304 int CeedOperatorApplyAdd(CeedOperator op, CeedVector in, CeedVector out, CeedRequest *request) { in CeedOperatorApplyAdd() argument
2307 CeedCall(CeedOperatorCheckReady(op)); in CeedOperatorApplyAdd()
2309 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorApplyAdd()
2312 if (op->ApplyAddComposite) { in CeedOperatorApplyAdd()
2313 CeedCall(op->ApplyAddComposite(op, in, out, request)); in CeedOperatorApplyAdd()
2318 CeedCall(CeedOperatorCompositeGetNumSub(op, &num_suboperators)); in CeedOperatorApplyAdd()
2319 CeedCall(CeedOperatorCompositeGetSubList(op, &sub_operators)); in CeedOperatorApplyAdd()
2324 } else if (op->num_elem > 0) { in CeedOperatorApplyAdd()
2326 CeedCall(op->ApplyAdd(op, in, out, request)); in CeedOperatorApplyAdd()
2348 int CeedOperatorApplyAddActive(CeedOperator op, CeedVector in, CeedVector out, CeedRequest *request… in CeedOperatorApplyAddActive() argument
2351 CeedCall(CeedOperatorCheckReady(op)); in CeedOperatorApplyAddActive()
2353 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorApplyAddActive()
2359 CeedCall(CeedOperatorCompositeGetNumSub(op, &num_suboperators)); in CeedOperatorApplyAddActive()
2360 CeedCall(CeedOperatorCompositeGetSubList(op, &sub_operators)); in CeedOperatorApplyAddActive()
2377 CeedCall(CeedOperatorApplyAdd(op, in, out, request)); in CeedOperatorApplyAddActive()
2383 CeedCall(CeedOperatorGetFields(op, NULL, NULL, &num_output_fields, &output_fields)); in CeedOperatorApplyAddActive()
2393 CeedCall(CeedOperatorApplyAdd(op, in, out, request)); in CeedOperatorApplyAddActive()
2407 int CeedOperatorAssemblyDataStrip(CeedOperator op) { in CeedOperatorAssemblyDataStrip() argument
2410 CeedCall(CeedQFunctionAssemblyDataDestroy(&op->qf_assembled)); in CeedOperatorAssemblyDataStrip()
2411 CeedCall(CeedOperatorAssemblyDataDestroy(&op->op_assembled)); in CeedOperatorAssemblyDataStrip()
2412 CeedCall(CeedOperatorIsComposite(op, &is_composite)); in CeedOperatorAssemblyDataStrip()
2417 CeedCall(CeedOperatorCompositeGetNumSub(op, &num_suboperators)); in CeedOperatorAssemblyDataStrip()
2418 CeedCall(CeedOperatorCompositeGetSubList(op, &sub_operators)); in CeedOperatorAssemblyDataStrip()
2436 int CeedOperatorDestroy(CeedOperator *op) { in CeedOperatorDestroy() argument
2437 if (!*op || CeedObjectDereference((CeedObject)*op) > 0) { in CeedOperatorDestroy()
2438 *op = NULL; in CeedOperatorDestroy()
2442 if ((*op)->Destroy) { in CeedOperatorDestroy()
2443 CeedCall((*op)->Destroy(*op)); in CeedOperatorDestroy()
2446 for (CeedInt i = 0; i < (*op)->num_fields; i++) { in CeedOperatorDestroy()
2447 if ((*op)->input_fields[i]) { in CeedOperatorDestroy()
2448 if ((*op)->input_fields[i]->elem_rstr != CEED_ELEMRESTRICTION_NONE) { in CeedOperatorDestroy()
2449 CeedCall(CeedElemRestrictionDestroy(&(*op)->input_fields[i]->elem_rstr)); in CeedOperatorDestroy()
2451 if ((*op)->input_fields[i]->basis != CEED_BASIS_NONE) { in CeedOperatorDestroy()
2452 CeedCall(CeedBasisDestroy(&(*op)->input_fields[i]->basis)); in CeedOperatorDestroy()
2454 …if ((*op)->input_fields[i]->vec != CEED_VECTOR_ACTIVE && (*op)->input_fields[i]->vec != CEED_VECTO… in CeedOperatorDestroy()
2455 CeedCall(CeedVectorDestroy(&(*op)->input_fields[i]->vec)); in CeedOperatorDestroy()
2457 CeedCall(CeedFree(&(*op)->input_fields[i]->field_name)); in CeedOperatorDestroy()
2458 CeedCall(CeedFree(&(*op)->input_fields[i])); in CeedOperatorDestroy()
2461 for (CeedInt i = 0; i < (*op)->num_fields; i++) { in CeedOperatorDestroy()
2462 if ((*op)->output_fields[i]) { in CeedOperatorDestroy()
2463 CeedCall(CeedElemRestrictionDestroy(&(*op)->output_fields[i]->elem_rstr)); in CeedOperatorDestroy()
2464 if ((*op)->output_fields[i]->basis != CEED_BASIS_NONE) { in CeedOperatorDestroy()
2465 CeedCall(CeedBasisDestroy(&(*op)->output_fields[i]->basis)); in CeedOperatorDestroy()
2467 …if ((*op)->output_fields[i]->vec != CEED_VECTOR_ACTIVE && (*op)->output_fields[i]->vec != CEED_VEC… in CeedOperatorDestroy()
2468 CeedCall(CeedVectorDestroy(&(*op)->output_fields[i]->vec)); in CeedOperatorDestroy()
2470 CeedCall(CeedFree(&(*op)->output_fields[i]->field_name)); in CeedOperatorDestroy()
2471 CeedCall(CeedFree(&(*op)->output_fields[i])); in CeedOperatorDestroy()
2474 CeedCall(CeedFree(&(*op)->input_fields)); in CeedOperatorDestroy()
2475 CeedCall(CeedFree(&(*op)->output_fields)); in CeedOperatorDestroy()
2477 CeedCall(CeedVectorDestroy(&(*op)->point_coords)); in CeedOperatorDestroy()
2478 CeedCall(CeedElemRestrictionDestroy(&(*op)->rstr_points)); in CeedOperatorDestroy()
2479 CeedCall(CeedElemRestrictionDestroy(&(*op)->first_points_rstr)); in CeedOperatorDestroy()
2481 CeedCall(CeedOperatorAssemblyDataStrip(*op)); in CeedOperatorDestroy()
2483 for (CeedInt i = 0; i < (*op)->num_suboperators; i++) { in CeedOperatorDestroy()
2484 if ((*op)->sub_operators[i]) { in CeedOperatorDestroy()
2485 CeedCall(CeedOperatorDestroy(&(*op)->sub_operators[i])); in CeedOperatorDestroy()
2488 CeedCall(CeedFree(&(*op)->sub_operators)); in CeedOperatorDestroy()
2489 CeedCall(CeedQFunctionDestroy(&(*op)->qf)); in CeedOperatorDestroy()
2490 CeedCall(CeedQFunctionDestroy(&(*op)->dqf)); in CeedOperatorDestroy()
2491 CeedCall(CeedQFunctionDestroy(&(*op)->dqfT)); in CeedOperatorDestroy()
2493 if ((*op)->is_composite) { in CeedOperatorDestroy()
2494 for (CeedInt i = 0; i < (*op)->num_context_labels; i++) { in CeedOperatorDestroy()
2495 CeedCall(CeedFree(&(*op)->context_labels[i]->sub_labels)); in CeedOperatorDestroy()
2496 CeedCall(CeedFree(&(*op)->context_labels[i])); in CeedOperatorDestroy()
2499 CeedCall(CeedFree(&(*op)->context_labels)); in CeedOperatorDestroy()
2502 CeedCall(CeedOperatorDestroy(&(*op)->op_fallback)); in CeedOperatorDestroy()
2504 CeedCall(CeedFree(&(*op)->name)); in CeedOperatorDestroy()
2505 CeedCall(CeedObjectDestroy_Private(&(*op)->obj)); in CeedOperatorDestroy()
2506 CeedCall(CeedFree(op)); in CeedOperatorDestroy()