$\DeclareMathOperator{\arccosh}{arccosh} \DeclareMathOperator*{\argmin}{arg\,min} \DeclareMathOperator{\Exp}{Exp} \newcommand{\geo}[2]{\gamma_{\overset{\frown}{#1,#2}}} \newcommand{\geoS}{\gamma} \newcommand{\geoD}[2]{\gamma_} \newcommand{\geoL}[2]{\gamma(#2; #1)} \newcommand{\gradM}{\nabla_{\M}} \newcommand{\gradMComp}[1]{\nabla_{\M,#1}} \newcommand{\Grid}{\mathcal G} \DeclareMathOperator{\Log}{Log} \newcommand{\M}{\mathcal M} \newcommand{\N}{\mathcal N} \newcommand{\mat}[1]{\mathbf{#1}} \DeclareMathOperator{\prox}{prox} \newcommand{\PT}[3]{\mathrm{PT}_{#1\to#2}#3} \newcommand{\R}{\mathbb R} \newcommand{\SPD}[1]{\mathcal{P}(#1)} \DeclareMathOperator{\Tr}{Tr} \newcommand{\tT}{\mathrm{T}} \newcommand{\vect}[1]{\mathbf{#1}}$

The inner product for cyclic data

The tangent vectors on $\mathbb S^1$ lie on a line (when looking at the embedded circle), and hence the dot prodcut is the product of the tangent vectors, which are here values.

Matlab Documentation

 1 2 3 4 5 6 7 8 9 10 11 12 13 14 % S1.dot(x,xi,nu) % Compute the inner product of two tangent vectors in T_P M % % INPUT % x : a point(Set) in S1 % xi : a first tangent vector( set) to (each) x % nu : a secod tangent vector( set) to (each) x % % OUTPUT % ds : the corresponding value(s) of the inner product of (each triple) V,W at X % % --- % Manifold-Valued Image Restoration Toolbox 1.0, J. Persch 2016-12-06 %