function [y] = lagrange(x, x0, y0) % racunamo vrijednost aproksimacije Lagrangeovim polinomom u točki s apscisom x % x0 - vektor s vrijednostima apsise (x koordinate cvorova) % y0 - vektor s vrijednostima ordinate (y koordinate cvorova) % x - apscisa tocke u kojoj racunamo aproksimaciju % y - izracunata vrijednost % y = y0(i)*l_i(x), gdje je l_i(x) polinom Lagrangeove baze % Numericka matematika (Marko Hajba) n = size(x0, 1); y = 0; for i=1:n l_i = 1; for j=1:n if j == i % moramo izbjeci faktor kada je j = i, inace dijelimo s 0 continue; end; l_i = l_i*(x-x0(j)) / (x0(i)-x0(j)); end; y = y + y0(i) * l_i; end;