Re: newtons method, notation
- To: mathgroup at smc.vnet.net
- Subject: [mg21213] Re: [mg21084] newtons method, notation
- From: BobHanlon at aol.com
- Date: Fri, 17 Dec 1999 01:29:13 -0500 (EST)
- Sender: owner-wri-mathgroup at wolfram.com
Yes, there is a moderator. Clear[f, g]; To simplify the expressions in the explanation I will use a recursive definition of the factorial function. f[1] = 1; f[n_] := n*f[n - 1]; A recursive definition is one that defines a function in terms of itself. Calling the function automatically causes it to call itself until it calls itself for a known value. For f[4] this would act like f[4] = 4*f[3] = 4*3*f[2] = 4*3*2*f[1] = 4*3*2*1 It stops because it knows the value of f[1], which is to say that it stops calling itself. Table[f[n], {n, 5}] {1, 2, 6, 24, 120} Now look at the definition of f ?f Global`f f[1] = 1 f[n_] := n*f[n - 1] It is just as defined above. Now define the function with the added assignment g[1] = 1; g[n_] := g[n] = n*g[n - 1]; Table[g[n], {n, 5}] {1, 2, 6, 24, 120} The results are the same; however, checking the definition ?g Global`g g[1] = 1 g[2] = 2 g[3] = 6 g[4] = 24 g[5] = 120 g[n_] := g[n] = n*g[n - 1] Note that with the revised definition that it has remembered the individual values that were calculated. Consequently, the recursion will find a stopping (known) value sooner. Checking the timing: Timing[Table[f[n], {n, 100}]][[1]] 0.333333 Second Timing[f[100]][[1]] 0.0166667 Second Timing[Table[g[n], {n, 100}]][[1]] 0.0333333 Second Timing[g[100]][[1]] 0. Second This trades memory for speed. Bob Hanlon In a message dated 12/15/1999 2:32:40 AM, jcs3 at dana.ucc.nau.edu writes: >thanks for writing to me...btw, my ng reader doesn't show my message, i'll >check it again. is there some sort of moderator? > >anyhow, i skimmed your message, sounds good. i'm ok with newtons method, >doing it pencil and what not. it is more the notation, the symbols. > >the := followed by = is sort of like, define this function to equal >this... but how does mathematica know to "run" it, so to speak, in >iterations? >