# Any comment to speed up the sum calculation of a function which includes legendre polynomials?

2 views (last 30 days)
Mehdi on 17 Sep 2022
Commented: Mehdi on 17 Sep 2022
Any comment to speed up the sum calculation of a function which includes legendre polynomials?
f(x,y)=sum(sum(legendreP(i, x)*legendreP(j, y), i=1..I), j=1..J)
ZZ=eval(f, XX, YY)
clear
M=1000;
I=11;
J=11;
[XX,YY]=deal(linspace(-1,1,M));
[~,n]=size(XX);
ZZ=zeros(n);
for k=1:n
for l=1:n
for i=1:I
for j=1:J
ZZ(k,l) = ZZ(k,l) + legendreP(i, XX(k))*legendreP(j, YY(l));
end
end
end
end

Torsten on 17 Sep 2022
M = 1000;
x = linspace(-1,1,M).';
y = x.';
for i = 1:11
Lpix(:,i) = legendreP(i,x);
Lpjy(i,:) = legendreP(i,y);
end
ZZ = zeros(numel(x),numel(y));
for i = 1:11
for j = 1:11
ZZ = ZZ + Lpix(:,i).*Lpjy(j,:);
end
end
Mehdi on 17 Sep 2022
Nice!

### Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

R2021b

### Community Treasure Hunt

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

Start Hunting!