An efficient Lagrange interpolation algorithm for multi-variate problems

조회 수: 2 (최근 30일)
Hi all,
I'd like to perform a multi-variate Lagrange interpolation for matrices. Here is a simple example:
Imagine there are 4 points in a Cartesian coordinate system:
coord = [1 1; 1 2; 2 1; 2 2];
and related four 2 by 2 matrices:
samp_1 = [1 2; 3 4];
samp_2 = [2 3; 4 5];
samp_3 = [1 3; 5 7];
samp_4 = [2 4; 6 8];
Therefore applying Lagrange polynomials, the result of interpolation at point [1.5, 1.5] is
otpt = [1.5 3; 4.5 6];
Similarly, the results at point [1.8, 1.3] is
otpt = [1.3 3.1; 4.9; 6.7];
Is there a code in MATLAB to achieve this (for any size of matrices)? I have my own solution but it is not very efficient, and it needs to perform matrix inverse, which takes time. I'd like to hear your ideas.
Many thanks!

채택된 답변

Vishal Neelagiri
Vishal Neelagiri 2016년 12월 6일
You might find the following File Exchange submission and the MATLAB Answers page helpful regarding this:
https://www.mathworks.com/matlabcentral/answers/3338-lagrange-interpolation-m

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Interpolation에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by