📄 lagrange.m
字号:
% Do funkcji dostarczamy wartosci x = wezly
% np. wezly = [1, 3, 6, 7] =&ht; wielomian 3-go stopnia
% W(x) = a + bx + cx^2 + dx^3 (cztery wspolczynniki: a,b,c,d )
% stopien_n = stopien wielomianu + 1 (ile wspolczynnikow)
%
% U縴wamy tak:
% p = lagrange(wart_x, wart_y, punkt_x)
%
% Uwaga!
% punkt_x = x w ktorym chcemy znalezc wartosc W(x)
% punkt_x musi byc r罂ny od wszystkich wartosci wezlow x
function [wyn] = lagrange(wart_x, wart_y, punkt)
size_x = size(wart_x); % tutaj obliczamy wielko舵 tablicy x-體
ilosc_x = size_x(2); % tutaj pobieramy z tablicy wielko禼i ilo舵 kolumn
omw = 1; % na poczatku omw = 1 aby przy mnozeniu nie wyszlo 0
s = 0; % to jest suma - na poczatku rowna 0
% Robimy petle, ktora iteruje wszystkie wezly i tworzy sume wzoru Lagrange'a
for i = 1 : ilosc_x
if wart_x(i) ~= punkt
% Jesli punkt jest rozny od wart_x
omw = omw * (punkt - wart_x(i)); % Omega (w liczniku)
omp = 1; % Pierwsza pochodna omegi
% na pocz眛ku p阾li = 1
for j = 1 : ilosc_x
if j ~= i
% i != j aby nie odejmowac tej samej wartosci %
omp = omp * (wart_x(i) - wart_x(j));
% Pierwsza pochodna omegi
end
end
% Dodaje do sumy nowo obliczon
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -