Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

maxima: expanding nested summation

Tags:

maxima

I have the following Maxima code:

m:sum(x[i],i,1,N)/N;

and then I want to calculate $m^2$.

m2:m^2, sumexpand;

Then I get double summation:

sum(sum(x[i1]*x[i2],i1,1,N),i2,1,N)/N^2

What I want to achieve is to expand it into the two sums.

The first one is sum(x[i]^2,i,1,N) and the second is the rest over non-equal indices. How should I do that? How should I do that with arbitrary power of m?

like image 328
0x2207 Avatar asked Sep 04 '26 12:09

0x2207


1 Answers

sum is not declared linear by default; you can declare it linear and resimplify. Note that to get the expected effect, you have to declare the noun form of sum.

(%i1) m:sum(x[i],i,1,N)/N;
                                    N
                                   ====
                                   \
                                    >    x
                                   /      i
                                   ====
                                   i = 1
(%o1)                              --------
                                      N
(%i2) m2:m^2, sumexpand;
                              N      N
                             ====   ====
                             \      \
                              >      >     x   x
                             /      /       i1  i2
                             ====   ====
                             i1 = 1 i2 = 1
(%o2)                        ---------------------
                                       2
                                      N
(%i3) declare (nounify(sum), linear);
(%o3)                                done
(%i4) ''%o2;
                              N           N
                             ====        ====
                             \           \
                            ( >     x  )  >     x
                             /       i1  /       i2
                             ====        ====
                             i1 = 1      i2 = 1
(%o4)                       -----------------------
                                       2
                                      N
like image 188
Robert Dodier Avatar answered Sep 08 '26 19:09

Robert Dodier



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!