How can I sum the elements of a symbolic vector?

5 views (last 30 days)
Hello,
I have a symbolic vector X = [1, x1, x2, x1^2, x2^2, x1*x2], where x1 and x2 are symbols. I want to sum the vector so that it looks like: SUM = 1 + x1 + x2 + x1^2 + x2^2 + x1*x2, that is, in the same order as in X. When I do SUM = sum(X), it gives: SUM = x1^2 + x1*x2 + x1 + x2^2 + x2 + 1.
It is possible by converting X into char first, and then replace the comma (,) by a plus (+). But I wonder if there is an easy way to do this.
Thanks in advance.

Accepted Answer

Azzi Abdelmalek
Azzi Abdelmalek on 8 Dec 2014
syms x1 x2
X = [1, x1, x2, x1^2, x2^2, x1*x2],
out=char(X(1))
for k=2:numel(X)
out=[out '+' char(X(k))]
end

More Answers (0)

Community Treasure Hunt

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

Start Hunting!