API Documentation
This section contains the code documentation. The subsections represent the different API objects, typedefs, and enumerations.
Public API
These objects and functions are intended to be used by general users of libCEED and can generally be found in ceed.h.
graph TD
U -->|wrap data| V
U(High-level user code) -->|apply| O
subgraph Ceed
O(CeedOperator) --> E(CeedElemRestriction)
O --> B(CeedBasis)
O --> Q(CeedQFunction)
B --> V(CeedVector)
O --> V
E --> V
Q --> V
end
Q --> UQ(User's physics)
- Ceed
- Base library resources
CeedCeedRequestCeedObjectCEED_REQUEST_IMMEDIATECEED_REQUEST_ORDEREDCeedGetGitVersion()CeedSetIsClang()CeedGetIsClang()CeedGetBuildConfiguration()CeedObjectView()CeedObjectSetNumViewTabs()CeedObjectGetNumViewTabs()CeedObjectGetCeed()CeedObjectReturnCeed()CeedObjectDestroy()CeedRequestWait()CeedRegistryGetList()CeedInit()CeedSetStream()CeedReferenceCopy()CeedGetResource()CeedGetPreferredMemType()CeedIsDeterministic()CeedAddJitSourceRoot()CeedAddRustSourceRoot()CeedAddJitDefine()CeedSetNumViewTabs()CeedGetNumViewTabs()CeedView()CeedDestroy()CeedErrorFormat()CeedErrorImpl()CeedErrorReturn()CeedErrorStore()CeedErrorAbort()CeedErrorExit()CeedSetErrorHandler()CeedGetErrorMessage()CeedResetErrorMessage()CeedGetVersion()CeedGetScalarType()- Macros
- Typedefs and Enumerations
- Base library resources
- CeedVector
- Basic vector operations
CeedVectorCEED_VECTOR_ACTIVECEED_VECTOR_NONECeedVectorCreate()CeedVectorReferenceCopy()CeedVectorCopy()CeedVectorCopyStrided()CeedVectorSetArray()CeedVectorSetValue()CeedVectorSetValueStrided()CeedVectorSyncArray()CeedVectorTakeArray()CeedVectorGetArray()CeedVectorGetArrayRead()CeedVectorGetArrayWrite()CeedVectorRestoreArray()CeedVectorRestoreArrayRead()CeedVectorNorm()CeedVectorScale()CeedVectorAXPY()CeedVectorAXPBY()CeedVectorPointwiseMult()CeedVectorReciprocal()CeedVectorSetNumViewTabs()CeedVectorGetNumViewTabs()CeedVectorViewRange()CeedVectorView()CeedVectorGetCeed()CeedVectorReturnCeed()CeedVectorGetLength()CeedVectorDestroy()- Typedefs and Enumerations
- Basic vector operations
- CeedElemRestriction
- Expressing element decomposition and degrees of freedom over a mesh
CeedElemRestrictionCEED_STRIDES_BACKENDCEED_ELEMRESTRICTION_NONECeedElemRestrictionCreate()CeedElemRestrictionCreateOriented()CeedElemRestrictionCreateCurlOriented()CeedElemRestrictionCreateStrided()CeedElemRestrictionCreateAtPoints()CeedElemRestrictionCreateBlocked()CeedElemRestrictionCreateBlockedOriented()CeedElemRestrictionCreateBlockedCurlOriented()CeedElemRestrictionCreateBlockedStrided()CeedElemRestrictionCreateUnsignedCopy()CeedElemRestrictionCreateUnorientedCopy()CeedElemRestrictionReferenceCopy()CeedElemRestrictionCreateVector()CeedElemRestrictionApply()CeedElemRestrictionApplyAtPointsInElement()CeedElemRestrictionApplyBlock()CeedElemRestrictionGetCeed()CeedElemRestrictionReturnCeed()CeedElemRestrictionGetCompStride()CeedElemRestrictionGetNumElements()CeedElemRestrictionGetElementSize()CeedElemRestrictionGetNumPoints()CeedElemRestrictionGetNumPointsInElement()CeedElemRestrictionGetMinMaxPointsInElement()CeedElemRestrictionGetMaxPointsInElement()CeedElemRestrictionGetMinPointsInElement()CeedElemRestrictionGetLVectorSize()CeedElemRestrictionGetEVectorSize()CeedElemRestrictionGetNumComponents()CeedElemRestrictionGetNumBlocks()CeedElemRestrictionGetBlockSize()CeedElemRestrictionGetMultiplicity()CeedElemRestrictionSetNumViewTabs()CeedElemRestrictionGetNumViewTabs()CeedElemRestrictionView()CeedElemRestrictionDestroy()
- Expressing element decomposition and degrees of freedom over a mesh
- CeedBasis
- Discrete element bases and quadrature
CeedBasisCEED_BASIS_NONECeedBasisCreateTensorH1()CeedBasisCreateTensorH1Lagrange()CeedBasisCreateH1()CeedBasisCreateHdiv()CeedBasisCreateHcurl()CeedBasisCreateProjection()CeedBasisReferenceCopy()CeedBasisSetNumViewTabs()CeedBasisGetNumViewTabs()CeedBasisView()CeedBasisApply()CeedBasisApplyAdd()CeedBasisApplyAtPoints()CeedBasisApplyAddAtPoints()CeedBasisGetCeed()CeedBasisReturnCeed()CeedBasisGetDimension()CeedBasisGetTopology()CeedBasisGetNumComponents()CeedBasisGetNumNodes()CeedBasisGetNumNodes1D()CeedBasisGetNumQuadraturePoints()CeedBasisGetNumQuadraturePoints1D()CeedBasisGetQRef()CeedBasisGetQWeights()CeedBasisGetInterp()CeedBasisGetInterp1D()CeedBasisGetGrad()CeedBasisGetGrad1D()CeedBasisGetDiv()CeedBasisGetCurl()CeedBasisDestroy()CeedGaussQuadrature()CeedLobattoQuadrature()- Typedefs and Enumerations
- Discrete element bases and quadrature
- CeedQFunction
- Resolution/space-independent weak forms and quadrature-based operations
CeedQFunctionCeedQFunctionContextCeedContextFieldLabelCEED_QFUNCTION_NONECeedQFunctionCreateInterior()CeedQFunctionCreateInteriorByName()CeedQFunctionCreateIdentity()CeedQFunctionReferenceCopy()CeedQFunctionAddInput()CeedQFunctionAddOutput()CeedQFunctionGetFields()CeedQFunctionFieldGetName()CeedQFunctionFieldGetSize()CeedQFunctionFieldGetEvalMode()CeedQFunctionFieldGetData()CeedQFunctionSetContext()CeedQFunctionSetContextWritable()CeedQFunctionSetUserFlopsEstimate()CeedQFunctionSetNumViewTabs()CeedQFunctionGetNumViewTabs()CeedQFunctionView()CeedQFunctionGetCeed()CeedQFunctionReturnCeed()CeedQFunctionApply()CeedQFunctionDestroy()CeedQFunctionContextCreate()CeedQFunctionContextReferenceCopy()CeedQFunctionContextSetData()CeedQFunctionContextTakeData()CeedQFunctionContextGetData()CeedQFunctionContextGetDataRead()CeedQFunctionContextRestoreData()CeedQFunctionContextRestoreDataRead()CeedQFunctionContextRegisterDouble()CeedQFunctionContextRegisterInt32()CeedQFunctionContextRegisterBoolean()CeedQFunctionContextGetAllFieldLabels()CeedContextFieldLabelGetDescription()CeedQFunctionContextGetContextSize()CeedQFunctionContextSetNumViewTabs()CeedQFunctionContextGetNumViewTabs()CeedQFunctionContextView()CeedQFunctionContextSetDataDestroy()CeedQFunctionContextDestroy()- Macros
- Resolution/space-independent weak forms and quadrature-based operations
- CeedOperator
- Discrete operators on user vectors
CeedOperatorCeedOperatorCreate()CeedOperatorCreateAtPoints()CeedOperatorCreateComposite()CeedOperatorReferenceCopy()CeedOperatorSetField()CeedOperatorGetFields()CeedOperatorAtPointsSetPoints()CeedOperatorIsAtPoints()CeedOperatorAtPointsGetPoints()CeedOperatorGetFieldByName()CeedOperatorFieldGetName()CeedOperatorFieldGetElemRestriction()CeedOperatorFieldGetBasis()CeedOperatorFieldGetVector()CeedOperatorFieldGetData()CeedOperatorCompositeAddSub()CeedOperatorCompositeGetNumSub()CeedOperatorCompositeGetSubList()CeedOperatorCompositeGetSubByName()CeedOperatorCompositeSetSequential()CeedOperatorCompositeIsSequential()CeedOperatorCheckReady()CeedOperatorGetActiveVectorLengths()CeedOperatorSetQFunctionAssemblyReuse()CeedOperatorSetQFunctionAssemblyDataUpdateNeeded()CeedOperatorSetName()CeedOperatorGetName()CeedOperatorView_Core()CeedOperatorSetNumViewTabs()CeedOperatorGetNumViewTabs()CeedOperatorView()CeedOperatorViewTerse()CeedOperatorGetCeed()CeedOperatorReturnCeed()CeedOperatorGetNumElements()CeedOperatorGetNumQuadraturePoints()CeedOperatorGetFlopsEstimate()CeedOperatorGetContext()CeedOperatorGetContextFieldLabel()CeedOperatorSetContextDouble()CeedOperatorGetContextDoubleRead()CeedOperatorRestoreContextDoubleRead()CeedOperatorSetContextInt32()CeedOperatorGetContextInt32Read()CeedOperatorRestoreContextInt32Read()CeedOperatorSetContextBoolean()CeedOperatorGetContextBooleanRead()CeedOperatorRestoreContextBooleanRead()CeedOperatorApply()CeedOperatorApplyAdd()CeedOperatorApplyAddActive()CeedOperatorAssemblyDataStrip()CeedOperatorDestroy()CeedOperatorLinearAssembleQFunction()CeedOperatorLinearAssembleQFunctionBuildOrUpdate()CeedOperatorLinearAssembleDiagonal()CeedOperatorLinearAssembleAddDiagonal()CeedOperatorLinearAssemblePointBlockDiagonalSymbolic()CeedOperatorLinearAssemblePointBlockDiagonal()CeedOperatorLinearAssembleAddPointBlockDiagonal()CeedOperatorLinearAssembleSymbolic()CeedOperatorLinearAssemble()CeedOperatorCompositeGetMultiplicity()CeedOperatorMultigridLevelCreate()CeedOperatorMultigridLevelCreateTensorH1()CeedOperatorMultigridLevelCreateH1()CeedOperatorCreateFDMElementInverse()
- Discrete operators on user vectors
Backend API
These functions are intended to be used by backend developers of libCEED and can generally be found in ceed-backend.h.
- Ceed
CeedObjectCreate()CeedObjectReference()CeedObjectDereference()CeedObjectDestroy_Private()CeedDebugFlag()CeedDebugFlagEnv()CeedDebugImpl256()CeedMallocArray()CeedCallocArray()CeedReallocArray()CeedStringAllocCopy()CeedFree()CeedSetHostGenericArray()CeedSetHostBoolArray()CeedSetHostCeedInt8Array()CeedSetHostCeedIntArray()CeedSetHostCeedScalarArray()CeedRegister()CeedIsDebug()CeedGetResourceRoot()CeedGetParent()CeedGetDelegate()CeedSetDelegate()CeedGetObjectDelegate()CeedSetObjectDelegate()CeedGetOperatorFallbackCeed()CeedSetOperatorFallbackCeed()CeedSetDeterministic()CeedSetBackendFunctionImpl()CeedGetData()CeedSetData()CeedReference()CeedGetWorkVectorMemoryUsage()CeedClearWorkVectors()CeedGetWorkVector()CeedRestoreWorkVector()CeedGetJitSourceRoots()CeedGetRustSourceRoots()CeedRestoreJitSourceRoots()CeedRestoreRustSourceRoots()CeedGetJitDefines()CeedRestoreJitDefines()- Macros
- Typedefs and Enumerations
- CeedVector
- CeedElemRestriction
CeedElemRestrictionGetType()CeedElemRestrictionIsStrided()CeedElemRestrictionIsAtPoints()CeedElemRestrictionAtPointsAreCompatible()CeedElemRestrictionGetStrides()CeedElemRestrictionHasBackendStrides()CeedElemRestrictionGetOffsets()CeedElemRestrictionRestoreOffsets()CeedElemRestrictionGetOrientations()CeedElemRestrictionRestoreOrientations()CeedElemRestrictionGetCurlOrientations()CeedElemRestrictionRestoreCurlOrientations()CeedElemRestrictionGetLLayout()CeedElemRestrictionSetLLayout()CeedElemRestrictionGetELayout()CeedElemRestrictionSetELayout()CeedElemRestrictionGetAtPointsElementOffset()CeedElemRestrictionSetAtPointsEVectorSize()CeedElemRestrictionGetData()CeedElemRestrictionSetData()CeedElemRestrictionReference()CeedElemRestrictionGetFlopsEstimate()
- CeedBasis
CeedBasisCreateH1Fallback()CeedBasisGetCollocatedGrad()CeedBasisGetChebyshevInterp1D()CeedBasisIsTensor()CeedBasisIsCollocated()CeedBasisGetData()CeedBasisSetData()CeedBasisReference()CeedBasisGetNumQuadratureComponents()CeedBasisGetFlopsEstimate()CeedBasisGetFESpace()CeedBasisGetTopologyDimension()CeedBasisGetTensorContract()CeedBasisSetTensorContract()CeedMatrixMatrixMultiply()CeedQRFactorization()CeedHouseholderApplyQ()CeedMatrixPseudoinverse()CeedSymmetricSchurDecomposition()CeedSimultaneousDiagonalization()CeedTensorContractCreate()CeedTensorContractApply()CeedTensorContractStridedApply()CeedTensorContractGetCeed()CeedTensorContractReturnCeed()CeedTensorContractGetData()CeedTensorContractSetData()CeedTensorContractReference()CeedTensorContractReferenceCopy()CeedTensorContractDestroy()
- CeedQFunction
CeedQFunctionFieldCeedQFunctionGetVectorLength()CeedQFunctionGetNumArgs()CeedQFunctionGetName()CeedQFunctionGetKernelName()CeedQFunctionGetSourcePath()CeedQFunctionLoadSourceToBuffer()CeedQFunctionGetUserFunction()CeedQFunctionGetContext()CeedQFunctionGetContextData()CeedQFunctionRestoreContextData()CeedQFunctionGetInnerContext()CeedQFunctionGetInnerContextData()CeedQFunctionRestoreInnerContextData()CeedQFunctionIsIdentity()CeedQFunctionIsContextWritable()CeedQFunctionGetData()CeedQFunctionSetData()CeedQFunctionIsImmutable()CeedQFunctionSetImmutable()CeedQFunctionReference()CeedQFunctionGetFlopsEstimate()CeedQFunctionContextGetCeed()CeedQFunctionContextReturnCeed()CeedQFunctionContextHasValidData()CeedQFunctionContextHasBorrowedDataOfType()CeedQFunctionContextGetState()CeedQFunctionContextGetBackendData()CeedQFunctionContextSetBackendData()CeedQFunctionContextGetFieldLabel()CeedQFunctionContextSetGeneric()CeedQFunctionContextGetGenericRead()CeedQFunctionContextRestoreGenericRead()CeedQFunctionContextSetDouble()CeedQFunctionContextGetDoubleRead()CeedQFunctionContextRestoreDoubleRead()CeedQFunctionContextSetInt32()CeedQFunctionContextGetInt32Read()CeedQFunctionContextRestoreInt32Read()CeedQFunctionContextSetBoolean()CeedQFunctionContextGetBooleanRead()CeedQFunctionContextRestoreBooleanRead()CeedQFunctionContextGetDataDestroy()CeedQFunctionContextReference()- Macros
- CeedOperator
CeedOperatorFieldCeedOperatorGetNumArgs()CeedOperatorHasTensorBases()CeedOperatorIsImmutable()CeedOperatorIsSetupDone()CeedOperatorGetQFunction()CeedOperatorIsComposite()CeedOperatorGetData()CeedOperatorSetData()CeedOperatorReference()CeedOperatorSetSetupDone()CeedOperatorGetBasisPointer()CeedOperatorCreateActivePointBlockRestriction()CeedOperatorGetQFunctionAssemblyData()CeedQFunctionAssemblyDataCreate()CeedQFunctionAssemblyDataReference()CeedQFunctionAssemblyDataSetReuse()CeedQFunctionAssemblyDataSetUpdateNeeded()CeedQFunctionAssemblyDataIsUpdateNeeded()CeedQFunctionAssemblyDataReferenceCopy()CeedQFunctionAssemblyDataIsSetup()CeedQFunctionAssemblyDataSetObjects()CeedQFunctionAssemblyDataGetObjects()CeedQFunctionAssemblyDataDestroy()CeedOperatorGetOperatorAssemblyData()CeedOperatorAssemblyDataCreate()CeedOperatorAssemblyDataGetEvalModes()CeedOperatorAssemblyDataGetBases()CeedOperatorAssemblyDataGetElemRestrictions()CeedOperatorAssemblyDataDestroy()CeedOperatorGetFallback()CeedOperatorGetFallbackParent()CeedOperatorGetFallbackParentCeed()
Internal Functions
These functions are intended to be used by library developers of libCEED and can generally be found in ceed-impl.h.
- Ceed
- CeedVector
- CeedElemRestriction
- CeedBasis
CeedChebyshevPolynomialsAtPoint()CeedChebyshevDerivativeAtPoint()CeedHouseholderReflect()CeedGivensRotation()CeedScalarView()CeedBasisView_Object()CeedBasisDestroy_Object()CeedBasisCreateProjectionMatrices()CeedBasisApplyCheckDims()CeedBasisApplyAtPointsCheckDims()CeedBasisApplyAtPoints_Core()
- CeedQFunction
CeedQFunctionRegister()CeedQFunctionFieldSet()CeedQFunctionFieldView()CeedQFunctionView_Object()CeedQFunctionDestroy_Object()CeedQFunctionSetFortranStatus()CeedQFunctionContextGetFieldIndex()CeedQFunctionContextRegisterGeneric()CeedQFunctionContextDestroyData()CeedQFunctionContextView_Object()CeedQFunctionContextDestroy_Object()
- CeedOperator
CeedOperatorCheckField()CeedOperatorFieldView()CeedOperatorSingleView()CeedOperatorView_Object()CeedOperatorDestroy_Object()CeedOperatorGetActiveBasis()CeedOperatorGetActiveBases()CeedOperatorGetActiveElemRestriction()CeedOperatorGetActiveElemRestrictions()CeedOperatorContextSetGeneric()CeedOperatorContextGetGenericRead()CeedOperatorContextRestoreGenericRead()CeedQFunctionCreateFallback()CeedOperatorCreateFallback()CeedOperatorLinearAssembleAddDiagonalSingle_Mesh()CeedOperatorLinearAssembleAddDiagonalSingle()CeedOperatorLinearAssembleAddDiagonalComposite()CeedOperatorAssembleSymbolicSingle()CeedOperatorLinearAssembleQFunctionBuildOrUpdate_Core()CeedOperatorLinearAssembleQFunctionBuildOrUpdateFallback()CeedOperatorAssembleSingle()CeedOperatorAssemblyCountEntriesSingle()CeedOperatorLinearAssembleGetNumEntries()CeedOperatorMultigridLevelCreateSingle_Core()CeedBuildMassLaplace()