Evaluate elementary symmetric polynomials

9 Ansichten (letzte 30 Tage)
Claudio Bellani
Claudio Bellani am 13 Jul. 2014
Beantwortet: Roger Stafford am 13 Jul. 2014
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?

Akzeptierte Antwort

Roger Stafford
Roger Stafford am 13 Jul. 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));

Weitere Antworten (0)

Kategorien

Mehr zu Nonlinear Optimization finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by