| Bill Allombert on Sat, 04 Jun 2011 11:57:53 +0200 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
| Re: Multiple Summation Question |
On Sat, Jun 04, 2011 at 03:09:39AM +0000, McLaughlin, James wrote:
> >Well, you can start by defining a function f that takes i, [j_1,...,j_k] and the other parameters
^^^^^^^^^^^^^
> >and returns f_i (j_1,j_2, ..., j_i, other parameters).
>
> >At this point you should be able to finish with forvec.
>
> Displaying my ignorance again, but I don't see how to define such a function f in k variables j_1,j_2, ..., j_k when k is a parameter that changes.
You missed the brackets above: the idea was to pass the variables as a single vector
> Just to keep it simple, set j_0=0, and
> F(k)=
> Sum_{j_1=1}^1 Sum_{j_2=1}^2 ... Sum_{j_k=1}^k
> Product_{i=1}^k f_i (j_1,j_2, ..., j_i)
> where
> f_i (j_1,j_2, ..., j_i) = 1+ j_1*j_2*...*j_i + 2^(i*j_i - (i-1)*j_{i-1}).
>
> I can write a program to evaluate this kind of expression for any particular k, but I still can't really see how to do it for every k.
Define f as follow:
f(i,J)=1+prod(j=1,i,J[i])+2^(i*J[i]-(i-1)*J[i-1])
F(k)=my(s=0);forvec(J=vector(k,i,[1,i]),s+=prod(i=1,k,f(i,J)));s
(you will have to fix f for i=1)
Cheers,
Bill.