sum of a product with i differnt to j

9 vues (au cours des 30 derniers jours)
MichMichel
MichMichel le 7 Fév 2019
Commenté : Matt J le 7 Fév 2019
Hi All,
I want to calculate a sum of a product as following:
I think my problem is quite relative to this topic: Double sum of a product, but in my case I have j ~= i.
I think something like that should work:
t = 1:100;
n = 10;
a = randn(n,1);
P = [];
for i = 1:n
F = [];
for j = 1:n
if j~=i
f = (a(j)-a(i))^n*t;
F = [F,f'];
end
end
p = prod(F,2);
P = [P,p];
end
res = sum(P,2);
But I feel that this solution is not good and something easier should exist?
Thanks a lot,
M.

Réponse acceptée

Matt J
Matt J le 7 Fév 2019
Modifié(e) : Matt J le 7 Fév 2019
Something like this, perhaps,
A=a(:)-a(:).';
A(1:n+1:n^2)=1; %nullify i==j
f=sum(prod(A,2).^n)*t;
  2 commentaires
MichMichel
MichMichel le 7 Fév 2019
Great thanks a lot it is working well.
Matt J
Matt J le 7 Fév 2019
You're welcome, but please Accept-click the answer to certify that it addressed your question.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Matrix Indexing dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by