node $n_i$ of the input triangle mesh, $\mathrm{T}$, a normal vector, $\vec{n}_i$, is computed as an average of the vectors normal to each adjacent face weighted by the tip angle at the node. This normal vector in turn defines the tangent space, $T_i$, at node $n_i$. We then arbitrarily select a vector in $T_i$, which we assign to be $\frac{\partial }{\partial x^1}|_i$. Then $\frac{\partial }{\partial x^2}|_i$ is the vector such that $\frac{\partial }{\partial x^1}|_i \times \frac{\partial }{\partial x^2}|_i = \vec{n}_i$.

Let $e_{ij}$ be the edge connecting nodes $n_i$ and $n_j$. We compute the value $\phi_i$ as the signed angle between the projection of $e_{ij}$ onto $T_{i}$ and $\frac{\partial }{\partial x^1}|_{i}$. We then store the value $\phi_{ij} = \phi_j - \phi_i$, on the edge $e_{ij}$.

We now define the discrete parallel transport function $Q_{ij} \colon T_i \rightarrow T_j$ by $Q_{ij}(u) = e^{4i\phi_{ij}}u$, which parallel transports representation vectors across $e_{ij}$. This allows us to compare two representation vectors $u \in T_i$ and $v \in T_j$ by $$|v - Q_{ij}(u)|^2.$$

In order to state a well-defined problem, we apply a Dirichlet condition. In the case of closed manifolds, we arbitrarily fix the orientation of a single cross. In the case of a bounded 