MathGroup Archive 2009

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Map[] and multiple args function

  • To: mathgroup at smc.vnet.net
  • Subject: [mg96237] Re: [mg96198] Map[] and multiple args function
  • From: Bob Hanlon <hanlonr at cox.net>
  • Date: Tue, 10 Feb 2009 05:48:52 -0500 (EST)
  • Reply-to: hanlonr at cox.net

Foo[x_, y_, z_] := x + 2*y + 3*z

Total[Apply[Foo, {{1, 2, 3}, {4, 5, 6}}, 1]]

46

Total[Foo @@@ {{1, 2, 3}, {4, 5, 6}}]

46


Bob Hanlon

---- sagrailo at gmail.com wrote: 

=============
I know this has to be FAQ, but I'm just not able to find an answer
anywhere, so - here it goes:  I have a multiple-arguments function,
say something like:
   Foo[x_, y_, z_] := x + 2*y + 3*z
Now, I want to call this function number of times, over different sets
of arguments, and then to sum results.  I thought about storing
argument triplets into some kind of list, and then employing sequence
of Map[] and Apply[] to get the job done.  After number of trials and
errors, I came up with following piece of code doing the thing:
  Plus @@ Foo /@ {{1, 2, 3}, {4, 5, 6}} /. List -> Sequence
but I even don't fully understand what's going here, and also I'm
wondering is there a "better" way to accomplish this.  So - any
suggestion?

Thanks.




  • Prev by Date: Re: newbie: explicit function works, "function object" doesn't
  • Next by Date: Re: Printing (v7)
  • Previous by thread: Re: Map[] and multiple args function
  • Next by thread: Re: Map[] and multiple args function