Evaluate elementary symmetric polynomials

6 views (last 30 days)
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?

Accepted Answer

Roger Stafford
Roger Stafford on 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));

More Answers (0)

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!