How can I implement recurrence relations to find polynomials?

조회 수: 3 (최근 30일)
Hello everyone. I need to calculate some polynomials using a recurrence rule. I have the values of the polynomials of order zero and one. These are 1 and x. I also have the rule:
Where is the polynomial of order I and both, and are elements of two different vectors that I have stored in memory, so it won’t be difficult to access them. I also need to find the polynomials of order zero to four
Unfortunately, I don't know how to send this to Matlab to find the values of the different polynomials. I can try to do it by hand, but in the future if i need to calculate higher polynomials I will be in trouble.
I have tried to use a matrix to store the values as a matrix, e.g. the first row would be 0 0 0 1 and the second 0 0 x 0 and so on and a for loop to access said elements and then use the recurrence rule. However, I haven't managed to obtain any results.
Can someone please tell me how this could be done and how could I find said polynomials?
Regards.
Jaime.

채택된 답변

Alan Stevens
Alan Stevens 2021년 1월 28일
편집: Alan Stevens 2021년 1월 28일
Do you mean something along these lines:
order = 4;
a = [0, 0, 1.3, 1.4, 1.5]; % Obviously, replace with your own values.
b = [0, 3.5, 4.5, 5.5, 6.5]; % The initial zeros are simply placeholders
% they are never used here. For higher order
% polynomials a and b will need to be
% correspondingly bigger.
x = 0:0.1:5;
p = zeros(numel(x),1);
for i = 1:numel(x)
p(i) = RPOLY(x(i), order, a, b);
end
plot(x,p),grid
function P = RPOLY(x, order, a, b)
PR = zeros(order+1,1);
PR(1) = 1;
PR(2) = x;
if order == 0
P = PR(1);
elseif order == 1
P = PR(2);
else
for j = 3:order+1
PR(j) = ((x-a(j))*PR(j-1) - b(j-1)*PR(j-2))/b(j);
end
P = PR(order+1);
end
end
  댓글 수: 4
Jaime De La Mota Sanchis
Jaime De La Mota Sanchis 2021년 1월 28일
You are right. I have fixed the error. Thanks.
Alan Stevens
Alan Stevens 2021년 1월 28일
Still doesn't match! The general expression, if correct, would give
Note the indices on the a and the b's.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

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

Community Treasure Hunt

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

Start Hunting!

Translated by