Re: Evaluation Question
- To: mathgroup at smc.vnet.net
- Subject: [mg76545] Re: Evaluation Question
- From: Ray Koopman <koopman at sfu.ca>
- Date: Wed, 23 May 2007 05:44:56 -0400 (EDT)
- References: <f2u57d$k2n$1@smc.vnet.net>
On May 22, 12:13 am, hoffmannick <hoffmann... at gmail.com> wrote:
> Can anyone help me solve the following problem?
>
> I have a function of 3 variables, let's say
> f[a_, b_, c_] = a + b + c
>
> Now I need to evaluate the function at some given points. To evaluate
> at a single point I would do
> f[0,0,1]
>
> For the point (0,0,1)
>
> Now here is the main question.
> I need to evaluate this function at the points (0,0,0) through (1,1,1)
> That would be the points:
> 0,0,0
> 0,0,1
> 0,1,0
> 0,1,1
> 1,0,0
> 1,0,1
> 1,1,0
> 1,1,1
>
> I'm testing these for approx 32 different functions. Is there an easy
> way that I can define the function and then have it test all the
> points for me? It will always be those finite points listed above.
>
> I looked into the mathematica documentation and it said how to do this
> with a function of a single variable, but it didn't say how to do it a
> function of more than one variable.
>
> I really appreciate your help
Outer[Apply, {f1,f2,...,f32}, IntegerDigits[#,2,3]&/@Range[0,7], 1]
will give a 32 x 8 table of results. If you want to do the functions
one at a time, first define
abc = IntegerDigits[#,2,3]& /@ Range[0,7];
Then
f @@@ abc
will give a vector of 8 results for function f.