The author’s interest in cubic splines comes from the problem of
making key-framed
animations in computer graphics. To produce computer animations the user
specifies specific positions and orientations of objects at certain
points in time [`t`_{1}, `t`_{2}, …, `t`_{n}].
These points are called key-frames. It is left
up to the computer to interpolate the positions and orientations between these
key-frames in order to make enough frames to produce an animation.
Additionally the user usually wants some degree of smoothness in this interpolation.

The complete animation path of one object in space is given by a function
`f`: [`t`_{1},`t`_{n}] → ℝ^{3}×`SO`(3). The
problem is for the computer to find a suitable function such that for all
`i`, `f`(`t _{i}`) has the specified position and orientation.
The problem of finding

`f`_{1}: [`t`_{1},`t`_{n}] → ℝ^{3}`f`_{2}: [`t`_{1},`t`_{n}] →`SO`(3)

where `f`(`t`) = (`f`_{1}(`t`), `f`_{2}(`t`)).

One method of interpolating between key-frames by connecting them
with geodesics. Although this method generates a continuous function, in
general the function fails to be `C`^{1} continuous. This means that
there will be
instantaneous changes in velocity and angular velocity during the
animation. Generally one
wants more smoothness from the interpolation than this.

A common method for generating a `C`^{1} function for `f`_{1}
is by using cubic polynomials. Assume for the moment that somehow at each time
`t`_{i} a derivative `f`_{1}′(`t`_{i}) has been
specified. For instance, the derivative could be generated by averaging
the derivatives of geodesics that
connect to the adjacent key-frames, or the user could specify the
derivative in addition to the position. In any case, there is a unique cubic polynomial
`p` defined on [`t`_{i},`t`_{i+1}]
such that

`p`(`t`_{i}) =`f`_{1}(`t`_{i})`p`(`t`_{i+1}) =`f`_{1}(`t`_{i+1})`p`′(`t`_{i}) =`f`_{1}′(`t`_{i})`p`′(`t`_{i+1}) =`f`_{1}′(`t`_{i+1})

A piecewise cubic polynomial created in this manner is
`C`^{1} continuous because the first derivatives match up at the
key-frames.

Because the interest is in animation, one cares about the complete parametric function, and not just the image the function has. In particular, different reparameterization of a function will be considered different.

The interpolation problem is solved over ℝ^{3}, but what about
`SO`(3)? The rest of this paper will give the basic theory of cubic
polynomials over general Riemannian manifolds. How to compute
such curves will not be discussed.
From here on we will focus on the problem of
finding an interpolating function
`f` : [`a`,`b`] → `M`
on a complete `n`-dimensional Riemannian manifold `M` subject to the conditions

`f`(`a`) =`p`:`M``f`(`b`) =`q`:`M``Tf`(`a`) =`ξ`:`T`_{p}M`Tf`(`b`) =`η`:`T`_{q}M

There are many smooth functions that could be used to interpolate
between the given points and the given tangent vectors. In the case of
Euclidean space, the cubic polynomial solution is the unique solution
that minimizes the functional `J` : `Ω` → ℝ

where `Ω` is the space of all `C`^{1} piecewise smooth functions
[`a`,`b`] → M.

This quantity, `J`(`f`), is basically a measure of the total acceleration of the
curve. We will call any function
which is a critical point of `J` a cubic polynomial.

*Theorem*. A curve `f` : [`a`,`b`] → M is
a cubic polynomial if and only if it is smooth and it satisfies the
fourth-order differential equation

where `R` is the curvature of `M`.

*Proof*. See Noakes, Heinzinger
and Paden, p. 468, Theorem 1.

This formula is the Euler-Lagrange equation.
In the special case of Euclidean space `R` = 0 and the Euler-Lagrange
equation reduces to

and this implies that `f` is a cubic polynomial.

The Euler-Lagrange equation gives necessary conditions for finding the
minimum of the functional `J`. To find sufficient conditions for a
function `f` to locally minimize `J`, it is useful to study Jacobi fields
along the curve `f`. The development of Jacobi fields on
cubic polynomials parallels the development of Jacobi fields for geodesics. For
example, Lee gives a presentation of the theory of geodesics.

The development is so similar that one might hope that one could describe it
by using the theory of geodesics on `TM` with a suitable metric.
Camarinha shows that for a
generalization of cubic polynomials called elastic curves, such a
reduction is possible by using the Sasaki metric; however in the
specific case of cubic polynomials, the reduction does not work.

