Calculation of derivatives

Calculating the derivatives of sound speed is one (among many) of the most important tasks for an accurate calculation of ray coordinates, and further calculations of ray influence at a given point of the array. To this end TRACEO relies on three different types of piecewise interpolation:

One of the advantages of the barycentric interpolators is that they can be easily extended to handle different numbers of points, or to handle interpolation and calculation of derivatives at higher dimensions. For instance, the explicit form ot the 2D barycentric parabolic interpolator corresponds to

\begin{displaymath}
\begin{array}{cccc}
f(x,y) & = & a_{11}\left( x-x_2 \right)...
...ght) \left( y-y_1 \right) \left( y-y_2 \right) & ,
\end{array}\end{displaymath} (5.11)

(see Fig.5.3) where the coefficients can be calculated as:

\begin{displaymath}
a_{11} = \frac{f(x_1,y_1)}{\left( x_1-x_2 \right) \left( x_1-x_3 \right) \left( y_1-y_2 \right) \left( y_1-y_3 \right) }  ,
\end{displaymath}


\begin{displaymath}
a_{12} = \frac{f(x_2,y_1)}{\left( x_2-x_1 \right) \left( x_2-x_3 \right) \left( y_1-y_2 \right) \left( y_1-y_3 \right) }  ,
\end{displaymath}


\begin{displaymath}\ldots \end{displaymath}

Figure 5.3: 2D Barycentric parabolic interpolation.
\includegraphics[width=80mm]{biparinterp}

Using the notation

\begin{displaymath}
p_i(x) = \displaystyle{\prod\limits_{j=1,j \neq i}^{3}} d_j(...
...i(x) = 2x - \displaystyle{\sum\limits_{j=1,j \neq i}^{3}} x_j
\end{displaymath} (5.12)

one can write the 2D interpolator compactly as
\begin{displaymath}
f(x,y) = \displaystyle{\sum\limits_{i=1}^{3}} \displaystyle{\sum\limits_{j=1}^{3}}  a_{ij}  p_j(x)  p_i(y)  ,
\end{displaymath} (5.13)

with the coefficients given by

\begin{displaymath}a_{ij} = \frac{f(x_j,y_i)}{ p_j(x_j)  p_i(y_i)}  . \end{displaymath}

The explicit expressions for the partial derivatives correspond to
\begin{displaymath}
\frac{\partial{f}}{\partial{x}} = \displaystyle{\sum\limits_...
...aystyle{\sum\limits_{j=1}^{3}}  a_{ij}  S_j(x)  p_i(y)  ,
\end{displaymath} (5.14)


\begin{displaymath}
\frac{\partial{f}}{\partial{y}} = \displaystyle{\sum\limits_...
...aystyle{\sum\limits_{j=1}^{3}}  a_{ij}  p_j(x)  S_i(y)  ,
\end{displaymath} (5.15)


\begin{displaymath}
\frac{\partial^2f}{\partial x^2} =
2 \displaystyle{\sum\lim...
...}} \displaystyle{\sum\limits_{j=1}^{3}}  a_{ij}  p_i(y)  ,
\end{displaymath} (5.16)


\begin{displaymath}
\frac{\partial^2f}{\partial y^2} =
2 \displaystyle{\sum\lim...
...}} \displaystyle{\sum\limits_{j=1}^{3}}  a_{ij}  p_j(x)  ,
\end{displaymath} (5.17)

and
\begin{displaymath}
\frac{\partial^2f}{\partial x\partial y} =
\displaystyle{\...
...aystyle{\sum\limits_{j=1}^{3}}  a_{ij}  S_j(x)  S_i(y)  .
\end{displaymath} (5.18)

Orlando Camargo Rodríguez 2012-06-21