On appelle spline cubique d'Hermite une spline de degré trois, nommée ainsi en hommage à Charles Hermite , permettant de construire un polynôme de degré minimal (le polynôme doit avoir au minimum quatre degrés de liberté et être donc de degré 3) interpolant une fonction en deux points avec ses tangentes .
Chaque polynôme P i ( x ) {\displaystyle P_{i}(x)} se trouve sous la forme suivante :
Les quatre polynômes de base P i ∈ V e c t { h 00 , h 10 , h 01 , h 11 } {\displaystyle P_{i}\in Vect\{h_{00},h_{10},h_{01},h_{11}\}\,} avec
h 00 ( t ) = 2 t 3 − 3 t 2 + 1 {\displaystyle h_{00}(t)=2t^{3}-3t^{2}+1\,\!} h 10 ( t ) = t 3 − 2 t 2 + t {\displaystyle h_{10}(t)=t^{3}-2t^{2}+t\,\!} h 01 ( t ) = − 2 t 3 + 3 t 2 {\displaystyle h_{01}(t)=-2t^{3}+3t^{2}\,\!} h 11 ( t ) = t 3 − t 2 {\displaystyle h_{11}(t)=t^{3}-t^{2}\,\!} ce qui donne le polynôme suivant :
p ( t ) = h 00 ( t ) p 0 + h 10 ( t ) m 0 + h 01 ( t ) p 1 + h 11 ( t ) m 1 . {\displaystyle p(t)=h_{00}(t)p_{0}+h_{10}(t)m_{0}+h_{01}(t)p_{1}+h_{11}(t)m_{1}.} Sous cette écriture, il est possible de voir que le polynôme p vérifie :
p ( 0 ) = p 0 , p ( 1 ) = p 1 , p ′ ( 0 ) = m 0 et p ′ ( 1 ) = m 1 . {\displaystyle p(0)=p_{0},\,p(1)=p_{1},\,p'(0)=m_{0}{\text{ et }}p'(1)=m_{1}.} La courbe est déterminée par la position des points et des tangentes.
Pour trouver le polynôme tel que : P ( x 0 ) = p 0 , P ( x 1 ) = p 1 , P ′ ( x 0 ) = m 0 , P ′ ( x 1 ) = m 1 {\displaystyle P(x_{0})=p_{0},\;P(x_{1})=p_{1},\;P'(x_{0})=m_{0},\;P'(x_{1})=m_{1}} il faut poser :
p ( t ) = h 00 ( t ) p 0 + h 10 ( t ) m 0 ⋅ ( x 1 − x 0 ) + h 01 ( t ) p 1 + h 11 ( t ) m 1 ⋅ ( x 1 − x 0 ) . {\displaystyle p(t)=h_{00}(t)p_{0}+h_{10}(t)m_{0}\cdot (x_{1}-x_{0})+h_{01}(t)p_{1}+h_{11}(t)m_{1}\cdot (x_{1}-x_{0}).\!} et
P ( x ) = p ( x − x 0 x 1 − x 0 ) {\displaystyle P(x)=p\left({\frac {x-x_{0}}{x_{1}-x_{0}}}\right)} alors :
P ( x 0 ) = p ( x 0 − x 0 x 1 − x 0 ) = p ( 0 ) = p 0 , P ( x 1 ) = p ( x 1 − x 0 x 1 − x 0 ) = p ( 1 ) = p 1 {\displaystyle P(x_{0})=p\left({\frac {x_{0}-x_{0}}{x_{1}-x_{0}}}\right)=p(0)=p_{0},\ P(x_{1})=p\left({\frac {x_{1}-x_{0}}{x_{1}-x_{0}}}\right)=p(1)=p_{1}} P ′ ( x ) = 1 x 1 − x 0 p ′ ( x − x 0 x 1 − x 0 ) {\displaystyle P'(x)={\frac {1}{x_{1}-x_{0}}}p'\left({\frac {x-x_{0}}{x_{1}-x_{0}}}\right)} d'où
P ′ ( x 0 ) = 1 x 1 − x 0 p ′ ( x 0 − x 0 x 1 − x 0 ) = 1 x 1 − x 0 p ′ ( 0 ) = m 0 ( x 1 − x 0 ) ⋅ 1 x 1 − x 0 = m 0 , {\displaystyle P'(x_{0})={\frac {1}{x_{1}-x_{0}}}p'\left({\frac {x_{0}-x_{0}}{x_{1}-x_{0}}}\right)={\frac {1}{x_{1}-x_{0}}}p'(0)=m_{0}(x_{1}-x_{0})\cdot {\frac {1}{x_{1}-x_{0}}}=m_{0},} P ′ ( x 1 ) = 1 x 1 − x 0 p ′ ( x 1 − x 0 x 1 − x 0 ) = 1 x 1 − x 0 p ′ ( 1 ) = m 1 ( x 1 − x 0 ) ⋅ 1 x 1 − x 0 = m 1 . {\displaystyle P'(x_{1})={\frac {1}{x_{1}-x_{0}}}p'\left({\frac {x_{1}-x_{0}}{x_{1}-x_{0}}}\right)={\frac {1}{x_{1}-x_{0}}}p'(1)=m_{1}(x_{1}-x_{0})\cdot {\frac {1}{x_{1}-x_{0}}}=m_{1}.}