Re: Building a list

*To*: mathgroup at smc.vnet.net*Subject*: [mg47139] Re: [mg47114] Building a list*From*: Sseziwa Mukasa <mukasa at jeol.com>*Date*: Sat, 27 Mar 2004 01:34:43 -0500 (EST)*References*: <200403260856.DAA22958@smc.vnet.net>*Sender*: owner-wri-mathgroup at wolfram.com

On Mar 26, 2004, at 3:56 AM, Mark Coleman wrote: > Greetings, > > I've got a relatively simple function f[a_,b_,c_,d_], where a and b are > integers and c and d are lists (of reals), and f returns a real. > > I need to evaluate f on (potentially long) sets of lists and calculate > a square "matrix" from the possible permutations of the elements in the > lists. For instance > > If > > xlist={x1,x2,x3} > > > I need to calculate > > {{f[a,b,x1,x1],f[a,b,x1,x2],f[a,b,x1,x3]},{f[a,b,x2,x1],f[a,b,x2,x2],f[ > a > ,b,x2,x3]},{f[a,b,x3,x1],f[a,b,x3,x2],f[a,b,x3,x3]}} > > Note that f[a,b,c,d] does not equal f[a,b,d,c]. > > My first reaction was that Outer[] might do this, but I cannot seem to > get it to work. I'd appreciate any suggestions. > Your first reaction was fine: Outer[f[a, b, ##] &, xlist, xlist] works. You could also explicitly use Array, for example Array[f[a, b, xlist[[#]], xlist[[#2]]] &, {Length[xlist], Length[xlist]}] also works. Regards, Ssezi

**References**:**Building a list***From:*Mark Coleman <mark@markscoleman.com>