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?

  • $\begingroup$ What are the various symbols in the formula, and how is the $x$ on the left related to the symbols on the right? $\endgroup$ Jun 30 '18 at 13:49
  • $\begingroup$ @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}$. $\endgroup$
    – user14717
    Jul 1 '18 at 1:57
  • 2
    $\begingroup$ 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? $\endgroup$
    – Kirill
    Jul 1 '18 at 22:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.