MathGroup Archive 2006

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

Search the Archive

Re: Recalculating values in tables?

  • To: mathgroup at smc.vnet.net
  • Subject: [mg63893] Re: Recalculating values in tables?
  • From: "Jens-Peer Kuska" <kuska at informatik.uni-leipzig.de>
  • Date: Sat, 21 Jan 2006 01:50:40 -0500 (EST)
  • Organization: Uni Leipzig
  • References: <dqqbtt$lu1$1@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

Hi,

how would you interpret

$count = 0;
f[i_] := ($count++; i)
Table[{f[i], Sqrt[f[i]]}, {i, 1, 10}];

In[]:=$count

Out[]=20

to avoid the multiple evaluation you should try

$count = 0;
f[i_] :=f[i]= ($count++; i)

or the solution with a temp -variable in the 
table.

Regards
  Jens

"AES" <siegman at stanford.edu> schrieb im 
Newsbeitrag news:dqqbtt$lu1$1 at smc.vnet.net...
| If I'm evaluating a table with something like
|
| Table[ {initialExpressions; f1, f2, 
Sqrt[(f1-f2)/(f1*f2)}, {iterator} ]
|
| where  f1, f2, f3  are slow-to-evaluate 
functions (possibly with
| explicit variables, which will be the same for 
all three calls to the
| f's), I'm tempted to assume that Mathematica 
will be smart enough to
| evaluate  f1, f2 and f3 just once, not three 
times, for each line in the
| Table.  Is this low risk?
|
| Or should I always take the messier of route of 
coding these functions
| explicitly in my initialExpressions using 
something like
|
| Table[ { initialExpressions;
|            g1=f1;
|            g2=f2;
|            g3=f3;
|            g1, g2, Sqrt[(g1-g2)/(g1*g2)}, 
{iterator} ]
|
| Just wondering how far to trust Mathematica in 
situations like this?
| 



  • Prev by Date: Re: Weiner process
  • Next by Date: Re: Recalculating values in tables?
  • Previous by thread: Re: Recalculating values in tables?
  • Next by thread: Re: Recalculating values in tables?