How I can code this Nonuniform Series?
조회 수: 3 (최근 30일)
이전 댓글 표시
Hi all,
I have a problem in coding of series below:

from n=0 & P0(x)=1. I used handle function in a for loop but I couldn't to save the handle function at the end of each iteration. I appreciate you if you could help me on this problem.
Thanks
댓글 수: 4
Torsten
2018년 10월 11일
Do these recursively defined polynomials have a name ?
Then maybe googling this name together with "matlab" will give you hints on how to efficiently calculate them.
채택된 답변
Dimitris Kalogiros
2018년 10월 11일
편집: Dimitris Kalogiros
2018년 10월 11일
Provided that you can use symbolic math toolbox, I suggest the following:
close all; clc; clearvars;
syms n x Pn(x)
% first N polynomials
N=5;
f{N}=0;
% definition for n=0
Pn(x)=1;
f{1}=Pn(x);
% calculation from n=1 up to n=N
for n=1:N
Pn(x)=x^n;
for k=1:n
Pn(x)=Pn(x)- ( int((x^n)*f{k},x,-1,1) / int(f{k}^2,x,-1,1) )* f{k} ;
end
%store next polynomial
f{n+1}=Pn(x);
end
%display all calculated polynomials
for k=0:N
fprintf(' for n = %d ', k);
disp(f{k+1})
end
If you run it , lets say , to calculate P1(x), P2(x),...,P5(x) , you'll get something like this:

The "tip" here is to use the cell array f{}, in order to store all Pn(x) polynomials.
댓글 수: 2
Walter Roberson
2018년 10월 11일
편집: Walter Roberson
2018년 10월 11일
Alternatively you could phrase it as P{n+1}(x). Which is to say that you can use a cell array of function handles to solve the coding, without using symbolic toolbox.
This is a situation where I would want to analyze to see whether memoize() is appropriate.
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Logical에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!