Specific manifold functions
This small section extends the functions available from ManifoldsBase.jl and Manifolds.jl, especially a few random generators, that are simpler than the available functions.
ManifoldsBase.mid_point
— Methodmid_point(M, p, q, x)
mid_point!(M, y, p, q, x)
Compute the mid point between p
and q
. If there is more than one mid point of (not neccessarily minimizing) geodesics (e.g. on the sphere), the one nearest to x
is returned (in place of y
).
Manopt.max_stepsize
— Methodmax_stepsize(M::TangentBundle, p)
Tangent bundle has injectivity radius of either infinity (for flat manifolds) or 0 (for non-flat manifolds). This makes a guess of what a reasonable maximum stepsize on a tangent bundle might be.
Manopt.reflect
— Methodreflect(M, p, x)
reflect!(M, q, p, x)
reflect the point x
from the manifold M
at point p
, i.e.
\[ \operatorname{refl}_p(x) = \exp_p(-\log_p x).\]
where exp and log denote the exponential and logarithmic map on M
. This can also be done in place of q
.
Manopt.reflect
— Methodreflect(M, f, x)
reflect!(M, q, f, x)
reflect the point x
from the manifold M
at the point f(x)
of the function $f: \mathcal M → \mathcal M$, i.e.,
\[ \operatorname{refl}_f(x) = \operatorname{refl}_{f(x)}(x),\]
Compute the result in q
.
see also reflect
(M,p,x)
.