Crouch and Silva Leite find the Jacobi equation for a vector field `W`
along a cubic polynomial `f` to be

where

Any vector field along a cubic polynomial that satisfies the
Jacobi equation is called a Jacobi field. These definitions of
Jacobi fields
and Jacobi equations parallel the same definitions in the geodesic case.
For comparison, the Jacobi equation for a field `W` on a geodesic `γ` is

We define a Jacobi variation of a cubic polynomial `f` to
be a smooth function
`Γ` : ]-`ε`,`ε`[×[`a`,`b`] → `M`
such that

`Γ`(0) =`f`- For all
`s`: ]-`ε`,`ε`[,`Γ`(`s`) is a cubic polynomial.

For each Jacobi variation `Γ` we define an associated variational
vector field `W` by

*Theorem*. The associated variational vector field `W` of a
Jacobi variation `Γ` is a Jacobi field. Also every
Jacobi field `W` is the variational vector field for some Jacobi variation`Γ`.

*Proof*. See Camarinha, Silva
Leite and Crouch, p. 117. Theorem 4.2.

Since the Jacobi equation is a linear fourth order differential
equation, each Jacobi field `W` is uniquely determined by its value at
`a` and its first three covariant derivatives at `a`.

`W`(`a`)`D`_{t}`W`(`a`)`D`_{t}^{2}`W`(`a`)`D`_{t}^{3}`W`(`a`)

Each cubic polynomial `f` admits two trivial Jacobi fields the
same way that each geodesic `γ` admits two trivial
Jacobi fields. The first field is `W`=`Tf` and the second field is
`W`=`t``Tf`. These are the associated variational vector fields of
`Γ`(`s`, `t`) = `f`(`s`+`t`) and
`Γ`(`s`, `t`) = `f`(`e`^{s}`t`)
respectively.

These trivial Jacobi fields arise from trivial reparameterizations
of the cubic polynomial `f`. In the case of geodesics the class of
normal Jacobi fields are studied. It can be shown that for Jacobi fields
`W` of geodesics `γ` there are `α`, `β` : ℝ
such that
<`W`(`t`), `Tγ`(`t`)> = `α``t` + `β`.
This function is identically 0 when `W` is a normal Jacobi field. We
cannot expect to have this same property in the case of cubic
Jacobi fields, but there is a similar relation.

*Theorem*. For any Jacobi field `W` along a cubic polynomial
`f` : [0,`b`] → M

<`D`_{t}^{2}`W`(`t`), `Tf`(`t`)>
- 2<`D`_{t}`W`(`t`), `D`_{t}`Tf`(`t`)>
+ 3<`W`(`t`), `D`_{t}^{2}`Tf`(`t`)> =
`α``t` + `β`

where

and

*Proof*. See Camarinha, Silva
Leite and Crouch, p. 114. Lemma 3.3.

Most Jacobi fields `W` can be decomposed into the sum of three
Jacobi fields`W` = `δ`_{1}`Tf` + `δ`_{2}`t``Tf` + `Z` where
`δ`_{1}, `δ`_{2} : ℝ.
`Z` can be thought of the non-trivial portion of the
Jacobi field `W`. In fact
<`D _{t}`

*Theorem*. If
2<`D _{t}`

*Proof*. See Camarinha, Silva
Leite and Crouch, p. 115, Theorem 3.4.

Even in the geodesic case, there fails to be a unique
decomposition in the case that `Tγ` = 0. The case
2<`D _{t}`

The discussion of Jacobi fields has focused on cubic polynomials
in general. However for our interpolation problem we are interested
in cubic polynomials that interpolate between end points having given
tangent vectors. In general it is possible that there may not be one unique
cubic polynomial that interpolates the endpoint conditions. In some
cases one can find a Jacobi variation of a cubic polynomial `f`
where all curves in the family satisfy the the end point conditions.
When this happens the two endpoints are considered conjugate along the
curve `f`. The notion of being conjugate is slightly more general
and is given in the following definition

For a cubic polynomial `f`, the points
`t`_{1}, `t`_{2} : [`a`,`b`]
are said to be conjugate along `f`
if there is a non-zero Jacobi field `W` along `f` such that

`W`(`t`_{1})=0`W`(`t`_{2})=0`D`_{t}`W`(`t`_{1})=0`D`_{t}`W`(`t`_{2})=0

The conjugate points have a multiplicity equal to the dimension of the subspace of all such Jacobi fields.

This definition of conjugate points is analogous the the definition of conjugate points for geodesics. The results about conjugate points on cubic polynomials are also similar.

*Theorem*. If `a` and `b` are not conjugate along a
cubic polynomial `f`, then any Jacobi field `W` along `f` is uniquely
determined by its values of

`W`(`a`)`W`(`b`)`D`_{t}`W`(`a`)`D`_{t}`W`(`b`)

*Proof*. See Camarinha, Silva
Leite and Crouch, p. 118, theorem 5.2.

For a cubic polynomial `f` define `T _{f}Ω` to be
the space of

`X`(`a`)=0`X`(`b`)=0`D`_{t}`X`(`a`)=0`D`_{t}`X`(`b`)=0

Using the tool of Jacobi fields we can now turn out attention to
finding a sufficient condition for a cubic polynomial `f` to be
a local minimum of our functional `J`. The idea is to create a
second derivative test for our functional `J`. There is a symmetric
bilinear form on `T _{f}Ω` on

where `F` is defined as before.

*Theorem*. If `f` is a cubic polynomial, that locally
minimizes `J`, then `I _{f}` is positive semi-definite.

*Theorem*. If `f` is a cubic polynomial and there are two
points `t`_{1} and `t`_{2} which are conjugate along `f`, then
there is some vector field `X` on `f` such that
`I _{f}`(

*Proof*. See Camarinha, Silva
Leite and Crouch, p. 123, theorem 7.2.

We also have that sufficiently small segments of cubic polynomials are
local minimizers of `J`.

*Theorem*. For a cubic polynomial `f`, if
[`a`,`b`] is sufficiently small then `f` is a local
minimizer of `J` and `a` and `b` are not conjugate along`f`.

*Proof*. See Camarinha, Silva
Leite and Crouch, p.129-130, Corollary 8.3 and
Corollary 8.4.

The analogue of the Morse index theorem holds in the case of
cubic polynomials as well. For a cubic polynomial `f` define the
index of `I _{f}` to be the maximal dimension of a subspace
of

*Theorem*. The index of `I _{f}` is equal to the
number of points

Finally it can be show that there are globally minimizing functions on
`J`. Let
`H`^{2}([`a`, `b`]; ℝ^{n}) ⊆ `L`^{2}([`a`, `b`]; ℝ^{n})
denote the Sobolev space of `C`^{1} functions having all their first and
second derivative in `L`^{2}([`a`, `b`]; ℝ^{n}). Let
`H`^{2}([`a`, `b`]; `M`) be the set of all functions
`f` : [`a`, `b`] → `M` such that
whenever (`U`, `φ`) is a local chart of `M` and
`I` ⊆ [`a`, `b`] is a closed subinterval such that
`f`(`I`) ⊆ `U`, then
`φ`∘`f`|_{I} ∈ `H`^{2}(I; ℝ^{n}).
Finally, given
`p`, `q` : M, and `ξ` : `T _{p}M` and

*Theorem*. The functional `J` attains its minimum on
`H`^{2}_{ξ, η}.

*Proof*. See Giambò,
Giannoni and Piccione, p.451,
Proposition 3.3.

Crouch, P. & Silva Leite, F.
(1995)
The dynamic interpolation problem on Riemannian
manifolds, Lie groups and symmetric spaces.
J. Dynam. Control Systems,
1,
177-202.

Camarinha, M.
(1996)
The Geometry of Cubic Polynomials on Riemannian
Manifolds,
Ph. D. Thesis in Pure Mathematics,
University of Coimbra
(Portugal).

Camarinha, M., Silva Leite, F. & Crouch, P.
(2001)
On the geometry of Riemannian cubic polynomials.
Diff. Geom. Appl.,
15,
107-135.

Giambò, R., Giannoni, F. & Piccione, P.
(2002)
An analytic theory for Riemannian cubic polynomials.
IMA J. Math. Control Inform.,
19,
445-460.

Lee, John M.
Riemannian Manifolds: An Introduction to Curvature.
Springer-Verlag, New York,
1997

Noakes, L., Heinzinger, G. & Paden, B.
(1989)
Cubic splines on curved spaces.
IMA J. Math. Control Inform.,
6,
465-473.