Re: How to map a list on function
- To: mathgroup at smc.vnet.net
- Subject: [mg97715] Re: How to map a list on function
- From: Vince <blueschi at gmail.com>
- Date: Thu, 19 Mar 2009 02:13:04 -0500 (EST)
- References: <gpg18t$ceh$1@smc.vnet.net>
On Mar 14, 6:35 am, buts <mange... at yahoo.com> wrote: > Hello, > > Could anyone explain me how to do the following: > I have a long list of integer numbers in groups of four: > > list= {{10,3,5,7},{4,6,8,9},{0,8,3,6}, ...... } > > or its Flatten version. > > How to write a fast function g[list] which does this: > > g[list] =x^10*y^3*z^5*u^7 + x^4*y^6*z^8*u^9 + y^8*z^3*u^6+ ... > > It should be done many times (say, 10^4-6) on lists with length > 1000, so taking parts is not a good idea. > How to use Map or similar ? > Thanks. Use Listability. Try: Plus @@ Times @@ Power[{x, y, z, u}, Transpose@{{10, 3, 5, 7}, {4, 6, 8, 9}, {0, 8, 3, 6}}] Some timing for other list lengths---1 000 000 gives ~ 18 seconds, 10 000 gives ~ 0.1 seconds, and 1000 gives ~ 0 seconds. Vince Virgilio