CeedElemRestriction

int CeedElemRestrictionGetType(CeedElemRestriction rstr, CeedRestrictionType *rstr_type)

Get the type of a CeedElemRestriction.

Backend Developer Functions

Parameters:
  • rstr[in] CeedElemRestriction

  • rstr_type[out] Variable to store restriction type

Returns:

An error code: 0 - success, otherwise - failure

int CeedElemRestrictionIsStrided(CeedElemRestriction rstr, bool *is_strided)

Get the strided status of a CeedElemRestriction.

Parameters:
  • rstr[in] CeedElemRestriction

  • is_strided[out] Variable to store strided status, 1 if strided else 0

int CeedElemRestrictionIsPoints(CeedElemRestriction rstr, bool *is_points)

Get the points status of a CeedElemRestriction.

Parameters:
  • rstr[in] CeedElemRestriction

  • is_points[out] Variable to store points status, 1 if points else 0

int CeedElemRestrictionGetStrides(CeedElemRestriction rstr, CeedInt (*strides)[3])

Get the strides of a strided CeedElemRestriction.

Backend Developer Functions

Parameters:
  • rstr[in] CeedElemRestriction

  • strides[out] Variable to store strides array

Returns:

An error code: 0 - success, otherwise - failure

int CeedElemRestrictionHasBackendStrides(CeedElemRestriction rstr, bool *has_backend_strides)

Get the backend stride status of a CeedElemRestriction.

Backend Developer Functions

Parameters:
  • rstr[in] CeedElemRestriction

  • has_backend_strides[out] Variable to store stride status

Returns:

An error code: 0 - success, otherwise - failure

int CeedElemRestrictionGetOffsets(CeedElemRestriction rstr, CeedMemType mem_type, const CeedInt **offsets)

Get read-only access to a CeedElemRestriction offsets array by memtype.

User Functions

Parameters:
  • rstr[in] CeedElemRestriction to retrieve offsets

  • mem_type[in] Memory type on which to access the array. If the backend uses a different memory type, this will perform a copy (possibly cached).

  • offsets[out] Array on memory type mem_type

Returns:

An error code: 0 - success, otherwise - failure

int CeedElemRestrictionRestoreOffsets(CeedElemRestriction rstr, const CeedInt **offsets)

Restore an offsets array obtained using CeedElemRestrictionGetOffsets()

User Functions

Parameters:
  • rstr[in] CeedElemRestriction to restore

  • offsets[in] Array of offset data

Returns:

An error code: 0 - success, otherwise - failure

int CeedElemRestrictionGetOrientations(CeedElemRestriction rstr, CeedMemType mem_type, const bool **orients)

Get read-only access to a CeedElemRestriction orientations array by memtype.

User Functions

Parameters:
  • rstr[in] CeedElemRestriction to retrieve orientations

  • mem_type[in] Memory type on which to access the array. If the backend uses a different memory type, this will perform a copy (possibly cached).

  • orients[out] Array on memory type mem_type

Returns:

An error code: 0 - success, otherwise - failure

int CeedElemRestrictionRestoreOrientations(CeedElemRestriction rstr, const bool **orients)

Restore an orientations array obtained using CeedElemRestrictionGetOrientations()

User Functions

Parameters:
  • rstr[in] CeedElemRestriction to restore

  • orients[in] Array of orientation data

Returns:

An error code: 0 - success, otherwise - failure

int CeedElemRestrictionGetCurlOrientations(CeedElemRestriction rstr, CeedMemType mem_type, const CeedInt8 **curl_orients)

Get read-only access to a CeedElemRestriction curl-conforming orientations array by memtype.

User Functions

Parameters:
  • rstr[in] CeedElemRestriction to retrieve curl-conforming orientations

  • mem_type[in] Memory type on which to access the array. If the backend uses a different memory type, this will perform a copy (possibly cached).

  • curl_orients[out] Array on memory type mem_type

Returns:

An error code: 0 - success, otherwise - failure

int CeedElemRestrictionRestoreCurlOrientations(CeedElemRestriction rstr, const CeedInt8 **curl_orients)

Restore an orientations array obtained using CeedElemRestrictionGetCurlOrientations()

User Functions

Parameters:
  • rstr[in] CeedElemRestriction to restore

  • curl_orients[in] Array of orientation data

Returns:

An error code: 0 - success, otherwise - failure

int CeedElemRestrictionGetELayout(CeedElemRestriction rstr, CeedInt (*layout)[3])

Get the E-vector layout of a CeedElemRestriction.

Backend Developer Functions

Parameters:
  • rstr[in] CeedElemRestriction

  • layout[out] Variable to store layout array, stored as [nodes, components, elements]. The data for node i, component j, element k in the E-vector is given by i*layout[0] + j*layout[1] + k*layout[2]

Returns:

An error code: 0 - success, otherwise - failure

int CeedElemRestrictionSetELayout(CeedElemRestriction rstr, CeedInt layout[3])

Set the E-vector layout of a CeedElemRestriction.

Backend Developer Functions

Parameters:
  • rstr[in] CeedElemRestriction

  • layout[in] Variable to containing layout array, stored as [nodes, components, elements]. The data for node i, component j, element k in the E-vector is given by i*layout[0] + j*layout[1] + k*layout[2]

Returns:

An error code: 0 - success, otherwise - failure

int CeedElemRestrictionGetData(CeedElemRestriction rstr, void *data)

Get the backend data of a CeedElemRestriction.

Backend Developer Functions

Parameters:
  • rstr[in] CeedElemRestriction

  • data[out] Variable to store data

Returns:

An error code: 0 - success, otherwise - failure

int CeedElemRestrictionSetData(CeedElemRestriction rstr, void *data)

Set the backend data of a CeedElemRestriction.

Backend Developer Functions

Parameters:
  • rstr[inout] CeedElemRestriction

  • data[in] Data to set

Returns:

An error code: 0 - success, otherwise - failure

int CeedElemRestrictionReference(CeedElemRestriction rstr)

Increment the reference counter for a CeedElemRestriction.

Backend Developer Functions

Parameters:
  • rstr[inout] ElemRestriction to increment the reference counter

Returns:

An error code: 0 - success, otherwise - failure

int CeedElemRestrictionGetFlopsEstimate(CeedElemRestriction rstr, CeedTransposeMode t_mode, CeedSize *flops)

Estimate number of FLOPs required to apply CeedElemRestriction in t_mode.

Backend Developer Functions

Parameters:
  • rstr[in] ElemRestriction to estimate FLOPs for

  • t_mode[in] Apply restriction or transpose

  • flops[out] Address of variable to hold FLOPs estimate