0
$\begingroup$

I have $n$ data points in $d$-dimensional space, i.e $x_1,x_2,...x_n$ where $x_i\in R^d$. I want an interpolation function $f:R^d-> R$ on these data points to map them to $y_1,y_2,...,y_n$, where $y_i=f(x_i)$. In other words, I require an extension to Lagrange interpolation method for $d$ dimensional space.

1 Answers 1

1

Let $l_{i,j}:\mathbb{R}\rightarrow\mathbb{R}$ for $j=1,\dots,d$ be the Lagrange basis polynomials for the data $(x_i^{(j)})_i$, i.e. $l_{i,j}(x^{(j)}_k)=1$ if $k=i$ and $0$ otherwise. Then the polynomial in $d$ variables given by

$L(x):=\sum^n_{i=1} y_i\left(\prod^d_{j=1}l_{i,j}(x^{(j)})\right)$

is what you are looking for (just plug in the $x_i$): $L(x_i)=y_i$. Note however, that the Lagrange polynomials has some undesirable properties (fast oscillation in between the points fixed by the data, doesn't extrapolate well, ..). So depending on your problem, you might also want to look into other interpolation methods (Bezier curves, etc.).

  • 0
    Thank you for your answer.2012-10-14