주어진 순서쌍에 대해 다항식 보간을 생성하는 함수를 작성하고 있습니다. 현재 하나의 벡터에 노드 점의 인덱스를 입력하고 두 번째 벡터에 보간 할 함수의 값을 입력합니다. 그런 다음 그 점 집합을 보간하는 Lagrange 다항식에 대한 기호식을 생성합니다. 이 상징적 인 형식에서 벡터 형식으로 이동하여 테스트 기능 등과 비교할 수 있기를 바랍니다. 즉, 나는 어떤 다항식 P (x)를 기호 변수 x로 생성하는 것을 가지고있다. 이 다항식을 벡터로 샘플링하고, 다항식의 값 (예 : linspace (-1,1,1000))을 얻고 싶습니다. 가능하다면 어떻게 할 수 있습니까?MATLAB에서 기호 식에서 벡터로 이동하는 방법
function l_poly = lpoly(x,f)
% Returns the polynomial interpolant as computed by lagrange's formula
syms a
n=size(x,2);
l_poly_vec = 1;
l_poly=0;
for k=1:n,
for l=1:n,
if (k ~= l)
l_poly_vec=l_poly_vec*(a-x(l))/(x(k)-x(l));
end
end
l_poly=l_poly+f(k)*l_poly_vec;
l_poly_vec = 1;
end
나는이 문제를 해결할 수있는 방법에 따라 세 번째 (또는 아마도 네 번째) 입력을 추가 할 계획 :
나는 내가 지금까지 가지고있는 코드를 포함하는 것 같아요. 샘플링 할 벡터의 길이와 끝점이 필요할 것이라고 추측합니다.