Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.soft-sys.math.mathematica > #2897
| From | magma <maderri2@gmail.com> |
|---|---|
| Newsgroups | comp.soft-sys.math.mathematica |
| Subject | Re: Dt@x@1 |
| Date | 2011-06-02 11:14 +0000 |
| Organization | Steven M. Christensen and Associates, Inc and MathTensor, Inc. |
| Message-ID | <is7ras$rcf$1@smc.vnet.net> (permalink) |
| References | <is4tgc$b3t$1@smc.vnet.net> <is55ug$d2e$1@smc.vnet.net> |
On Jun 1, 12:57 pm, "Nasser M. Abbasi" <n...@12000.org> wrote: > On 6/1/2011 1:33 AM, Chris Chiasson wrote: > > > Why does Dt@x@1 return zero? > > Dt[ x[1] ] > > The last evaluation of x[1] in the call gave 1, and this is > what is left and is passed to Dt and then Dt[1] returns zero. > > You can see that by > > ----------------------- > > In[65]:= Remove["Global`*"] > > TracePrint@Dt [ x[1] ] > During evaluation of In[65]:= Dt[x[1]] > During evaluation of In[65]:= Dt > During evaluation of In[65]:= x[1] > During evaluation of In[65]:= x > During evaluation of In[65]:= 1 > During evaluation of In[65]:= 0 > Out[66]= 0 > > ------------------------------ > > But what I do not know, is why when typing > > In[84]:= x[1] > > one gets back > > Out[84]= x[1] > > and so, now it did not 'evaluate' to 1 like it seems to have > done inside Dt call above. > > I can see that x[1] should return x[1], but I am not sure > why x[1] ended 1 inside the Dt call as shown by the trace above > and not when typing it on the top level. > > This is for the experts to explain, something to do with how > different evaluation rules works in different contexts I suppose. > > --Nasser To Chris: Dt@x@1 is grouped and parsed from right to left as Dt[x[1]]. Now x[1] is the VALUE of function x applied to the argument 1. Unless x[1] as been defined earlier with some symbols, it is considered a constant so its differential Dt is zero. There is nothing strange or unusual about it, just plain math. To Nasser: the 1 that you see in TracePrint is the result of evaluating the argument 1. So the result is 1. You can verify this by evaluating TracePrint[Dt@x@2] where you get 2 as a result of evaluating the argument 2 x[1] is left unevaluated (so the result is still x[1]) when you just type it by itself. hth
Back to comp.soft-sys.math.mathematica | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Dt@x@1 Chris Chiasson <chris.chiasson@gmail.com> - 2011-06-01 08:33 +0000
Re: Dt@x@1 "Nasser M. Abbasi" <nma@12000.org> - 2011-06-01 10:57 +0000
Re: Dt@x@1 Chris Chiasson <chris.chiasson@gmail.com> - 2011-06-02 11:15 +0000
Re: Dt@x@1 magma <maderri2@gmail.com> - 2011-06-02 11:14 +0000
Re: Dt@x@1 Chris Chiasson <chris.chiasson@gmail.com> - 2011-06-02 11:14 +0000
Re: Dt@x@1 Roland Franzius <roland.franzius@uos.de> - 2011-06-02 23:12 +0000
Re: Dt@x@1 Chris Chiasson <chris.chiasson@gmail.com> - 2011-06-04 10:20 +0000
csiph-web