Evaluate elementary symmetric polynomials

10 visualizzazioni (ultimi 30 giorni)
Given n variables x_1...x_n and given an integer 1<=k<=n, I'd like to evaluate the k-th elementary symmetric polynomial, as defined -for instance- here:
My attempt was to store x=[x_1,...x_n], to define a vector j=[] of length k and then to execute
for j(1)=1:n
for j(2)=j(i):n
...
for j(n)=j(k-1):n
e=e + x(j(1))*...*x(j(k));
end...end
How to replace the dots?

Risposta accettata

Roger Stafford
Roger Stafford il 13 Lug 2014
Let v = [x_1,x_2,x_3,...,x_n] be a vector of the values of x_i.
e = sum(prod(nchoosek(v,k),2));

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by