# Automatic differentiation of barycentric rational functions

By a barycentric rational interpolant we understand a function of the form

\begin{align*} r(t) := \frac{\sum_{i=0}^{n-1} \frac{w_i y_i}{t-t_i} }{ \sum_{i=0}^{n-1} \frac{w_i}{t-t_i}} \end{align*} In Schneider and Werner, (proposition 12) a stable algorithm for computation of the derivatives of $r^{(k)}$ is presented. (This algorithm is reviewed here in more modern notation, in equation 5.1a.) However, this algorithm requires two passes through the data vectors $\{w_{i}\}_{i=0}^{n-1}$, $\{y_{i}\}_{i=0}^{n-1}$ and $\{t_{i}\}_{i=0}^{n-1}$.

Since I only require the first derivative $r'$, I am curious as to whether I can get the first derivative via automatic differentiation, in one pass, perhaps increasing the speed of evaluation. So I have two questions: What is the automatic differentiation formula for $r$, and by using it, will I lose the stability guaranteed by Werner and Schneider's algorithm?

• What are the various symbols in the formula, and how is the $x$ on the left related to the symbols on the right? Jun 30 '18 at 13:49
• @WolfgangBangerth, my bad, typo. The $\{w_{i}\}_{i=0}^{n-1}$ are known as barycentric weights, which can be computed in various ways from the list of function values $\{t_i, y_i\}_{i=0}^{n-1}$. Jul 1 '18 at 1:57
• Can't you do 5.1a in only one pass by expanding $r[x,x_j]$? Also, could you please inline 5.1a into the question to make it clearer and so that the whole of the question can be read directly here all at once? Jul 1 '18 at 22:19