Differentiation backends
ManifoldDiff.set_default_differential_backend! — Functionset_default_differential_backend!(backend)Set current backend for differentiation to backend.
ManifoldDiff.default_differential_backend — Functiondefault_differential_backend()Get the default differentiation backend.
Euclidian backends
Euclidian backend objects can be taken from ADTypes.jl. See the documentation of DifferentiationInterface.jl for the list of supported packages.
EmbeddedDiff
ManifoldDiff.ExplicitEmbeddedBackend — TypeExplicitEmbeddedBackend{TF<:NamedTuple}A backend to use with the RiemannianProjectionBackend or the TangentDiffBackend, when you have explicit formulae for the gradient in the embedding available.
Constructor
ExplicitEmbeddedBackend(M::AbstractManifold; kwargs)Construct an ExplicitEmbeddedBackend in the embedding M, where currently the following keywords may be used
gradientfor a(n allocating) gradient functiongradient(M, p)defined in the embeddinggradient!for a mutating gradient functiongradient!(M, X, p).
Note that the gradient functions are defined on the embedding manifold M passed to the Backend as well