CeedOperator

int CeedOperatorCreateFallback(CeedOperator op)

Duplicate a CeedOperator with a reference Ceed to fallback for advanced CeedOperator functionality.

Library Developer Functions

Return

An error code: 0 - success, otherwise - failure

Parameters
  • op: CeedOperator to create fallback for

int CeedOperatorCheckReady(Ceed ceed, CeedOperator op)

Check if a CeedOperator is ready to be used.

Library Developer Functions

Return

An error code: 0 - success, otherwise - failure

Parameters
  • [in] ceed: Ceed object for error handling

  • [in] op: CeedOperator to check

int CeedOperatorFieldView(CeedOperatorField field, CeedQFunctionField qffield, CeedInt fieldnumber, bool sub, bool in, FILE *stream)

View a field of a CeedOperator.

Utility Functions

Return

An error code: 0 - success, otherwise - failure

Parameters
  • [in] field: Operator field to view

  • [in] qffield: QFunction field (carries field name)

  • [in] fieldnumber: Number of field being viewed

  • [in] sub: true indicates sub-operator, which increases indentation; false for top-level operator

  • [in] in: true for an input field; false for output field

  • [in] stream: Stream to view to, e.g., stdout

int CeedOperatorSingleView(CeedOperator op, bool sub, FILE *stream)

View a single CeedOperator.

Utility Functions

Return

Error code: 0 - success, otherwise - failure

Parameters
  • [in] op: CeedOperator to view

  • [in] sub: Boolean flag for sub-operator

  • [in] stream: Stream to write; typically stdout/stderr or a file

int CeedOperatorGetActiveBasis(CeedOperator op, CeedBasis *activeBasis)

Find the active vector basis for a CeedOperator.

@ ref Developer

Return

An error code: 0 - success, otherwise - failure

Parameters
  • [in] op: CeedOperator to find active basis for

  • [out] activeBasis: Basis for active input vector

int CeedOperatorMultigridLevel_Core(CeedOperator opFine, CeedVector PMultFine, CeedElemRestriction rstrCoarse, CeedBasis basisCoarse, CeedBasis basisCtoF, CeedOperator *opCoarse, CeedOperator *opProlong, CeedOperator *opRestrict)

Common code for creating a multigrid coarse operator and level transfer operators for a CeedOperator.

Library Developer Functions

Return

An error code: 0 - success, otherwise - failure

Parameters
  • [in] opFine: Fine grid operator

  • [in] PMultFine: L-vector multiplicity in parallel gather/scatter

  • [in] rstrCoarse: Coarse grid restriction

  • [in] basisCoarse: Coarse grid active vector basis

  • [in] basisCtoF: Basis for coarse to fine interpolation

  • [out] opCoarse: Coarse grid operator

  • [out] opProlong: Coarse to fine operator

  • [out] opRestrict: Fine to coarse operator