MathGroup Archive 2003

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

Search the Archive

Re: Mathematica Programming Problem

  • To: mathgroup at smc.vnet.net
  • Subject: [mg42580] Re: [mg42539] Mathematica Programming Problem
  • From: Dr Bob <drbob at bigfoot.com>
  • Date: Wed, 16 Jul 2003 09:13:41 -0400 (EDT)
  • Sender: owner-wri-mathgroup at wolfram.com

It's impossible to tell what the problem is, as you've left out a bracket 
in defining T2 for us.

First I assumed it belonged at the end, and T2[3] was Null.

When I put the bracket just after j++, the answer changed to {3, 2, 1}.

I was unable to duplicate the answer you got.

>> P[x_] := Part[T1[n], j]

You haven't made P[x] depend on x, so P[t+n-j] doesn't depend on t+n-j.

Maybe you meant

P[x_] := Part[T1[x], j];

>> But,the actual answer should have variable t inside, isn't it?

No.  P[t+n-j] is a Part of T1[n], and T1 doesn't involve the variable t.

>> list1=PrependTo[list1,y]

"list1=" is unnecessary here, as PrependTo resets its first argument.

>>

Here's a simpler definition for T1:

t1[n_Integer?Positive] := Table[Sum[
  Binomial[n, i](x - i)^(n - 1), {i, m, n}], {m, n, 1, -1}]/(n - 1)!

T2 could be simplified similarly.

>> T2[n_] := Module[{list2 = {}, , j = 1}, While[j â?¤ n,
      P[x_] := Part[T1[x], j];
      list2 = PrependTo[list2, P[t + n - j];
          j++]];
    list2]

If that's what you intended T2 to be, a much simpler version would be:

t2[n_Integer?positive] := Table[t1[t + n - j][[j]], {j, n, 1, -1}]

But that doesn't work (and your version can't work) because t is undefined, 
so t1[t+n-j] isn't the list of expressions you mean it to be.

Bobby

"Loh" <lohleeping at hotmail.com> wrote:

Hai,
    I would like to ask something regarding programming in Mathematica.
       Below is what I wrote in Mathematica,
T1[n_]:=Module[{list1={},i,m=1,y},
                    While[m<=n, =
y=1/(n-1)!Sum[Binomial[n,i](-1)^(n-i)(i-x)^(n-1),{i,m,n}];
                                     list1=PrependTo[list1,y];
                                             m++];
                                                    list1]
T2[n_]:=Module[{list2={},,j=1},
                While[j<=n, P[x_]:=Part[T1[n],j];
                    list2=PrependTo[list2,P[t+n-j];   j++];
                            list2]
Can you please help me to look at T2. Is there any problem ?
When I run those function, it's ok. But when I key in T2[3],
the output is: { x^2/2, -3/2+3x-x^2, 9/2-3x+x^2/2 }.
But,the actual answer should have variable t inside, isn't it?
Please reply A.S.A.P.
Thank you very much.
Best regards,
Loh


  • Prev by Date: Re: Trying to use Table to iterate a Part specification
  • Next by Date: Re: --Parallel Computing w/beowulf cluster
  • Previous by thread: Mathematica Programming Problem
  • Next by thread: Trying to use Table to iterate a Part specification